Skip to content

平成22年度 秋期 ITパスポート試験 問49

This question's explanation and your answers so far.

問49
頻出度★★★

システム開発プロセスには, システム要件定義, ソフトウェア要件定義, ソフトウェア方式設計, ソフトウェア詳細設計などがある。システム要件定義で実施する作業として, 適切なものはどれか。

出典 平成22年度 秋期 ITパスポート試験 問49
解説

問 49

  • ア

    正解 The correct answer is ア. System requirements definition is the most upstream process of development, where it is decided from the standpoint of users and business operations what the system should achieve, and it brings together the requirements for the whole system, including hardware, software, and manual work. What it covers is the functions needed for the business (functional requirements) plus non-functional requirements such as performance, availability, security, and operating conditions. Determining the target value for response time — for example, a goal such as “search results are displayed within 3 seconds” — is a quality goal for the performance the system must satisfy, and it can be decided independently of the means of implementation (what program structure to use, what database to use). It is therefore a task that should be decided in system requirements definition as a non-functional requirement, so ア is appropriate.

  • Incorrectイ

    Determining the record fields and primary keys of a database is work that decides the internal structure for realizing the requirements, and it corresponds to database design in software architecture design and later. At the stage of system requirements definition, only “what kind of information needs to be handled” is decided; it does not go into implementation-oriented details such as record structure and primary keys.

  • Incorrectウ

    Determining the algorithm for processing data is about how the processing steps inside a program are put together, that is, the method of implementation, and it is work in software detailed design. Requirements definition decides “what to achieve (What)”, while an algorithm is “how to achieve it (How)” and is not handled there.

  • Incorrectエ

    Determining the format of data exchanged between programs is the work of dividing software into several programs (components) and agreeing on the interfaces between them, so it belongs to software architecture design. In addition, dividing software into programs comes after software requirements definition; at the stage of system requirements definition the program structure itself does not yet exist.

ここがポイント
  • System requirements definition is the most upstream process; it decides the functional requirements demanded of the whole system, together with non-functional requirements such as response time, availability rate, and security. It deals with “what to achieve (What)” and does not go into “how to achieve it (How)”.
  • The further down the process you go, the more implementation-oriented the decisions become. Keep this correspondence in mind so that you can sort the options by process: software architecture design = dividing software into programs and the interfaces between them (data formats and so on); software detailed design = the details of algorithms and data structures.
用語

Your answers