Page 167 - DCAP305_PRINCIPLES_OF_SOFTWARE_ENGINEERING
P. 167

Unit 8: Detailed Design



            The detailed design activity is often not performed formally and archived as it is almost not   Notes
            possible to keep the detailed design document consistent with the code. Due to this, developing
            the detailed design is useful for the more multifaceted and important modules, and is often done
            informally by the programmer as part of the personal process of developing code.

            The  design  of  a  system  is  a  plan  for  a  solution  such  that  if  the  plan  is  implemented,  the
            implemented system will satisfy the requirements of the system and will preserve its architecture.
            The module-level design specifies the modules that should be there in the system to implement
            the architecture, and the detailed design the processing logic of modules.
            Software design is the ‘process of defining the architecture, components, interfaces, and other
            characteristics of a system or component’. Detailed design is the process of defining the lower
            level components, modules and interfaces.
            Production is the process of:

               •  Programming: Coding the components;
               •  Integrating: Assembling the components;

               •  Verifying: Testing modules, subsystems and the full system.
            The physical model outlined in the AD phase (Architecture Design Phase) is comprehensive to
            produce a structured set of component specifications that are consistent, coherent and complete.
            Each specification defines the functions, Inputs, Outputs and Internal processing of the component.
            The software components are documented in the Detailed Design Document (DDD). The DDD
            is a comprehensive specification of the code. It is the primary reference for maintenance staff in
            the Transfer phase (TR phase) and the Operations and Maintenance phase (OM phase).
            The main outputs of the DD phase are the: Source and Object code;

               •  Detailed Design Document (DDD);
               •  Software User Manual (SUM);

               •  Software Project Management Plan for the TR phase (SPMP/TR);
               •  Software Configuration Management Plan for the TR phase (SCMP/TR);

               •  Software Quality Assurance Plan for the TR phase (SQAP/TR);
               •  Acceptance Test specification (SVVP/AT).

            Progress  reports,  configuration  status  accounts,  and  audit  reports  are  also  outputs  of  the
            phase. These should always be archived. The detailed design and production of the code is the
            responsibility of the developer. Engineers developing systems with which the software interfaces
            may be consulted during this phase. User representatives and operations personnel may observe
            system tests. DD phase activities must be carried out according to the plans defined in the AD
            phase. Progress against plans should be continuously monitored by project management and
            documented at regular intervals in progress reports. Figure 8.1 is an ideal representation of the
            flow of software products in the DD phase. The reader should be aware that some DD phase
            activities can occur in parallel as separate teams build the major components and integrate them.
            Teams may progress at different rates; some may be engaged in coding and testing while others
            are designing. The following subsections discuss the activities shown in Figure 8.1.




                                             LOVELY PROFESSIONAL UNIVERSITY                                   161
   162   163   164   165   166   167   168   169   170   171   172