ch02-Computer-Based System Engineering

Document Sample
ch02-Computer-Based System Engineering Powered By Docstoc
					                Chapter 2

      Computer-Based System Engineering
  Designing, implementing, deploying and operating
systems which include hardware, software and people
        Objectives
     To explain why software in a system is affected by broader system
      engineering issues
     To introduce the concept of emergent system properties such as
      reliability and security
     To explain why the systems environment must be considered in
      the system design process
     To explain system engineering and system procurement processes




1       CSDP 405 Software Engineering I                          6/13/2011
    Topics covered
     Emergent system properties
     Systems and their environment
     System modelling
     The system engineering process
     System procurement




2   CSDP 405 Software Engineering I    6/13/2011
      What is a system?
 A purposeful collection of interrelated components
 A system may include
     Software
     Mechanical
     electrical and electronic hardware
 System components are dependent on one another.




3     CSDP 405 Software Engineering I                  6/13/2011
      Problems of system engineering
 It requires a great deal of coordination across disciplines
    Almost infinite possibilities for design trade-offs across
     components
    Mutual distrust and lack of understanding across engineering disciplines
 Systems must be designed to last many years in a changing
    environment




4     CSDP 405 Software Engineering I                               6/13/2011
    Software and system engineering
 The proportion of software in a system is increasing
 Software-driven general purpose electronics is replacing
  special-purpose systems
 Problems of system engineering are similar to the problems of
  software engineering




5     CSDP 405 Software Engineering I                    6/13/2011
     1. Emergent properties

 Properties of a system as a whole
 A consequence of the relationships between system components
 Can be assessed once the components have been integrated into a
    system




6      CSDP 405 Software Engineering I                       6/13/2011
     Examples of emergent properties
 The overall weight of a system
 The overall volume of a system
 The reliability of a system
 The usability of a system




7    CSDP 405 Software Engineering I   6/13/2011
       Types of emergent property
 Functional properties
     These appear when all the parts of a system work together to achieve some
      objectives.

 Non-functional emergent properties
     reliability, performance, safety, and security.




8      CSDP 405 Software Engineering I                                6/13/2011
        Influences on reliability
     Hardware reliability
     Software reliability
     Operator reliability




9       CSDP 405 Software Engineering I   6/13/2011
         The ‘shall-not’ properties
 The properties that the system should not exhibit
      Safety - the system should not behave in an unsafe way
      Security - the system should not permit unauthorized use




10       CSDP 405 Software Engineering I                          6/13/2011
     2. Systems and their environment
        Systems are not independent but exist in an environment
        System’s function may change its environment and vice versa




11     CSDP 405 Software Engineering I                        6/13/2011
     System hierarchies
          Town

                 Street

                       Building
                              Heating    Power       Water
                              system     system     system
                              Security   Lighting    Waste
                               system    system     system




12   CSDP 405 Software Engineering I                         6/13/2011
        Human and organizational factors
      Process changes
      Job changes
      Organizational changes




13      CSDP 405 Software Engineering I   6/13/2011
 3. System architecture modelling
      Presents an abstract view of the sub-systems
      May include major information flows between sub-systems
      May identify different types of functional component in the model
      Usually is presented as a block diagram




14      CSDP 405 Software Engineering I                          6/13/2011
       Intruder alarm system
     Movement                                       Door
      sensors                                      sensors



                                     Alarm
                                    contr oller

                                                                External
                                                              control centre
                                    Voice         Telephone
      Siren
                                  synthesizer       caller




15     CSDP 405 Software Engineering I                          6/13/2011
       Radar          Transponder         Da ta comms.           Aircraft           Telephone
      system            system               system              comms.              system




     Position                Backup                      Comms.                 Backup comms.
     processor               position                    processor                processor              A
                            processor
                                                                                                         T
                                                                                                         C
      Aircraft                             Flight plan
                                                                                                         s
     simulation                             database                                                     y
       system
                                                                                                         s
     Weather map
                                                                                                         t
       system                                                                                            e
                                           Controller                               Controller           m
     Accounting                           info. system                               consoles
       system

                                                             Activity logging
                                                                 system


16      CSDP 405 Software Engineering I                                                      6/13/2011
     Functional System components
      Sensor components
          Collect information from the system’s environment

      Actuator components
          Cause some changes in the system’s environment

      Computation components
          Carry out some computations on an input to produce an output

      Communication components
          Allow system components to communicate each other

      Co-ordination components
          Co-ordinate the interactions of other system components

      Interface components
          Facilitate the interactions of other system components

      All components are now usually software controlled



17   CSDP 405 Software Engineering I                                      6/13/2011
 Component types in alarm system
      Sensor
          Movement sensor, Door sensor

      Actuator
          Siren

      Communication
          Telephone caller

      Coordination
          Alarm controller

      Interface
          Voice synthesizer




18   CSDP 405 Software Engineering I      6/13/2011
     4. The system engineering process
  ‘Waterfall’ model
      Parallel development of different parts of the system
      Software may have to compensate for hardware problems
  Involving engineers from different disciplines




19     CSDP 405 Software Engineering I                         6/13/2011
     Inter-disciplinary involvement
        Software                        Electronic    Mechanical
       engineering                     engineering    engineering



        Structural                     ATC systems    User interface
       engineering                      engineering      design



          Civil                         Electrical
                                                      Architecture
       engineering                     engineering



20   CSDP 405 Software Engineering I                             6/13/2011
        The system engineering process
     Requirements                                                                     System
      definition                                                                  decommissioning


                    System                                                 System
                    design                                                evolution


                               Sub-system                    System
                               development                 installation


                                               System
                                             integration



