ソフトウェア開発とプロジェクト管理

ウォーターフォール・V字モデル・アジャイル(スクラム)などの開発プロセス、要件と設計(UML、モジュールの強度と結合度)、テストの技法(同値分割、境界値分析、命令網羅と分岐網羅)、Gitとレビュー、WBS・クリティカルパス・EVM・PERTによるプロジェクト管理、SLAと問題管理を3択問題で学べます。

10問練習するこの分野からランダムに10問・約5分 この分野を解くこの分野の問題をすべて、ランダムな順で出題します 苦手問題直近で間違えた問題だけを解き直します

クリティカルパスの計算ツール →

EVM(アーンドバリュー)の計算ツール →

ソフトウェア開発とプロジェクト管理の要点

ソフトウェアは、書いたコードの量よりも、何をどの順番で作り、どう確かめ、どう日程と費用を管理するかで、品質と納期が大きく変わります。ファームウェアやドライバ、EDAのスクリプトや検証環境など、半導体やハードウェアに近い開発でも、この進め方の良し悪しが製品の出来を左右します。

ウォーターフォールモデルとV字モデル、スクラムやテスト駆動開発、CI/CDといった開発の進め方、非機能要件やUML、モジュールの強度と結合度などの設計の考え方、同値分割・境界値分析・分岐網羅などのテストの技法を学びます。さらに、アローダイアグラムのクリティカルパス、三点見積もり、アーンドバリューマネジメントの計算、リスクへの対応、SLAや問題管理といったプロジェクト管理・サービス管理の基本を、計算問題を中心に扱います。基本情報技術者試験・応用情報技術者試験のソフトウェア開発やマネジメント分野の学習にも役立ちます。

