Software Engineering Chapter 2 Sociotechnical systems KuYaw Chang

  • Slides: 47
Download presentation
Software Engineering Chapter 2 Socio-technical systems Ku-Yaw Chang canseco@mail. dyu. edu. tw Assistant Professor

Software Engineering Chapter 2 Socio-technical systems Ku-Yaw Chang canseco@mail. dyu. edu. tw Assistant Professor Department of Computer Science and Information Engineering Da-Yeh University Ku-Yaw Chang Socio-technical Systems

Objectives Know what is meant by socio-technical system and understand the difference between a

Objectives Know what is meant by socio-technical system and understand the difference between a technical computerbased system and a socio-technical system Have been introduced to the concept of emergent system properties such as reliability, performance, safety and security Understand the activities that are involved in the systems engineering process Understand why the organizational context of a system affects its design and use Know what is meant by a ‘legacy system’, and why these systems are often critical to the operation of many business Ku-Yaw Chang Socio-technical Systems 2

Preamble What is a system? n n A purposeful collection of inter-related components that

Preamble What is a system? n n A purposeful collection of inter-related components that work together to achieve some objective. A system may include software, mechanical, electrical and electronic hardware and be operated by people. System components are dependent on other system components The properties and behavior of system components are inextricably inter-mingled Ku-Yaw Chang Socio-technical Systems 3

Preamble System categories n Technical computer-based systems Systems that include hardware and software but

Preamble System categories n Technical computer-based systems Systems that include hardware and software but where the operators and operational processes are not normally considered to be part of the system. The system is not selfaware. n Socio-technical systems Systems that include technical systems but also operational processes and people who use and interact with the technical system. Socio-technical systems are governed by organizational policies and rules. Ku-Yaw Chang Socio-technical Systems 4

Preamble Socio-technical system characteristics n Emergent properties Properties of the system of a whole

Preamble Socio-technical system characteristics n Emergent properties Properties of the system of a whole that depend on the system components and their relationships. n Non-deterministic They do not always produce the same output when presented with the same input because the system’s behavior is partially dependent on human operators. n Complex relationships with organizational objectives The extent to which the system supports organizational objectives does not just depend on the system itself. Ku-Yaw Chang Socio-technical Systems 5

Contents 2. 1 Emergent system properties 2. 2 System engineering 2. 3 Organizations, people

Contents 2. 1 Emergent system properties 2. 2 System engineering 2. 3 Organizations, people and computer systems 2. 4 Legacy systems 2. 5 Exercises Ku-Yaw Chang Socio-technical Systems 6

2. 1 Emergent system properties Properties of the system as a whole rather than

2. 1 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 n n a consequence of the relationships between system components only be assessed and measured once the components have been integrated into a system Ku-Yaw Chang Socio-technical Systems 7

Examples of emergent properties Volume n Total space occupied Reliability n n Depends on

Examples of emergent properties Volume n Total space occupied Reliability n n Depends on component reliability Unexpected interactions cause new failure Security n Ability to resist attack Reparability n How easy to fix a problem Usability n How easy to use the system Ku-Yaw Chang Socio-technical Systems 8

Types of emergent properties Functional emergent properties n All the parts of a system

Types of emergent properties Functional emergent properties n All the parts of a system work together to achieve some objective a bicycle has the functional property of being a transportation device once it has been assembled from its components. Non-functional emergent properties n Relate to the behavior of the system in its operational environment Reliability, performance, safety, and security n Critical for computer-based systems Failure to achieve some minimal defined level in these properties may make the system unusable. Ku-Yaw Chang Socio-technical Systems 9

Complexity of emergent properties Consider the property of system reliability n n Because of

Complexity of emergent properties Consider the property of system reliability n n Because of component inter-dependencies, faults can be propagated through the system. System failures often occur because of unforeseen inter-relationships between components. It is probably impossible to anticipate all possible component relationships. Software reliability measures may give a false picture of the system reliability. Ku-Yaw Chang Socio-technical Systems 10

Influences on reliability Hardware reliability n What is the probability of a hardware component

Influences on reliability Hardware reliability n What is the probability of a hardware component failing and how long does it take to repair that component? Software reliability n n 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 n How likely is it that the operator of a system will make an error? Ku-Yaw Chang Socio-technical Systems 11

Reliability relationships Hardware failure can generate spurious signals that are outside the range of

Reliability relationships Hardware failure can generate spurious signals that are outside the range of inputs expected by the software. Software errors can cause alarms to be activated which cause operator stress and lead to operator errors. The environment in which a system is installed can affect its reliability. Ku-Yaw Chang Socio-technical Systems 12

The ‘shall-not’ properties Properties such as performance and reliability can be measured. However, some

The ‘shall-not’ properties Properties such as performance and reliability can be measured. However, some properties are properties that the system should not exhibit n n Safety - the system should not behave in an unsafe way; Security - the system should not permit unauthorised use. Measuring or assessing these properties is very hard n Knowing a system is insecure only when someone breaks into it Ku-Yaw Chang Socio-technical Systems 13