21      CSDP 405 Software Engineering I                                                 6/13/2011
     System requirements definition
  Three types of requirement
    Abstract functional requirements   System functions are defined in an
                                                  abstract way
    System properties
    Undesirable characteristics         Non-functional requirements
                                        are defined
  System objectives



                                          Unacceptable system
                                          behaviour is specified


22   CSDP 405 Software Engineering I                              6/13/2011
      System objectives
                                        To provide a fire and intruder alarm system
  Functional objectives                for a building which will provide internal
                                        and external warning of fire or unauthorized
  Organizational objectives            intrusion

                                         To ensure that the normal functioning of
                                         work carried out in the building is not
                                         seriously disrupted by events such as fire and
                                         unauthorized intrusion




23    CSDP 405 Software Engineering I                                           6/13/2011
     System requirements problems
  Changing as the system is being specified
  Must anticipate hardware/communications developments
  Hard to define non-functional requirements




24   CSDP 405 Software Engineering I                      6/13/2011
     The system design process
      Partition requirements
      Identify sub-systems
      Assign requirements to sub-systems
      Specify sub-system functionality
      Define sub-system interfaces




25   CSDP 405 Software Engineering I        6/13/2011
                         Block Diagram

       Partition                                                         Define sub-system
     requirements                                                            interfaces

                        Identify                         Specify sub-system
                      sub-systems                           functionality


                                       Assign requirements
                                         to sub-systems



26       CSDP 405 Software Engineering I                                          6/13/2011
     System design problems
      Negotiation                 Requirements partitioning to hardware, software and human
                                   components may involve a lot of negotiation


      Assumption                      Difficult design problems are often assumed to be readily solved
                                       using software


      Compensation                     Hardware platforms may be inappropriate for software requirements
                                        Software must compensate for this




27   CSDP 405 Software Engineering I                                                              6/13/2011
     Sub-system development
  The hardware, software and communications subsystem are
   developed in parallel.
  May involve some reuse or COTS (Commercial Off-the-Shelf)
   systems procurement.




28   CSDP 405 Software Engineering I                         6/13/2011
     The problems of Sub-system
     Development
 Communication:
   Lack of communication across implementation teams is common.
 Delay
   Bureaucratic and slow mechanism for proposing system changes means
    that the development schedule may be extended because of the need for
    rework.




29   CSDP 405 Software Engineering I                             6/13/2011
     System integration
  The process of putting hardware, software and people together
  Sub-systems are integrated one at a time




30   CSDP 405 Software Engineering I                        6/13/2011
        The Problems
      Processing interface problems between sub-systems
      Uncoordinated deliveries of system components




31      CSDP 405 Software Engineering I                    6/13/2011
     System installation (Problems)
 Environmental assumptions may be incorrect
 Human resistance to the introduction of a new system
 System may have to coexist with alternative systems for some time
 Physical installation problems
 Operator training has to be identified




32   CSDP 405 Software Engineering I                         6/13/2011
       System operation (Problems)
  Bring unforeseen requirements to light
  Used with un-anticipated way by users
  May reveal problems in the interaction with other systems
      Physical problems of incompatibility
      Data conversion problems
      Increased operator error rate because of inconsistent interfaces




33     CSDP 405 Software Engineering I                                    6/13/2011
         System evolution
  Large systems must evolve to meet changing requirements as of
   long lifetime
  Evolution is inherently costly
        Changes must be analyzed from a technical and business perspective
        Sub-systems interact so unanticipated problems can arise
        There is rarely a rationale for original design decisions
        System structure is corrupted as changes are made to it
  Existing systems which must be maintained are sometimes called
     legacy systems



34       CSDP 405 Software Engineering I                             6/13/2011
      System decommissioning
 Taking the system out of service after its useful lifetime
 May require removal of materials (e.g. dangerous chemicals) which
  pollute the environment
 May require data to be restructured and converted to be used in
  some other systems




35    CSDP 405 Software Engineering I                          6/13/2011
 5. System procurement

  Acquiring a system for an organization to meet some needs
  Some system specifications and architectural designs are usually
     necessary before procurement
      A specification is useful for the contract of a system development
      The specification may allow you to buy a commercial off-the-shelf (COTS) system




36     CSDP 405 Software Engineering I                                        6/13/2011
        The system procurement process
   Off-the-shelf
 system available
                       Adapt              Choose   Issue request      Choose
                    requirements          system      for bids        supplier


Survey market for
 existing systems


                    Issue request         Select     Negotiate     Let contract for
                      to tender           tender      contract      development
 Bespoke system
    required




37      CSDP 405 Software Engineering I                               6/13/2011
        Procurement issues
      Requirements may have to be modified to match the capabilities
       of off-the-shelf components
      The requirements specification may be part of the contract for the
       development of the system
      There is usually a contract negotiation period




38      CSDP 405 Software Engineering I                           6/13/2011
      Contractors and sub-contractors
 The procurement of large hardware/software systems is usually
  based around some principal contractor
 Sub-contracts are issued to other suppliers to supply parts of the
  system
 Customer interacts with the principal contractor and does not deal
  directly with sub-contractors




39    CSDP 405 Software Engineering I                         6/13/2011
        Contractor/Sub-contractor model
                                              System
                                             customer



                                              Principal
                                             contractor




     Sub-contractor 1                     Sub-contractor 2   Sub-contr actor 3



40      CSDP 405 Software Engineering I                                   6/13/2011
        Key points
      System engineering involves input from a range of disciplines
      Emergent properties are properties that are characteristic of
       the system as a whole and not its component parts
      System architectural models show major sub-systems and
       inter-connections.
      The systems engineering process is usually a waterfall model
       and includes specification, design, development and
       integration.
      System procurement is concerned with deciding which
       system to buy and whom to buy it from.

41      CSDP 405 Software Engineering I                           6/13/2011

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:7
posted:6/13/2011
language:English
pages:42