Create System Specification

Bread Crumbs: Home - SW_Dev_Proc - Req Engr - Creat Sys Spec

For this software development process, the system specification artifact is a document that captures development artifacts generated during requirements engineering phase that will be instrumental to the later development phases.

The system specification is essentially a compendium of system specification information that represents the agreement between the customer and developing organization regarding the ultimate system that will be produced as a result of the software development project. The system specification will include the vision document contents, the system models, the system requirements information derived from the system models, and a final section that specifies, in a general way, the basic components of the system and how the will fit together to form the completed whole.

The system specification template document can be found at the following link: systemSpecificationTemplate.mht

Note: This template refers to the microwave oven example as guidance.

The V-Model of development describes a relationship between the various phases of software development and the test plan artifacts produced at each of those phases.  A diagram of the V-Model is shown below:

V-Model Diagram - Create System Specification PNG The system testing procedure tests for errors resulting from unexpected interactions among sub-systems and system components. Acceptance testing is the final exam of a software development project. The title of this type of testing has a very positive meaning; however, there is no guarantee of acceptance. An acceptance test suite is intended to exercise the system in its target environment under standard loads with standard user interaction patterns. Sub-system integration testing focuses on testing the external APIs (Application Programming Interfaces) between sub-systems. The system testing procedure tests for errors resulting from unexpected interactions among sub-systems and system components. Acceptance testing is the final exam of a software development project. The title of this type of testing has a very positive meaning; however, there is no guarantee of acceptance. An acceptance test suite is intended to exercise the system in its target environment under standard loads with standard user interaction patterns. Sub-system integration testing focuses on testing the external APIs (Application Programming Interfaces) between sub-systems.

As illustrated in the above V-Model diagram, at this point in the software development process, creation of system test plans and acceptance test plans should begin. Additionally, creation of system integration test plans should now begin since some basic interface boundaries have now been specified. System integration test plans can be created to focus on the inter-subcomponent interfaces such as: controller module - to/from - input module, controller module - to/from - output module, and perhaps even input module - to/from - output module. There are also several intra-subcomponent interfaces emerging that can be tested such as controller module - to/from - input processing / monitoring module and LCD output generation module - to/from - output module.

No part of this work should be produced or used without the permission of the authors: Michael Turner and Dr. Sharon A White.