Contents 2. 1 Emergent system properties 2. 2 System engineering 2. 3 Organizations, people

Contents 2. 1 Emergent system properties 2. 2 System engineering 2. 3 Organizations, people and computer systems 2. 4 Legacy systems 2. 5 Exercises Ku-Yaw Chang Socio-technical Systems 14

System engineering The activity of specifying, designing, implementing, validating, deploying and maintaining socio-technical systems

System engineering The activity of specifying, designing, implementing, validating, deploying and maintaining socio-technical systems Concerned with n n n Software Hardware System’s interactions with users and its environment Ku-Yaw Chang Socio-technical Systems 15

The systems engineering process Ku-Yaw Chang Socio-technical Systems 16

The systems engineering process Ku-Yaw Chang Socio-technical Systems 16

Important distinctions Limited scope for rework during system development n Little scope for iteration

Important distinctions Limited scope for rework during system development n Little scope for iteration between phases because hardware changes are very expensive Interdisciplinary involvement n n Inevitably involve engineers from different disciplines who must work together Different engineers use different terminology and conventions Ku-Yaw Chang Socio-technical Systems 17

Inter-disciplinary involvement Ku-Yaw Chang Socio-technical Systems 18

Inter-disciplinary involvement Ku-Yaw Chang Socio-technical Systems 18

2. 2. 1 System requirements definition Specify n n What the system should do

2. 2. 1 System requirements definition Specify n n What the system should do (its functions) Essential and desirable system properties Involve consultations with system customers/end-users Derive three types of requirement n Abstract functional requirements Basic functions at an abstract level n System properties Non-functional emergent system properties n Characteristics that the system must no exhibit Must not do vs. should do n Ku-Yaw Chang e. g. Too much information should not be presented to the controller Socio-technical Systems 19

2. 2. 1 System requirements definition To establish a set of overall objectives that

2. 2. 1 System requirements definition To establish a set of overall objectives that the system should meet n 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. n Organizational objectives 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. Ku-Yaw Chang Socio-technical Systems 20

2. 2. 1 System requirements definition Complex systems are usually developed to address wicked

2. 2. 1 System requirements definition Complex systems are usually developed to address wicked problems n n So many related entities that there is no definitive problem specification An extreme example Earthquake planning Ku-Yaw Chang Socio-technical Systems 21

2. 2. 2 System design How the system functionality is to be provided by

2. 2. 2 System design How the system functionality is to be provided by the components of the system n Partition requirements Analyze requirements and organize them into related groups n Identify sub-systems Individually or collectively meet the requirements n Assign requirements to sub-systems Never a clean match between requirements partitions and identified sub-systems n n Specify sub-system functionality Define sub-system interfaces Ku-Yaw Chang Socio-technical Systems 22

The system design process Double-ended arrows n A lot of feedback and iteration from

The system design process Double-ended arrows n A lot of feedback and iteration from one stage to another in the design process Ku-Yaw Chang Socio-technical Systems 23

Requirements and design Requirements affect design decisions and vice versa n In practice, the

Requirements and design Requirements affect design decisions and vice versa n In practice, the are inextricably linked Constraints posed by the existing systems may n n n Limit design choices These choices may be specified in the requirements Initial design may be necessary to structure the requirements. As you do design, you learn more about the requirements. Ku-Yaw Chang Socio-technical Systems 24

Spiral model of requirements/design Ku-Yaw Chang Socio-technical Systems 25

Spiral model of requirements/design Ku-Yaw Chang Socio-technical Systems 25

2. 2. 3 System modeling An architectural model n n n A set of

2. 2. 3 System modeling An architectural model n n n A set of components (sub-systems) and their relationships An abstract view of the sub-systems making up a system More appropriate to classify sub-systems according to their function Before making decisions about hardware/software trade-offs n Illustrated graphically and presented as a block diagram Be supplemented by brief descriptions of each subsystem May be used for all sizes of system Ku-Yaw Chang Socio-technical Systems 26

A simple burglar alarm system Ku-Yaw Chang Socio-technical Systems 27

A simple burglar alarm system Ku-Yaw Chang Socio-technical Systems 27

Sub-system description Ku-Yaw Chang Socio-technical Systems 28

Sub-system description Ku-Yaw Chang Socio-technical Systems 28

ATC system architecture Ku-Yaw Chang Socio-technical Systems 29

ATC system architecture Ku-Yaw Chang Socio-technical Systems 29

2. 2. 4 Sub-system development The implementation may involve starting n n Another system

2. 2. 4 Sub-system development The implementation may involve starting n n Another system engineering process A software process Commercial off-the-shelf (COTS) systems are bought for integration into the system n May reenter the design activity Usually developed in parallel n Problems cutting across sub-system boundaries are encountered A system modification must be made - changes in the software requirements Ku-Yaw Chang Socio-technical Systems 30

2. 2. 5 Systems integration Putting hardware, software and people together to make a

