プリンシプルプログラミング プログラミング

【POP32】アーキテクチャ非機能要件について

はじめに

この記事は「プリンシプルオブプログラミング 3年目までに身につけたい一生役立つ101の原理原則」を読んだ際に記した議事録です。

著作権の関係により、詳細には書きません。詳しい詳細を知りたい方はぜひ本書を読んでみてください。

プリンシプルオブプログラミングをPOPと訳します。

What : 機能以外の観点

非機能要件とは、「機能要件以外の全般について」です。

ソフトウェアを高品質で、真にユーザーに役に立つためには、「機能」だけでなく「非機能的」な要件も高い品質を満たさなければなりません。

非機能要件は主に次の6つあります。次回の【POP33】〜【POP38】で詳しく解説していきます。

  1. 変更容易性
  2. 相互運用性
  3. 効率性
  4. 信頼性
  5. テスト容易性
  6. 再利用性

機能要件とは

機能要件は、ソフトウェアで定義される要件のうち、機能に関するモノのこと。
例えば、学生の管理システムの場合、「学籍番号で検索することができる」「学生の写真を一覧画面に表示できる」といった、ソフトウェアの処理内容や画面表示などの、最低限実装されていなければならないモノのことを機能要件という。

Why : 非機能はリリース後に大きな影響をもたらすから

先に述べた六つの非機能的な特性は開発、保守、運用などの効率活用に大きな影響をもたらします。そして、リリース後のトラブルのほとんどが「非機能的な特性」に起因しています。

であるにも関わらず、機能に比べると非機能は軽視されがちです。軽視され後回しにされた結果、トラブルの元となります。本来は機能同様に、アーキテクチャの設計段階から考慮されるべき観点です。

How : 非機能の観点で設計する

最初の設計段階において、非機能要件を考慮に入れるようにします。後回しでは間に合いません。具体的には次のように取り組みます。

  • 要件定義において、非機能の観点についてどの提訴必要とされるのかを確認します。
  • 開発において、アーキテクチャ設計の時点で、この要件を考慮に入れた構造を考える。
  • テストにおいて、要件を満たしているか考える。

本書では、どの場面で、どのように非機能要件を考慮するかが書かれています。ぜひ本書を手に取って読んでみてください。

終わりに

この記事ではプリンシプルオブプログラミング 3年目までに身につけたい一生役立つ101の原理原則の議事録を自分用に記しています。

この記事ではカバーしきれていない部分も多いので、是非本書を手にとって読んでみてください。

次回、「【POP33】アーキテクチャ非機能要件①変更容易性について」です。ぜひ、次の記事も読んでみてください。

  • この記事を書いた人
  • 最新記事

ミッチー

小中高と野球漬けの毎日 ▶︎ 大学時に自分が何もできないことに気づき、プログラミング学習開始 ▶︎ PCは疎かったがめげずに継続 ▶︎ 受託で案件を頂きながら、オーダースーツ事業に、通販事業にも参戦 ▶︎ 東証一部Web系自社開発企業にエンジニアとして内定。

-プリンシプルプログラミング, プログラミング

© 2022 オミチャンネル Powered by AFFINGER5