ソフトウェアライフサイクルを, 企画, 要件定義, 開発, 運用のプロセスに区分したとき, 要件定義プロセスで明確にする項目はどれか。
平成25年度 春期 ITパスポート試験 問23
这道题的解析和你的作答记录。
問 23
错误ア
明确「开发系统的目的」的是位于需求定义过程之前的策划过程。在策划过程中,要根据经营上的课题与需要制定系统化的构想与计划,确定为了什么而建设系统这一目的,以及适用范围、投资效益、整体进度等。需求定义过程是以那里确定的目的为出发点、逐一梳理出利益相关方具体诉求事项的阶段,因此目的本身并不是在需求定义中才首次确定的项目。
错误イ
明确「每个软件配置项的功能与能力」的是位于需求定义过程之后的开发过程(软件需求定义、软件体系结构设计)。配置项这一单位是实现系统的一方所做的划分,要等把使用方的诉求分配到技术性单位之后才会首次确定下来。在需求定义过程的阶段,还没有确定要把产品分成怎样的部件来实现,因此该项目不会成为需求定义的交付物。
错误ウ
「数据库的结构」是在开发过程中的设计工序(软件详细设计、数据库设计)确定的内部规格。用怎样的表和字段来保存数据属于实现方式的选择,而利益相关方所要求的,只到「希望处理哪些信息」这种业务上的需求为止。如果在需求定义过程中连这样的内部结构都确定下来,就等于先行固定了实现手段,从而偏离了明确需求这一本来的目的。
- エ
正解 正确答案是エ「利益相关方的需要与诉求事项」。在共通框架中,软件生命周期按 策划 → 需求定义 → 开发 → 运行 的顺序划分。其中需求定义过程承接策划过程所确定的系统化目标,全面识别与该系统相关的利益相关方(stakeholder=经营者、业务部门的使用者、运行负责人、交易方等)需要什么、期望什么,把它们整理成业务需求,并在相关各方之间取得共识。也就是说,需求定义过程的职责不是确定「怎么做」,而是确定「对使用方而言什么是必要的」,因此需要明确的项目就是利益相关方的需要与诉求事项。在这里达成共识的需求事项,会在后续的开发过程中进一步具体化为系统需求与软件需求。
- 共通框架的软件生命周期按 策划 → 需求定义 → 开发 → 运行(维护)的顺序推进。策划过程负责「为什么要建设」(经营上的需要,系统化的目的、构想与计划),需求定义过程负责「对使用方而言什么是必要的」(识别利益相关方的需要与诉求事项、业务需求定义、需求的达成共识),开发过程负责「怎么建设」(系统需求定义与体系结构设计、软件需求定义与详细设计、实现、测试),运行过程负责「怎样持续使用」。
- 需求定义过程的核心,是识别利益相关方(stakeholder)并就需求事项达成共识。要毫无遗漏地问出经营者、使用部门、运行负责人、交易方等立场各异的相关方的诉求,对相互冲突的诉求加以协调,汇总成共识文件。如果需求仍然含糊就进入开发,后续工序的返工会很大,因此不把实现手段(配置项、数据库结构等)带进来,只聚焦于「什么是必要的」来加以明确,这正是要点所在。