2. 2. 5 Systems integration Putting hardware, software and people together to make a complete system Two approaches n A ‘big bang’ approach All sub-systems are integrated at the same time n An incremental integration approach Sub-systems are integrated one at a time Best approach n n Impossible to finish all sub-systems at the same time Reduce the cost of error location An extensive program of system testing n n The interfaces between components The behavior of the system as a whole Ku-Yaw Chang Socio-technical Systems 31

2. 2. 6 System installation After completion, the system has to be installed in

2. 2. 6 System installation After completion, the system has to be installed in the customer’s environment n n n Environmental assumptions may be incorrect; May be human resistance to the introduction of a new system System may have to coexist with alternative systems for some time May be physical installation problems (e. g. cabling problems) Operator training has to be identified Ku-Yaw Chang Socio-technical Systems 32

2. 2. 7 System evolution Complex systems have a very long lifetime n n

2. 2. 7 System evolution Complex systems have a very long lifetime n n To correct errors To implement new requirements Evolution is inherently costly n n 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. Ku-Yaw Chang Socio-technical Systems 33

2. 2. 8 System decommissioning Taking the system out of service after its useful

2. 2. 8 System decommissioning Taking the system out of service after its useful operation lifetime n May require removal of materials (e. g. dangerous chemicals) which pollute the environment Should be planned for in the system design by encapsulation n May require data to be restructured and converted to be used in some other system Ku-Yaw Chang Socio-technical Systems 34

Contents 2. 1 Emergent system properties 2. 2 System engineering 2. 3 Organizations, people

Contents 2. 1 Emergent system properties 2. 2 System engineering 2. 3 Organizations, people and computer systems 2. 4 Legacy systems 2. 5 Exercises Ku-Yaw Chang Socio-technical Systems 35

Organizations, people and computer systems Socio-technical systems n n Enterprise systems to deliver some

Organizations, people and computer systems Socio-technical systems n n Enterprise systems to deliver some organizational/business goal Embedded in an organizational environment Need to understand its organizational environment Human and organizational factors n Process changes Require changes to the work processes? n Job changes De-skill the users or change the way they work? n Organizational changes Change the political power structure in an organization? Ku-Yaw Chang Socio-technical Systems 36

2. 3. 1 Organizational processes The development process interacts with n The procurement process

2. 3. 1 Organizational processes The development process interacts with n The procurement process Making decisions about n n n The best way to acquire a system The best suppliers The operational process Using the system for its intended purpose Ku-Yaw Chang Socio-technical Systems 37

The system procurement process Large complex systems n a mixture of off-the-shelf and specially

The system procurement process Large complex systems n a mixture of off-the-shelf and specially built components Important points n Off-the-shelf components do not usually match requirements exactly May have to modify the requirements n The specification of requirements acts as the basis of a contract for a specially built system A legal and technical document n After a contractor has been selected, there is a contract negotiation period Ku-Yaw Chang Socio-technical Systems 38

The system procurement process Ku-Yaw Chang Socio-technical Systems 39

The system procurement process Ku-Yaw Chang Socio-technical Systems 39

Contents 2. 1 Emergent system properties 2. 2 System engineering 2. 3 Organizations, people

Contents 2. 1 Emergent system properties 2. 2 System engineering 2. 3 Organizations, people and computer systems 2. 4 Legacy systems 2. 5 Exercises Ku-Yaw Chang Socio-technical Systems 40

Legacy systems Large computer-based systems usually have a long lifetime n n n 20

Legacy systems Large computer-based systems usually have a long lifetime n n n 20 years for military systems Air traffic control (ATC) relies on software and operational processes that were developed in the 1960 s and 1970 s Too expensive and too risky to discard such business critical systems after a few years of use Their development continues throughout their life with changes n n Requirements Operating platforms Ku-Yaw Chang Socio-technical Systems 41

Legacy systems Socio-technical computer-based systems that developed in the past using older or obsolete

Legacy systems Socio-technical computer-based systems that developed in the past using older or obsolete technology n n Hardware and software Legacy processes and procedures Often business-critical systems n n n Too risky to replace them e. g. bank customer accounting system e. g. aircraft maintenance system Constrain new business processes and consume a high proportion of company budgets Ku-Yaw Chang Socio-technical Systems 42

Legacy system components Ku-Yaw Chang Socio-technical Systems 43

Legacy system components Ku-Yaw Chang Socio-technical Systems 43

Layered model of a legacy system Ku-Yaw Chang Socio-technical Systems 44

Layered model of a legacy system Ku-Yaw Chang Socio-technical Systems 44

Contents 2. 1 Emergent system properties 2. 2 System engineering 2. 3 Organizations, people

Contents 2. 1 Emergent system properties 2. 2 System engineering 2. 3 Organizations, people and computer systems 2. 4 Legacy systems 2. 5 Exercises Ku-Yaw Chang Socio-technical Systems 45

Exercises 2. 4 2. 6 Ku-Yaw Chang Socio-technical Systems 46

Exercises 2. 4 2. 6 Ku-Yaw Chang Socio-technical Systems 46

The End Ku-Yaw Chang Socio-technical Systems

The End Ku-Yaw Chang Socio-technical Systems