ソフトウェア開発とプロジェクト管理の問題一覧(40問)

  1. ソフトウェア開発のウォーターフォールモデルの特徴として、適切なものはどれか。
  2. ソフトウェア開発のV字モデルで、要件定義の工程に対応し、その工程で決めた内容を満たしているかを確かめるテストはどれか。
  3. スクラムで、プロダクトバックログの項目の内容と並び順(優先順位)に責任をもち、プロダクトの価値を最大にする役割はどれか。
  4. スクラムで、スプリントの終わりに、できあがったインクリメント(動く成果物)を利害関係者に見せてフィードバックを受け、今後の方針やプロダクトバックログを見直すイベントはどれか。
  5. エクストリームプログラミング(XP)などのアジャイル開発で行われる、プログラムの外部から見た振る舞いを変えずに、内部の構造を分かりやすく変更しやすいものに整理する作業はどれか。
  6. テスト駆動開発(TDD)の進め方として、適切なものはどれか。
  7. 継続的インテグレーション(CI)の説明として、適切なものはどれか。
  8. 継続的デリバリーと継続的デプロイの違いの説明として、適切なものはどれか。
  9. ある業務システムの要件のうち、非機能要件に当たるものはどれか。
  10. UMLで、炊飯器の制御ソフトウェアのように、イベント(ボタンの押下、タイマの満了、温度の到達など)によってオブジェクトの状態がどのように変わるかを表すのに適した図はどれか。
  11. UMLで、複数のオブジェクトの間でやり取りされるメッセージ(呼出しや応答)を、時間の順に上から下へ並べて表す図はどれか。
  12. モジュールの独立性を評価するモジュール強度(凝集度)のうち、最も強度が高く、望ましいとされるものはどれか。
  13. モジュール間の結合度のうち、最も結合度が弱く、モジュールの独立性が高いものはどれか。
  14. GoFのデザインパターンのうち、あるオブジェクトの状態が変わったときに、それに依存する複数のオブジェクトへ自動で通知されるようにするパターンはどれか。
  15. ファームウェアのソースコードに静的解析ツールを使うとき、プログラムを実行せずに見つけやすい問題として、最も適切なものはどれか。
  16. ブラックボックステストの説明として、適切なものはどれか。
  17. 整数だけが入力される欄で、1以上100以下の値を受け付け、それ以外はエラーにする。同値分割で入力を分けたときの、同値クラスの数(有効同値クラスと無効同値クラスの合計)はどれか。
  18. 入場料金を年齢(0以上の整数)で決めるプログラムがあり、0〜17歳は子供料金、18〜64歳は一般料金、65歳以上はシニア料金とする。料金区分が変わる境目を確かめるために、境界値分析で選ぶテストの値の組合せとして、最も適切なものはどれか。
  19. 仕様は「温度が85 ℃以上なら警告を出す」だが、ファームウェアには誤って「if (t > 85)」と書かれていた。温度 t は整数とする。次のテストの値のうち、この誤りを見つけられるものはどれか。
  20. temp と err の値は互いに独立に決められるものとする。次の処理「if (temp > 80) { fan = HIGH; } else { fan = LOW; } if (err) { log(); }」で、命令網羅(すべての命令を少なくとも1回実行する)を満たすのに必要な最小のテストケースの数はどれか。
  21. a、b、c の真偽は互いに独立に決められるものとする。次の処理「if (a) { S1; } if (b) { S2; } if (c) { S3; }」で、分岐網羅(すべての判定の真と偽を少なくとも1回ずつ実行する)を満たすのに必要な最小のテストケースの数はどれか。
  22. 判定「A かつ B」(A と B は互いに独立に真偽を決められる条件)に対して、テストケース(A = 真、B = 偽)と(A = 偽、B = 真)の2つを実行した。網羅の基準について、正しいものはどれか。
  23. ボトムアップテストで、まだできていない上位モジュールの代わりに、テストの対象の下位モジュールを呼び出してテストデータを渡し、結果を受け取るために作るものはどれか。
  24. テストの工程で、テストの時間(またはテストケースの消化数)を横軸に、見つかった不具合の累積件数を縦軸にとった信頼度成長曲線を描いた。曲線がまだ右上がりのままで、飽和する(横ばいになる)様子が見えないときの判断として、最も適切なものはどれか。
  25. 規模が25 kステップ(2万5,000行)のファームウェアの結合テストで、不具合が30件見つかった。組織の過去の実績から、この工程で見つかる不具合の目安は1 kステップ当たり2〜4件とされている。この結果の評価として、最も適切なものはどれか。
  26. Gitで、2人の開発者が同じファイルの同じ行をそれぞれ別のブランチで書き換え、一方のブランチをもう一方にマージした。このとき起こることとして、適切なものはどれか。
  27. 設計書やソースコードのレビューの方法のうち、モデレータ(進行役)が主導し、参加者の役割を決め、チェックリストなどを使って公式に行い、見つけた欠陥を記録して修正まで確認するものはどれか。
  28. 正しく動くことが分かっているファームウェアの版の後に1,000個のコミットがあり、最新のコミットでは不具合が起こる。不具合はある1つのコミットで入り、それ以降のコミットではすべて起こるとする。git bisect のように二分探索で原因のコミットを特定するとき、ビルドしてテストする回数の最大値はどれか。
  29. プロジェクトの成果物と作業を階層的に分解したWBSで、最も下の階層にあり、所要期間やコストを見積もって担当者を割り当てる単位はどれか。
  30. 結合点を①〜⑥とし、作業を「名前: 始点→終点、所要日数」で示すと、A: ①→②、6日、B: ①→③、4日、C: ②→④、4日、D: ③→⑤、4日、E: ④→⑥、2日、F: ⑤→⑥、3日、ダミー作業: ②→③(所要日数0)となるアローダイアグラムがある。プロジェクト全体の最短の所要日数はどれか。
  31. 作業と所要日数、先行作業が、A: 4日(先行作業なし)、B: 2日(なし)、C: 3日(A)、D: 2日(B)、E: 5日(C)、F: 4日(C と D)、G: 2日(F)のプロジェクトがある。ほかの作業はできるだけ早く始めるとき、作業Bの開始を遅らせても全体の所要日数が延びない最大の日数はどれか。
  32. 作業と所要日数、先行作業が、A: 6日(なし)、B: 4日(なし)、C: 4日(A)、D: 4日(A と B)、E: 2日(C)、F: 3日(D)で、全体の所要日数が13日のプロジェクトがある。各作業を1日短縮するのにかかる追加の費用は、A が30万円、B が5万円、C が10万円、D が20万円、E が8万円、F が25万円である。全体の所要日数を1日短縮するのに、追加の費用が最も少ない方法はどれか。
  33. ある作業の所要日数を三点見積もりで見積もったところ、楽観値が4日、最可能値が7日、悲観値が16日だった。PERTの式で求めた所要日数の期待値はどれか。
  34. 完成時総予算(BAC)が2,000万円のプロジェクトで、ある時点の計画価値(PV)が800万円、出来高(EV)が600万円、実コスト(AC)が750万円だった。この時点のプロジェクトの状況として、正しいものはどれか。
  35. 完成時総予算(BAC)が1,200万円のプロジェクトで、現時点の計画価値(PV)が600万円、出来高(EV)が480万円、実コスト(AC)が600万円である。今後も現在のコスト効率が続くとしたとき、完成時総コストの見積もり(EAC)はどれか。
  36. 遅れているソフトウェア開発のプロジェクトで、開発者を5人から10人に増やした。2人の間の意思疎通の経路の数(2人の組の数)は、増やす前の何倍になるか。
  37. プロジェクトのリスクへの対応のうち、起こったときの損失に備えて保険をかけたり、契約によってその作業を専門の会社に引き受けてもらったりして、影響を第三者に移すものはどれか。
  38. ソフトウェアの規模の見積もりに使うファンクションポイント法の説明として、適切なものはどれか。
  39. あるサービスのSLAで、月間の稼働率を99.95%以上と定めている。1か月を30日とし、計画停止も含めて計算する。今月はすでに障害で合計15分停止した。今月、SLAを守るために残りの期間で許される停止時間はどれか。
  40. ITサービスマネジメントで、繰り返し起こる障害について根本原因を調べ、恒久的な対策によって再発を防ぐことを主な目的とするプロセスはどれか。

ソフトウェア開発とプロジェクト管理の参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

コンピュータシステムのほかの分野