#author("2023-01-31T16:42:29+09:00","default:k1rou","k1rou") #author("2024-09-20T23:30:23+09:00","default:k1rou","k1rou") *非機能要件 とは [#h0d01ae8] **[[RAS]] [#wfacfac0] -Reliability([[信頼性]]) -Availability([[可用性]]) -Serviceability([[保守性]]) **[[RASIS]] [#z66d5986] -RAS+ --Integrity([[完全性]]) --Security([[安全性]]) **[[CIA]] [#j23b8228] -Confidentiality([[機密性]]) -Integrity([[完全性]]) -Availability([[可用性]]) **他にも [#rd742798] -性能・拡張性 -移行性 -環境エコロジー *指標 [#f93859b8] **ユーザ数 [#d0378f55] -登録ユーザ数 -ユニークユーザ数 -トータルユーザ数 **アクセス数、リクエスト数、ページビュー [#w06abeb7] **処理回数 [#zd208402] **データ量、転送量 [#c7cf7a27] -通常時とピーク時 **[[処理能力]] [#r1ac6e15] -参照系と更新系の処理など --スループット --ターンアラウンドタイム --レスポンスタイム **[[RASIS]] [#z5522a7e] -[[稼働率]] -[[MTBF]] -[[MTTR]] *システムの拡張方法 [#g20dc80c] **[[スケールアップ]] [#b6273326] -ハードウェア --CPU --主記憶装置(メモリー) --補助記憶装置(HDD→SSD) --ネットワーク帯域(100MB→1GB) -ソフトウェア --OSのリードキャッシュ機能 --1ディレクトリの保存ファイル数を少なくする --DB -インデックスを使ったDBアクセス --DB -SQLの改善 --プログラムのコード改善 -向き不向き --データの複製や分割が困難。例えば、オンライントランザクションのあるDBサーバ。 **[[スケールアウト]] [#ha439648] -ハードウェア --複数マシンに処理を分散して処理量を増やす --複数マシンにデータを分散して保存してデータ量を増やす -ソフトウェア --[[DBのレプリケーション]] -向き不向き --処理が単純で、サーバ増設の際もデータの同期などが不要。例えば、Webサーバ。 *データ量の見積 [#q0b287f6] -ユーザ数とデータ量の関係 -時間とデータの関係 *HTTPの性能測定ツール [#qa17a346] -Apache Httpd -apache bench -Tomcat -JMeter -http_load *リクエスト数と処理能力の関係 [#oe9051d3] -リクエスト数<リクエスト処理能力 --処理がスムーズに流れている -リクエスト数>リクエスト処理能力 --処理が滞っている。未処理のリクエストがたまってくる。 *システム稼働状況のモニタリング [#q21a3b96] -システムのレスポンスタイム -ロードアベレージ -メモリ使用量 -I/O負荷 -ネットワークトラフィック **[[監視]]ツール [#i382bc71] -[[MRTG]]~ https://oss.oetiker.ch/mrtg/ -[[Nagios]] -[[Munin]] -[[Hinemos]] *関連サイト [#u3783f72] -非機能要求の見える化と確認の手段を実現する「非機能要求グレード」の公開(2019年3月28日更新) - [[IPA]]~ https://www.ipa.go.jp/sec/softwareengineering/reports/20100416.html -システム構築の上流工程強化(非機能要求グレード)(2019年9月18日更新) - [[IPA]]~ https://www.ipa.go.jp/sec/softwareengineering/std/ent03-b.html *関連用語 [#tc6b5da8] -[[インフラ]] -[[サーバ]] -[[セキュリティ]] -[[監視]] -[[ディザスタリカバリ]](DR) -[[モニタリング]] -[[冪等性]] -[[性能]] -[[情報セキュリティ]]