Page 298 -
P. 298

10.5   System operation  281


                                          these subsystems. When a single subsystem is integrated with an already work-
                                          ing system, errors that occur are probably in the newly integrated subsystem or in
                                          the interactions between the existing subsystems and the new subsystem.

                                         As more and more systems are built by integrating COTS hardware and software
                                       components, the distinction between implementation and integration is increasingly
                                       blurred. In some cases, there is no need to develop new hardware or software and the
                                       integration is, essentially, the implementation phase of the system.
                                         During and after the integration process, the system is tested. This testing should
                                       focus on testing the interfaces between components and the behavior of the system
                                       as a whole. Inevitably, this will also reveal problems with individual subsystems that
                                       have to be repaired.
                                         Subsystem faults that are a consequence of invalid assumptions about other subsys-
                                       tems are often revealed during system integration. This may lead to disputes between
                                       the contractors responsible for implementing different subsystems. When problems are
                                       discovered in subsystem interaction, the contractors may argue about which subsystem
                                       is faulty. Negotiations on how to solve the problems can take weeks or months.
                                         The final stage of the system development process is system delivery and deploy-
                                       ment. The software is installed on the hardware and is readied for operation. This
                                       may involve more system configuration to reflect the local environment where it is
                                       used, the transfer of data from existing systems, and the preparation of user docu-
                                       mentation and training. At this stage, you may also have to reconfigure other systems
                                       in the environment to ensure that the new system interoperates with them.
                                         Although straightforward in principle, many difficulties can arise during deploy-
                                       ment. The user environment may be different from that anticipated by the system
                                       developers and adapting the system to cope with diverse user environments can be
                                       difficult. The existing data may require extensive cleanup and parts of it may be
                                       missing. The interfaces to other systems may not be properly documented.
                                         The influence of system development processes on dependability and security
                                       is obvious. It is during these processes that decisions are made on dependability and
                                       security requirements and on trade-offs between costs, schedule, performance,
                                       and dependability. Human errors at all stages of the development process may lead
                                       to the introduction of faults into the system which, in operation, can lead to system
                                       failure. Testing and validation processes are inevitably constrained by the costs and
                                       time available. As a result, the system may not be properly tested. Users are left to
                                       test the system as it is being used. Finally, problems in system deployment may
                                       mean that there is a mismatch between the system and its operational environment.
                                       These can lead to human errors when using the system.


                                10.5 System operation



                                       Operational processes are the processes that are involved in using the system for its
                                       defined purpose. For example, operators of an air traffic control system follow spe-
                                       cific processes when aircraft enter and leave airspace, when they have to change
   293   294   295   296   297   298   299   300   301   302   303