応用情報処理技術者試験の対策サイトです。 応用情報処理技術者試験の午前問題を中心とした基礎用語の解説を中心に掲載します。書き始めたばかりなので、内容はまだまだ不十分です。
カテゴリ:

8.システム開発 > 8.2 要件定義

ざっくり解説すると、要件定義⇒設計⇒プログラミング⇒テストの流れでシステム開発が行われます。
過去問(H22秋IP問48)を見てみましょう。
問48 システム開発プロセスを要件定義,外部設計,内部設計,プログラミングに分け,テストの種類を運用テスト,結合テスト,システムテスト,単体テストに分けたとき,図のa~cに入れる字句の適切な組合せはどれか。
要件定義

正解はイの結合テスト、システムテスト、運用テストです。

最初の工程が要件定義です。
過去問(H22春FE午前問66)では、「要件定義の段階で行う作業」として、「新たに構築する業務とシステムの仕様を明確化し,システム化範囲を明示する。」とあります。
要件定義の重要な役割はどんなシステムを作るかという仕様を決めることもありますが、同時に、システム化の範囲を明確にします。範囲を明確にしないと、費用や工期が際限なく増えてしまうからです。

性能や操作性、保守性、セキュリティ要件など、機能として具体的に設計書に表れにくいものが非機能要件です。
過去問(平成23年秋AP午前)では、非機能要件項目として「システム基盤に関わる可用性,性能,拡張性,運用性,保守性,移行性,セキュリテイ,システム環境などの項目」と述べられています。
具体例ですが、過去問(H21SA午前-問14)には、受注管理システムにおける非機能要件として「受注管理システムの稼働率を決められた水準に維持するために、障害発生時は半日以内に回復できること」とある

過去問(H22年FE秋午前)を解いてみましょう。
問64 非機能要件の定義に該当するものはどれか。
ア 業務を構成する機能間の情報(データ)の流れを明確にする。
イ システム開発で利用する言語に合わせた開発基準,標準を作成する。
ウ システム機能として実現する範囲を定義する。
工 他システムとの情報授受などのインタフェースを明確にする。
【正解】
イです。機能ではないものを探します。イの開発基準などは、利用者の機能ではありません。ただ、運用保守をするうえでは大事な内容なので、非機能要件として開発時に確認をしておくと便利です。

非機能要件も明確に定義した方がいいのですが、実際の現場では、以下ようにあいまいであることが多いものです。
・性能要件(システムの応答時間は明確な基準は考えていないが、あまり遅いのは困る)
・保守要件(障害時の復旧時間は決めていないが、できるだけ早く解決してほしい)
・移行要件(移行はSIerに任せるが、できるだけ利用者の負担を軽減し、なおかつ迅速にやってほしい)

要件定義に関しては、〕弋疂析をした後、⇒弖鐵蟲舛貌ります。
〕弋疂析
ユーザニーズの調査をするなどして、要求を分析します。

⇒弖鐵蟲
システム化する要件を定義します。
このとき、機能要件だけではなく、非機能要件も確認し、可能な限り定義しておくといいでしょう。
非機能要件に関しては、以下です。
http://sm.seeeko.com/archives/65793207.html

業務分析や要件定義に用いられる手法
試験センターが発表する応用情報技術者のシラバスの中に、「業務分析や要件定義に用いられる手法」という項があり、うまく整理されているので引用する。
1)ヒアリング
ソフトウェアに何が要求されているかを明らかにし,理解するためには,利用者からのヒアリングが有効であること,ヒアリング実施の手順,考え方を理解する。

2)ユースケース
ユースケースは,一つの目標を達成するための利用者とシステムのやり取りを定義するために用いること,その特徴,目的,ユースケースを描く方法を理解する。

3)プロトタイプ
ソフトウェア要求分析において,外部仕様の有効性,仕様の漏れ,実現可能性などの評価を行い,手戻りを防ぐためにプロトタイプを作成することがあること,プロトタイピングの特徴を理解する。

4)DFD
業務プロセスをデータの流れに着目して表現する場合に,DFD を使用することを理解する。

