閉じる

応用情報技術者過去問題 令和7年秋期 午後問9

⇄問題文と設問を画面2分割で開く⇱問題PDF

問9 プロジェクトマネジメント

ソフトウェア開発モデルが混在するプロジェクトのマネジメントに関する次の記述を読んで,設問に答えよ。

 F社は中堅の電気機器メーカーで,製造拠点としてX工場をもつ。F社のITシステム部には開発課と保守課がある。開発課は,X工場向けにX工場生産管理システムを開発し,保守課が運用と保守を行っている。最近,F社は製品の需要増に対応するため,協業会社からY工場を買収した。

〔X工場生産管理システムの概要〕
 X工場生産管理システムは,生産計画や生産実績管理などの基幹業務機能と,そのデータを活用して,品質問題などの分析や対策検討を行うためのデータ分析機能(以下,分析機能Xという)から成る。基幹業務機能はスクラッチで開発した。一方,分析機能Xは,V社が提供するデータ分析用のソフトウェア開発支援ツール(以下,Vツールという)を利用して開発した。基幹業務機能から出力されたデータは,分析機能Xのデータベースに蓄積され,X工場のユーザー部門がそれを分析作業で使用している。

〔X工場生産管理システムのY工場への展開〕
 このたび,F社は,Y工場向けにY工場生産管理システム(以下,本システムという)を導入することとし,その際,X工場生産管理システムの機能をベースに必要な追加や変更の開発を行うことにした。F社は,本システムの開発を行うプロジェクト(以下,本プロジェクトという)を立ち上げ,開発課のS君を本プロジェクトのプロジェクトマネージャに任命した。Y工場は,X工場と製造方法が同じ製品だけではなく,製造方法が異なる製品も9か月後から製造する予定である。したがって,本システムは9か月後にはリリースしなくてはならない。
 本システムの基幹業務機能は,X工場とY工場とで製造方法が同じ製品については,X工場生産管理システムの機能を使用できる。X工場とY工場とで製造方法が異なる製品については,新たな機能の開発が必要であるが,生産計画や生産実績管理などの業務に大きな違いはなく,Y工場のユーザー部門の要求事項は固まっている。また,データ分析機能へ出力するデータの仕様は製造方法や製品に依存しないので,新たなデータ出力機能の開発は必要ない。
 一方,本システムのデータ分析機能について,要求事項を取りまとめるY工場のユーザー部門にS君がヒアリングした結果,次のような状況であった。
  • X工場とY工場とで製造方法が同じ製品については,X工場生産管理システムの分析機能Xのパラメータ設定を変更することで対応できる。しかし,製造方法が異なる製品については分析機能Xのパラメータ設定の変更では対応できないので,Vツールを利用した新たなY工場向けのデータ分析機能(以下,分析機能Yという)の開発が必要である。
  • 分析機能Yに対する要求事項はまだ決まっていない。分析機能Yについては,基幹業務機能の開発と並行して,試行錯誤しながら開発を進める必要がある。
 S君はこの状況に対応する本プロジェクトの計画の策定に着手した。

〔本プロジェクトの計画〕
 S君は,本システムの基幹業務機能及び分析機能Xに対しては,F社で規定されているウォーターフォール開発モデルを適用することにした。また,①分析機能Yに対してはY工場のユーザー部門の状況を踏まえ,要件定義~実装の工程にF社で規定されているアジャイル開発モデルを適用することにした
 本システムの開発に適用するソフトウェア開発モデルを表1に示す。
pm09_1.png/image-size:578×123
 S君は,前半の要件定義~実装の工程を実施するチームを,基幹業務機能及び分析機能Xを開発するXチームと,分析機能Yを開発するYチームとで編成することにした。後半のテスト~導入・受入れの工程は,両チームが一体となって作業することにした。Xチームの作業期間を確保し,Y工場のユーザー部門が本システムで確実に業務を実施できるようにするため,前半の要件定義~実装の工程の作業期間と後半のテスト~導入・受入れの工程の作業期間は,それぞれ4.5か月とした。
 ウォーターフォール開発モデルを適用する工程での仕様変更要望については,プロジェクトオーナーであるY工場長,Y工場のユーザー部門の代表などのステークホルダが参加する変更管理委員会(CCB)を設置し,CCBで仕様変更要望を審査して変更の実施の可否を決定する。アジャイル開発モデルを適用する工程での仕様変更要望については,CCBではなく本プロジェクトで変更の実施の可否を決定する。また,テスト工程以降の仕様変更要望は受け付けない。

