570 likes | 696 Views
Chapter 2 Socio-technical Systems ( C omputer-based System Engineering). System Engineering.
E N D
Chapter 2 Socio-technical Systems(Computer-based System Engineering)
System Engineering Is the activity of specifying, designing,implementing, deploying, maintaining systems, which include hardware, software, people and interaction of the system with users and its environment.
Objectives • To introduce the concept of emergent systemproperties such as reliability and security • To explain system engineering and system processes
What is a system? • A collection of inter-related components working together towards some common objective. • A system may include software, mechanical, electrical and electronic hardware and be operated by people. • System components are dependent on other system components • System is more than simply the sum of its parts! • It has properties of the system as a whole. (emergent properties)
Socio-technical system characteristics • They have emergent properties • Properties of the system of a whole thatdependon the system components and their relationships. • They are often Non-deterministicغير قطعية • They do not always produce the same output when presented with the same input because the system’s behaviour is partially dependent on human operators.
System categories , cont… • System categories • Technical computer-based systems • Systems that include hardwareandsoftwarebut where the operators and operational processes are not normally considered to be part of the system. • Socio-technical systems • Systems that include technical systems but also operational processes and peoplewho use and interact with the technical system. • Socio-technical systems are governed by organizational policies and rules.
Problems of systems engineering • Large systems are usually designed to solve'wicked' problems • Systems engineering requires a great deal of coordination acrossdisciplines • distrust and lack of understanding across engineering disciplines • Systems must be designed to last many years in a changing environment
Emergent System properties • Properties of the system as a whole rather than properties that can be derived from the properties of components of a system. • Emergent properties are a consequence (result) of the relationships between system components • They can therefore only be assessed and measured ONCE the componentshave beenintegratedinto a system
Types of emergent properties • Functional properties • These appear when all the parts of a system work together to achieve some objective. • For example, a bicycle has the functional property of being a transportation device once it has been assembled from its components.
Types of emergent properties (cont.) • Non-functional emergent properties • Examples are reliability, performance, safety, and security. • These relate to the behaviour of the system in its operational environment. • They are often critical for computer-based systems as failure that may make the system unusable.
Complexity of emergent system properties- reliability • Because of component inter-dependencies, faultscan be propagated through the system, so failure in one component can affect the operation of other components. • System failures often occur because of unforeseen inter-relationships between component.
Influences on a system reliability • Hardware reliability • What is the probability of a hardware component failing and how long does it take to repairthat component? • Software reliability • How likely is it that a software component will produce an incorrect output. • Software failure is usually distinct from hardware failure in that software does not wear out. • Operator reliability • How likely is it that the operator of a system will make an error?
Influences on a system reliability (cont.) • Properties such as performance, usability, and reliabilityare difficult to assess but can be measuredafter the system is operational. • However, some properties such as safety and securitypose a different problem, because it is very hard to predict all possible modes of access and explicitly forbid them. • Safety - the system that reflects the system’s ability to operate without danger • Security - the system should not permit unauthorised use • Measuring or assessing these properties is very hard (why???)
The system engineering process • Usually follows a ‘waterfall’ model because of the need for development of different parts of the system. • There are important distinctions between the system engineering process and the software development process:
The system engineering process (cont.) • Little scope for rework during system developmentbecause hardware changes are veryexpensive, reworkingthe system design to solve these problems. Software becomes so important insystems because of its flexibility • Example: siting of Base station in mobile cell • Always involves engineers from different disciplines , many engineering disciplineswho must work together, much scope for misunderstanding here. Different disciplines use a different vocabulary and much negotiation is required. Engineers may have personal agendas to fulfil.
The hardest part of building a software system is deciding what to buildAdvice:be sure you have assessed overall feasibility before you expend effort and time eliciting detailed requirements.Advice: if different customers cannot agree on requirements, the risk of failure is very high.
1- System requirements definition • System requirements • A structured documentsetting out detailed descriptions of the system services. Written as a contractbetween client and contractor • Three types of requirement defined at this stage 1. Abstract functional requirements. The basic functions that the system must provide aredefined in an abstract way 2. System properties. Non-functional requirements for the system in general are defined (availability, performance) 3. Desirable and Undesirable characteristics. Unacceptable system behaviour is specified (what the system must not do)
System requirements definition (cont.) • Also, the system requirement must define overall organizationalobjectives which the system should meet. Example:Consider a system for an office building to provide for fire protection and intruder detection. A statement of objective might be: • Functional objectives • To provide a fire and intruder alarm system for the building which will provide internal and external warning of fire or unauthorized intrusion
System requirements problems: • Complex systems are usually developed to address wicked problems • Problems that are not fully understood; Example : earthquake Can tackle the problem after it has happened
The system design process 1 (cont.) • Partition requirements, organize requirements into related groups , HW Req. , SW Req. • Identify sub-systems, identify a set of sub-systems which collectively can meet the system requirements • Assign requirementsto sub-systems, causes particular problems when are integrated , happen when purchase any sub-system. • Specify sub-systemfunctionality and relationships between them • Define sub-system interfaces, if the interface has been agreed then a parallel sub-system development becomes possible.
System design 1 problems: • As a problems appear you often have to redo work done in earlier stages. • Solution : Using spiral process , each round on the spiral may addmore detailto design.
3- System modelling • An architectural model presents an abstract view of the sub-systems making up a system • May include major information flows between sub-systems • Usually presented as a block diagram • May identify different types of functional component in the model
Component types in alarm system • Sensor • Movement sensor, door sensor (detect door opening, and movement in the rooms) • Sirenصفارة انذار • Siren- warning when intruder is suspectedشك . • Communication • Telephone caller, make external calls to police. • Co-ordination • Alarm controller, control the operation of the system. • Interface • Voice synthesizer, a synthesize message giving the location of the intruder.
Functional system components • Sensor components • Actuator components (siren)المحرك • Computation components (Alarm Controller) • Communication components • Co-ordination components • Interface components
Functional System components • Sensor components • Collect information from the system’s environment e.g. radars in an air traffic control system • Computation components • Carry out some computations on an input to produce an output e.g. a floating point processor in a computer system • Communication components • Allow system components to communicate with each other e.g. network linking distributed computer • Interface components • Facilitate the interactions of other system components e.g. operator interface • All components are now usually software controlled
4- Sub-system development • Typically parallel projects developing the hardware, software and communications from scratch.الصفر • May involve some COTS (Commercial Off-The-Shelf) systems.. Bought for integration to system. • COTS usually cheaper than to develop special-purpose component • COTS may not meet the requirement exactly. (problem) • If COTS product available it is worth to expense your time of rethinking in the design.
Sub-system development (cont.) • When a problem is encountered in a system, a system need modification. • For systems that involve extensive hardware, making modification after manufacturing has started is very expensive… • Solution “Work arounds”that includes software change requirement because software is more flexible .
5- System Integration • The process of puttinghardware,software and people together to make a system • The system may be integrated using: 1- a “big bang approach”: all subsystems are integrated at the same time. 2- incremental integrated process: the sub-systems are integrated one at a time
System Integration cont… Incremental integrated process is the best approach (why??) because: • It reduce the cost of error location. In “big bang approach” the error may be from any of these subsystems. While in “incremental process” the errors are probably on the new subsystem or in theinteractionbetween the existing subsystem and the new subsystem. Incremental integrated process problem: • Interface problems between sub-systems are usually found at this stage (integration + testing) (Data flow( in / out ) at the boundary.)
6- System installation- problems • Environmental assumptions may be incorrect • May be human resistance to the introduction of a new system • May be physical installation problems (e.g. cabling problems) • Operator training has to be identified
System operation • Users may use the system in a way which isnot suitableby systemdesigners • May reveal problems in the interaction with other systems • Physical problems of incompatibility • Increased operator error rate because of inconsistent interfaces
7- System evolution • Large and complex systems have a long lifetime. They must evolve to meet changing requirements[ error in system or change environment] • Evolution is inherently costlybecause: • Changes must be analyzed from a technical and business perspective [after changing must get the same goal of the system] • Sub-systems interact [change in subsystem may affects on other subsystems]so problems can arise • As systems Age: System structure is corrupted as changes are made to it, so the cost of making changes increases • Existing systems which must be maintained are sometimes called legacy systems
8- System decommissioning • Taking the system out of service after its useful operational lifetime وقف التشغيل Regards to Hardware: • May require removal of materials (e.g. dangerous chemicals) which pollute the environment Regards to software: • May require data to be restructured and converted to be used in some other system
Organizations/people/systems • If you do not understand the organizational environment where a system is used, then the system is rejected
Systems and their environment • Systems are exist in an environment • The system is intended to make some changes in its environment, heating system changes its environment by increasing or decreasing its temperature. • Environment affects the functioning of the system e.g. system may require electrical supply from its environment
Human and organizational factors that affect the system design: • Process changes,does the system require changes to the work processes in the environment? If so, training is required. If so they may resist the introduction to the system. • Job changes, does the system de-skill the users in an environment or cause them to change the way they work? If so they may resist the introduction to the system. • Organizational changes,does the system change the political power structure in an organization? e.g. Those who know how to operate in a Complex system have a great deal of political power.
Organizational processes • The processes of systems engineering interact with procurement processesand theprocess of using and operating the system. Procurement/development/ operational processes
System procurement processes • procurement processes: is embedded within the client organization that willbuy andusethe system.
System procurement process (cont.) • This process concerned with: deciding on the best suppliers of that system and the best way for the organization to acquire a system to meet some need • Some system specification is usuallynecessary • You need a high level specification of what the system should do, in order to design or build (buy) a system development • The specification may allow you to buy a commercial off-the-shelf (COTS) system. Almost always cheaper than developing a system from scratch
System procurement process Issues • Requirementsmay have to be modified to match the capabilities of off-the-shelf components • The requirements specificationmay be part of the contract for the development of the system. • After the contractor to build the system has been selected, there is usually a contract negotiation periodfor further changes to the requirementsto be agreed upon,
Contractors and sub-contractors • The procurement of large hardware/software systems is usually based on some principal contractor • Sub-contracts are issued to other suppliers to supply parts of the system • Customer deals with the principal contractor and does not deal directly with sub-contractors
Organizational processes, Operational processes • Operational processes : the using of the system. • Operational processes should be designed to be flexible and should not force operations to be done in a particular way. • It is important that human operators can use their initiative if problems arise. • Example: • Operators of Air traffic control system follow specific processes when the aircraft enter and leave airspace, when they have to change height , speed.