5)E-R 図
業務で扱う情報を抽象化し,実体(エンティティ)と実体間の関連(リレーションシップ)を表現する場合に,E-R 図を使用することを理解する。

6)UML
オブジェクト指向設計の標準化された表記法としてUML があること,UML で用いる図式の種類,特徴,UML を用いてシステムの仕組みを表現する方法を理解する。


問47 オブジェクト指向言語のクラスに関する記述のうち,適切なものはどれか。

ア インスタンス変数には共有データが保存されているので,クラス全体で使用できる。
イ オブジェクトに共通する性質を定義したものがクラスであり,クラスを集めたものがクラスライブラリである。
ウ オブジェクトはクラスによって定義され,クラスにはメソッドと呼ばれる共有データが保存されている。
エ スーパクラスはサブクラスから独立して定義し,サブクラスの性質を継承する。
正解は、イです。

過去問(H21春PM午前2問13)では、「システムの分析・設計に用いられる状態遷移図の特徴」として、「システムの現在の状態と発生する事象及び次の状態の関係が簡潔に記述可能」とあります。

H28春FE午後問8に、単純な状態遷移図があるので見てください。
〔プログラムの説明〕
電気ポットの状態遷移を模したプログラムである。この電気ポットは,電源に接続すると休止状態になり,沸騰ボタンが押されると加熱を開始する。沸点に到達すると加熱を終了し,休止状態に戻る。ただし,電気ポットに水がない場合は,沸騰ボタンが押されても加熱を開始せず,警告を表示する。電気ポットの状態遷移図を図1に示す。
状態遷移図

もう一つ見てみましょう。
過去問(H23秋AP午後の問7)に、テレビ本体の電源状態の状態遷移図があります。
状態遷移図

DFDは、業務プロセスをデータの流れに着目して表現する場合に使用します。以下のDFDを見て下さい。顧客から注文が入った場合に、顧客情報や商品価格情報などをデータベースから取得し、出荷指示や売上げ報告をすることを図式化しています。

DFDに関する過去問(H27秋IP問8)を見てみましょう。
問8 図のDFDで示された業務Aに関する,次の記述中のaに入れる字句として,適切なものはどれか。ここで,データストアBの具体的な名称は記載していない。
業務Aでは,出荷の指示を行うとともに,[ a ]などを行う。
dfd

ア 購買関連のデータストアから,注文のあった製品の注文情報を得て,発注先に対する発注量の算出
イ 顧客関連のデータストアから,注文のあった製品の売上情報を得て,今後の注文時期と量の予測
ウ 製品関連のデータストアから,注文のあった製品の価格情報を得て,顧客の注文ごとの売上の集計
エ 部品関連のデータストアから,注文のあった製品の構成部品情報を得て,必要部品の所要量の算出

DFDでは、「プロセス」、「データの流れ」、「データストア」、「源泉/吸収」の4つの記号を用います。以下に整理します。

 

名称

解説

プロセス

 

業務プロセスを表します。上記でいうと、

「出荷指示」を行うとともに,管理部に「売上報告」を行います。 

データフロー

矢印の上に記載された「データ(※右の場合は「注文情報」」と「→」の2つでデータの流れ(データフロー)を表します。

データストア

顧客テーブルや商品テーブルなどのテーブルや、ファイルを表します。

源泉/吸収

データの始まる場所を意味する「発生源」と終わりの場所を意味する「吸引先」です。

上記の場合、発生源は「顧客」で、吸引先

は「出荷部」と「管理部」です。



◆※平成21 システムアーキテクト試験 午後1問1より引用
DFD

・プロセス、データの流れ、データストア、源泉/吸収の4つからなる。
 1)プロセス:上記でいうと「売上」「補充」
 2)データフロー:上記でいうと「自販機マスタ情報」など。※上記の場合は、データ項目で書かれてある部分が多い
 3)データストア:ファイル、データベースなど
 4)源泉/吸収:データの流れは源泉から始まり、吸収に終わる。上記でいうと、自販機などであり、対象システムの範囲外である。

このページのトップヘ