〔本プロジェクトのマネジメント〕
 S君は,ウォーターフォール開発モデルの適用工程では,開発成果物に基づく指標を用いて進捗を管理するEVMを適用することにした。例えば,指標aと指標bとを比較し,aの方が小さい場合は進捗遅れがあると判断する。
 アジャイル開発モデルの適用工程では,週5日を稼働日とする3週間のイテレーションを6回繰り返す。各イテレーションの作業は,計画の作成,要件定義~実装,ユーザー部門レビュー及び振返りから成る。イテレーション内の作業を同じ作業量のタスクに分解し,タスクに優先度を付与する。タスクに対してチケットを発行して日々のタスクの進捗状況を把握する。Yチームのメンバーが計画の作成とチケットの発行を行い,S君がその内容や状況を確認する。各イテレーションでは,次のイテレーションに持ち越すタスクもあるが,優先度の高いタスクは3週間で終了させる必要がある。S君は,Yチームの進捗の把握には,イテレーションの経過日数と残チケット数を示すバーンダウンチャートを用いることにした。その上で,②毎朝のミーティングでは,Yチームの全メンバーでバーンダウンチャートを用いて残日数を確認し,当日実施するタスクと担当者を決めることにした
 ユーザー部門レビューにおいてY工場のユーザー部門から提出された仕様変更要望は,仕様変更要望一覧にリストアップされる。リストアップされた仕様変更要望については,業務での有用性の確認と作業量の見積りを行う。次に,他の仕様変更要望の優先度を考慮して変更の実施の可否を決定し,変更を実施する場合は次のイテレーションで対応する。
 それぞれのイテレーションのタスクとしてcを行う。cでは,次のイテレーションでの作業の効率や品質を向上させるとともに,分析機能Yの保守作業の効率を向上させるため,外部仕様を変えずにソースコードの構造を整理する。

〔プロジェクト実行における問題〕
 S君が5回目のイテレーションの5日目の終了時点で,進捗状況をバーンダウンチャートで確認したところ,図1に示すとおりになっていた。
pm09_2.png/image-size:512×326
 5日目の作業完了時点での進捗遅れが,稼働日でd日分発生していることから,S君が,遅れが発生しているタスクの担当者であるE君に状況を聞いたところ,次の回答を得た。
  • 4回目のイテレーションで,ある機能を分析機能Yに追加するという仕様変更要望がY工場のユーザー部門から提出された。これを5回目のイテレーションの開発対象としていたが,一部の機能についてVツールを利用した開発方法の調査に想定よりも時間を要し,遅れが発生した。
  • 調査の結果,Vツールはパラメータ設定で開発に利用でき,予定していたよりも少ない作業量で開発できるので,遅れを取り戻せることが分かった。
 E君は,Vツールのパラメータ設定が追加のタスクなのでeし,S君がその内容を確認した。その後,タスクは予定どおり終了し,S君は,計画どおりのリリースを目指してプロジェクト推進を継続した。

設問1

本文中の下線①について,要件定義~実装の工程にF社で規定されているアジャイル開発モデルを適用する要因となった,Y工場のユーザー部門の状況とは何か。本文中の字句を用いて,25字以内で答えよ。

解答入力欄

解答例・解答の要点

  • 試行錯誤しながら開発を進める必要があること (21文字)

解説

下線①では「分析機能Yに対してはY工場のユーザー部門の状況を踏まえ…アジャイル開発モデルを適用することにした」とあり、判断の根拠がユーザー部門の状況にあるとわかります。一方で、基幹業務機能と分析機能Xにはウォーターフォール開発モデルを適用するとあり、開発対象によってモデルを使い分けています。

〔X工場生産管理システムのY工場への展開〕では、「分析機能Yに対する要求事項はまだ決まっていない。分析機能Yについては,基幹業務機能の開発と並行して,試行錯誤しながら開発を進める必要がある」と記述されています。この記述より、分析機能Yは要件が未確定であり、開発を進めながら検討・調整していく必要があるため、事前に詳細な計画を確定することが難しい状況であると判断できます。

ウォーターフォール開発は要件を事前に確定させたうえで計画を立て、その計画に従って工程を進める手法であるため、開発途中での要件の変更に対応しづらいという特徴があります。これに対し、アジャイル開発は、計画・設計・実装・テストを短いサイクルで繰り返し実施するため、成果物から得られたフィードバックや新たに確定した要件を次の開発に反映していくことが可能です。このため、不確実性が高い環境においても、価値の高い成果物を継続的に提供できる開発手法とされています。

分析機能Yのように、「試行錯誤しながら開発を進める必要がある」状況には、アジャイル開発が適しており、この点がアジャイル開発を採用した一番の理由であるといえます。

∴試行錯誤しながら開発を進める必要があること

設問2

〔本プロジェクトのマネジメント〕について答えよ。
  • 本文中のabに入れる適切な字句を解答群の中から選び,記号で答えよ。
  • 本文中の下線②について,バーンダウンチャートを用いて残日数を確認し,当日実施するタスクと担当者を決める目的は何か。本文中の字句を用いて,25字以内で答えよ。
  • 本文中のcに入れる適切な字句を,10字以内で答えよ。
a,b に関する解答群
  • AC
  • BAC
  • CPI
  • CV
  • EAC
  • EV
  • PV
  • SPI

解答入力欄

    • a:
    • b:
    • c:

