アプリケーションシステムの設計プロセスについて

アプリケーションシステムの設計プロセスについて

デジタルエンタープライズ管理システム、カスタマーサービスチャットシステム、ERPシステム、ショッピングモールシステムなど、大規模なアプリケーションは一般にシステムと呼ばれます。
実際の開発が関与する前と後に、マネージャ レベルで実行する必要があるプロセスと設計作業が多数あります。
アプリケーションは一般に、アプリケーションの特性または分類に基づいて、実装する機能、使用シナリオ、容量などをリストします。
以下は、Googleの開発マネージャーによるデザインプロセスの紹介です。

機能点

たとえば、音楽ソフトウェアには次の機能が含まれます。

  • 音楽の歌
  • プレイリスト
  • ユーザー
  • アーティスト
  • ブロードキャスト

すべての関数がリストされるわけではありませんが、一般的な関数モジュールのみが提供されます。たとえば、拡張された分類、検索、フォロー、データの編集、曲の関連付け、音量調整などがあります。

ユーザーケース

ユーザーがこのアプリケーションで何をするかの例を次に示します。具体的な操作プロセスは、たとえば次のようになります。

  • 曲を検索して再生する
  • プレイリストを開いて複数の曲を再生する

運搬能力

ここでは、実際のユーザー数、データ量、トラフィックなどを考慮し、これらの条件に基づいてその後のアーキテクチャ設計を決定します。
好き:

  • 10億人などのユーザー数
  • 1億曲などの曲数
  • 1 曲のサイズ (メタデータなどを含む)、5MB
  • 曲の合計サイズ、500TB
  • バックアップ曲 x3、1500TB
  • シングルユーザーのデータサイズ、1KB
  • 全ユーザーデータサイズ、1TB

建築デザイン

ここでは、システムの全体的なアーキテクチャ設計を完了する必要があります。

  • LB、負荷分散は、ポリシーに従って複数のサービスのさまざまな要求応答要件のバランスを取り、サービスのハングアップを防ぎます。これは、同時実行性の高いアプリケーションにとって非常に重要です。複数の方法を使用して、同時に負荷分散を完了することができることに注意してください. たとえば、Nginxには独自の負荷分散構成があります. さらに、カスタムルートを介してトラフィックをさらに迂回させることが可能です.
  • Web サーバー、複数のネットワーク サービスを LB に引き継いで完全なクラスター サービス保証
  • DB、データベース、ユーザー、曲のメタデータ、アーティスト情報など、状況に応じて異なるサービス用のデータベースに分割する必要があり、Redis をキャッシュとして使用して NO-SQL データベースに格納され、その実際の格納場所は曲は別のデータベースに配置する AWS などの SQL データベースを使用します。ここで、要件に応じて、3 読み取り 1 書き込みのマルチデータベース構成
    S3に拡張することもできます。
  • CDN (オプション)、曲データのマルチノード キャッシングにより、多数のユーザーが同時に曲を再生またはダウンロードすることによって単一サーバーに過度の負荷がかかる問題が軽減されます。更新され、キャッシュが実行可能です。

データ構造

データ構造は一般に、データベースのテーブル構造設計を指します。
基本的にはこの時点で実際の開発プロセスが開始されます. もちろん、プロダクトマネージャーまたはデザイナーは、最初にフローチャートとプロトタイプの設計案を提供し、大まかな開発サイクルに同意してから、インターフェースドキュメント契約の設計を開始し、データ構造。
プロトタイプの設計とデータ構造が完成したら、フロントエンドとバックエンドの開発に入ります.この記事では、主にハイレベルなレベルからのインタビューで遭遇する可能性のある質問について説明します.次の開発作業エンジニアは比較的明確です.ので、詳しくは触れません。

結論は

ざっくりとした記事ですが、大まかな流れはこんな感じで、フローチャートやマインドマップ、PPT、プロトタイプ、レンダリングなどの制作など、細かい作業は記載していませんが、上級管理職向けです。つまり、この部分が分かれば自分でやる必要はなく、下の人に任せるということなので詳しくは書きません。
それはそれについてです。

おすすめ

転載: blog.csdn.net/u013102711/article/details/130384455