Page 296 -
P. 296

10.4   System development  279


                                       2.  System design This process overlaps significantly with the requirements devel-
                                          opment process. It involves establishing the overall architecture of the system,
                                          identifying the different system components and understanding the relationships
                                          between them.
                                       3.  Subsystem engineering This stage involves developing the software components
                                          of the system; configuring off-the-shelf hardware and software, designing, if
                                          necessary, special-purpose hardware; defining the operational processes for the
                                          system; and redesigning essential business processes.
                                       4.  System integration During this stage, the components are put together to create
                                          a new system. Only then do the emergent system properties become apparent.
                                       5.  System testing This is usually an extensive, prolonged activity where problems
                                          are discovered. The subsystem engineering and system integration phases are
                                          reentered to repair these problems, tune the performance of the system, and
                                          implement new requirements. System testing may involve both testing by the
                                          system developer and acceptance/user testing by the organization that has pro-
                                          cured the system.
                                       6.  System deployment This is the process of making the system available to its
                                          users, transferring data from existing systems, and establishing communications
                                          with other systems in the environment. The process culminates with a ‘go live’
                                          after which users start to use the system to support their work.

                                         Although the overall process is plan driven, the processes of requirements devel-
                                       opment and system design are inextricably linked. The requirements and the high-
                                       level design are developed concurrently. Constraints posed by existing systems may
                                       limit design choices and these choices may be specified in the requirements. You
                                       may have to do some initial design to structure and organize the requirements engi-
                                       neering process. As the design process continues, you may discover problems with
                                       existing requirements and new requirements may emerge. Consequently, you can
                                       think of these linked processes as a spiral, as shown in Figure 10.8.
                                         The spiral reflects the reality that requirements affect design decisions and vice
                                       versa, and so it makes sense to interleave these processes. Starting in the center, each
                                       round of the spiral may add detail to the requirements and the design. Some rounds
                                       may focus on requirements, and some on design. Sometimes new knowledge col-
                                       lected during the requirements and design process means that the problem statement
                                       itself has to be changed.
                                         For almost all systems, there are many possible designs that meet the require-
                                       ments. These cover a range of solutions that combine hardware, software, and
                                       human operations. The solution that you choose for further development may be the
                                       most appropriate technical solution that meets the requirements. However, wider
                                       organizational and political considerations may influence the choice of solution. For
                                       example, a government client may prefer to use national rather than foreign suppli-
                                       ers for its system, even if national products are technically inferior. These influences
                                       usually take effect in the review and assessment phase of the spiral model where
   291   292   293   294   295   296   297   298   299   300   301