解答例・解答の要点

    • a:
    • b:
    • 優先度の高いタスクを3週間で終了させるため (21文字)
    • c:リファクタリング (8文字)
  • 解説

    • abについて〕
      空欄を含む一文は、本文では「指標aと指標bとを比較し,aの方が小さい場合は進捗遅れがあると判断する」です。

      EVM(Earned Value Management)では、以下の3つを基本指標としてプロジェクトの進捗を管理します。
      PV(Planned Value)
      プロジェクト開始当初、現時点までに計画されていた作業に対する予算
      EV(Earned Value)
      現時点までに完了した作業に割り当てられていた予算
      AC(Actual Cost)
      現時点までに完了した作業に対して実際に投入した総コスト
      進捗の管理に使用する指標はPVとEVです。PVは計画上完了しているべき作業量を表し、EVは実際に完了した作業量を表すため、進捗遅れの状況にあるのは、EVがPVより小さい場合です。したがって、空欄aには「カ:EV」が、空欄bには「キ:PV」がそれぞれ当てはまります。

      a=EV
       b=PV

      その他の選択肢の簡単な説明です。
      イ:BAC(Budget at Completion)
      プロジェクト全体の総予算
      ウ:CPI(Cost Performance Index)
      EV/ACで算出されるコスト効率指数
      エ:CV(Cost Variance)
      EV-ACで算出されるコスト差異
      オ:EAC(Estimate at Completion)
      完了時総コストの見積り
      ク:SPI(Schedule Performance Index)
      EV/PVで算出されるスケジュール効率指数
      ケ:VAC(Variance at Completion)
      BAC-EACで算出される完了時の予算差異
    • 下線②では、毎朝のミーティングでバーンダウンチャートを用いて残日数を確認し、その日のタスクと担当者を決める運用が示されており、その目的が問われています。

      その前段を読むと、「各イテレーションでは,次のイテレーションに持ち越すタスクもあるが,優先度の高いタスクは3週間で終了させる必要がある」とされています。ここで重要なのは、期限内に終えるべきタスクと、そうでないタスクがあるという点です。

      バーンダウンチャートは、残日数に対する残作業量から進捗のペースを一目で把握できるグラフです。優先度の高いタスクを3週間で完了させるには、進捗が遅れた場合に、人員を重点的に割り当てたり優先度が低いタスクを次のイテレーションに持ち越したりするなどの調整が必要となります。各イテレーションは3週間と短いため、バーンダウンチャートを用いて日々進捗を確認することが、遅れを早期に把握して対応することにつながります。このことから、下線②の運用の目的は、優先度の高いタスクを期間内に確実に完了させることにあると言えます。

      ∴優先度の高いタスクを3週間で終了させるため

    • cについて〕
      本文では、空欄cによって「外部仕様を変えずにソースコードの構造を整理」し、次のイテレーションでの作業の効率や品質、分析機能Yの保守作業の効率を向上させると説明しています。外部仕様を変えずに内部構造を改善する作業は、リファクタリングと呼ばれます。したがって、空欄cには「リファクタリング」が当てはまります。

      アジャイル開発では、機能追加や変更を繰り返すためコードの劣化や技術的負債が蓄積しやすいという特徴があります。本問では各イテレーションでリファクタリングを計画的に実施し、コードの品質と保守性を維持しようとしていることが読み取れます。

      c=リファクタリング

    設問3

    〔プロジェクト実行における問題〕について答えよ。
    • 本文中のdに入れる適切な数値を整数で答えよ。
    • 本文中のeに入れる適切な字句を,本文中の字句を用いて,10字以内で答えよ。

    解答入力欄

      • d:
      • e:

    解答例・解答の要点

    • d:1
    • e:チケットを発行 (7文字)
  • 解説

    • dについて〕
      図1のバーンダウンチャートをもとに、5日目時点での遅れ日数を答えます。遅れ日数は理想線と実績線との差によって求めます。

      図1を見ると、4日目終了時点では理想線と実績線が一致しており、ここまでは計画どおりに進んでいます。5日目終了時点では、理想線が4日目から下がっているのに対し、実績線は横ばいとなっており作業が進んでいません。5日目時点で4日目までの作業しか完了していないことになるため、遅れ日数は1日です。したがって、空欄dには「1(日)」が当てはまります。

      d=1

    • eについて〕
      空欄eを含む一文は「E君は,Vツールのパラメータ設定が追加のタスクなのでeし,S君がその内容を確認した」となっています。空欄eは、追加タスクの発生に伴い、タスク担当者であるE君が行うべきことが入ります。

      〔本プロジェクトのマネジメント〕によれば、「タスクに対してチケットを発行して…進捗状況を把握する。Yチームのメンバーが計画の作成とチケットの発行を行い,S君がその内容や状況を確認する」とされています。追加のタスクであっても、タスク管理の手順は変わりません。S君が確認する対象であり、かつ担当者E君が実施する作業に該当するのは「チケットの発行」です。したがって、空欄eには「チケットの発行」が当てはまります。

      e=チケットを発行
    問9成績

    令和7年秋期 午後問題一覧

    問1 問2 問3 問4 問5 問6 問7 問8 問9 問10 問11 採点講評

    Pagetop