1つの可能な方法は、コードにコードから層に、アプリケーションと分析層への重要なエントリポイントを見つけることです。
私の説明は、あなたの質問のコメントに記載されている情報に基づいています。 (アプリケーションはanglejsとspringに基づいています)。これらの重要な情報は、一時的なものであり、予告なく削除することができます。
アプリケーションを起動し、そのいずれかの主な機能(または次のタスクで拡張したい機能)。
お気に入りのブラウザの開発ツールを開き、すべてのリクエストと応答を記録します。検出したいアクションをトリガーします。レコードを分析し、対応するREST呼び出しを見つけます。リクエストとレスポンスのparamを見て、このAPIが何をすべきか考えてみてください。
次に、バックエンドコード内の対応するREST-Controllerを検索します。ほとんどの場合、REST-Call-URLパスの後の値(コントローラまたはコントローラメソッドにバインドされている)のいくつかを検索すると、それを見つけることができます。
これで、そのアクションのエントリポイントが得られました。メインメソッドで行うのと同じように、もっと似たような発見ができます。
この手順を繰り返して、一部の機能の実装を理解することができます(1つずつ)。それにもかかわらず、このアプローチでは見つけられないアプリケーションの重要な部分があります。しかし、それはあなたにユーザーにWebインターフェイスによって公開されている機能を探索する出発点を与えるでしょう。
アーキテクチャによっては、いくつかの中心的なコア機能を持つ場所を見つけることができます。その後、apiから独立してこれらのコア機能をフロントエンドに探索することは良い考えです。アプリケーションf.e.ドメイン主導型の設計アプローチが進歩すれば、機能的(技術的ではない)ドメインが設計されている層を見つけることができます。それから、あなたはもっと大きな写真をここで見つけるでしょう。
アプリケーションの設計方法を知っている人がいる場合は、もちろんこの人にインタビューして発見を開始する必要があります。知識を持っているすべての人がアクセスできない場合は、いくつかのドキュメントを参照するか、記述しようとするようにアプリケーションを自分で見つけなければなりません。
ここでは、誰もあなたをお手伝いできません。あなたと一緒に座ることができる友人を探して、プロジェクトを分析するのを助けてください。 – vinS
大きなプロジェクトは通常、オブジェクトの配線やコントローラクラスの初期化などを管理するいくつかのフレームワークを使用します。あなたのケースではspringeやjeeのようなものが使用されているかどうか知っていますか?このインフォーマリオンは、あなたにさらなるティップを与えるのに役立ちます。 – snap
はい、私のプロジェクトではスプリングフレームワーク – user2306856