Socio-technical
Systems
IS301 – Software Engineering
Lecture # 2 part 2– 2004-09-01
M. E. Kabay, PhD, CISSP
M. E. Kabay, PhD, CISSP
Assoc. Prof. Information Assurance
Division of Business & Management, Norwich University
mailto:[email protected]
V: 802.479.7937
1
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Objectives
 To explain what a socio-technical system is
and the distinction between this and a
computer-based system
 To introduce the concept of emergent
system properties such as reliability and
security
 To explain system engineering and system
procurement processes
 To explain why the organizational context of
a system affects its design and use
 To discuss legacy systems and why these
are critical to many businesses
2
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Topics covered
 Emergent system properties
 Systems engineering
 Organizations, people and computer systems
 Legacy systems
3
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
What is a system?
 A purposeful collection of inter-related
components working together to achieve 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
 The properties and behavior of system
components are inextricably inter-mingled
4
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
System categories
 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 self-aware.
 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.
5
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Socio-technical system
characteristics



6
Emergent properties
 Properties of the system of a whole that depend
on the system components and their
relationships.
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.
Complex relationships with organizational objectives
 The extent to which the system supports
organizational objectives does not just depend
on the system itself.
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Emergent 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 of
the relationships between system
components
 They can therefore only be assessed and
measured once the components have been
integrated into a system
7
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Examples of emergent
properties
8
P ro p er ty
De scr ip tion
Vo lum e
T he vo lum e of a sys te m ( th e total spac e occup ie d) va ries depend ing on how the
co m ponen t as sem bli es are arranged and connec ted .
R elia bi lit y
S ys tem re lia bi lit y depends on c om ponen t reli ab ilit y bu t un e xpec ted in te ra ction s c an
cau se new type s o f fa il ure a nd the refor e a ff ec t the r eli ab il ity of t he sys te m .
S ecu rit y
T he secu rit y o f the sy st em (it s ab il ity t o res ist a tt ac k) is a co m plex proper ty t ha t
canno t be eas il y m e asu red . A tt ack s m ay be dev ised t ha t w er e no t a nticip at ed by t he
sy st em d e signe rs and so m ay de fea t bui lt-i n safegua rds .
R epa irab ilit y
T hi s p rope rt y refl ec ts how easy it is t o fi x a p rob lem w it h t he sys tem once it has been
disc over ed. I t depends on b ei ng ab le t o d iagno se the p rob lem , acce ss the c om ponen ts
tha t a re f au lt y and m od ify or r ep lace t hese co m ponen ts .
U sab il ity
T hi s p rope rt y refl ec ts how easy it is t o u se th e sys tem . It depend s on the te chn ica l
sy st em c ompon e nts, it s ope rator s and it s ope rati ng env ir on m en t.
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Types of emergent property
 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.
 Non-functional emergent properties
 Examples are reliability, performance,
safety, and security. These relate to the
behavior of the system in its operational
environment. They are often critical for
computer-based systems as failure to
achieve some minimal defined level in these
properties may make the system unusable.
9
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
System reliability
engineering
 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.
10
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Influences on reliability
 Hardware reliability
 What is the probability of a hardware
component failing and how long does it take
to repair that 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?
11
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
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.
12
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
The ‘shall-not’ properties
 Properties such as performance and
reliability can be measured.
 However, some properties are 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.
 Measuring or assessing these properties is
very hard.
13
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Systems engineering
 Specifying, designing, implementing,
validating, deploying and maintaining sociotechnical systems.
 Concerned with the services provided by the
system, constraints on its construction and
operation and the ways in which it is used.
14
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
The system engineering
process


15
Usually follows a ‘waterfall’ model because of the
need for parallel development of different parts of the
system
 Little scope for iteration between phases
because hardware changes are very expensive.
Software may have to compensate for hardware
problems.
Inevitably involves engineers from different
disciplines who 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 fulfill.
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
The systems engineering
process
16
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Inter-disciplinary
involvement
17
Soft w ar e
Elec tr onic
Mec ha nica l
engineer ing
engineer ing
engineer ing
St ruct ur al
AT C syst ems
User inter f ace
engineer ing
engineer ing
design
Ci vil
Elec tr ical
engineer ing
engineer ing
Ar chitec tur e
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
System requirements
definition
 Three types of requirement defined at this
stage
Abstract functional requirements. System
functions are defined in an abstract way;
System properties. Non-functional
requirements for the system in general are
defined;
Undesirable characteristics. Unacceptable
system behavior is specified.
 Should also define overall organizational
objectives for the system.
18
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
System objectives
 Should define why a system is being
procured for a particular environment.
 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.
 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.
19
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
System requirements
problems
 Complex systems are usually developed to
address wicked problems
Problems that are not fully understood;
Changing as the system is being specified.
 Must anticipate hardware/communications
developments over the lifetime of the system.
 Hard to define non-functional requirements
(particularly) without knowing the
component structure of the system.
20
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
The system design process
 Partition requirements
 Organize requirements into related groups.
 Identify sub-systems
 Identify a set of sub-systems which
collectively can meet the system
requirements.
 Assign requirements to sub-systems
 Causes particular problems when COTS are
integrated.
 Specify sub-system functionality.
 Define sub-system interfaces
 Critical activity for parallel sub-system
development.
21
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
The system design process
22
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
System design problems
 Requirements partitioning to hardware,
software and human components may involve
a lot of negotiation.
 Difficult design problems are often assumed
to be readily solved using software.
 Hardware platforms may be inappropriate for
software requirements so software must
compensate for this.
23
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Requirements and design
 Requirements engineering and system
design are inextricably linked.
 Constraints posed by the system’s
environment and other systems limit design
choices so the actual design to be used may
be a requirement.
 Initial design may be necessary to structure
the requirements.
 As you do design, you learn more about the
requirements.
24
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Spiral model of
requirements/design
25
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
System modeling
 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
26
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Burglar alarm system
27
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Sub-system description
28
Su b-sy stem
D escr iption
M o vem en t s en sors
D ete c ts mo ve m en t in th e room s m on it or ed by th e sys tem
D oo r se nso rs
D ete c ts d oo r op en ing in th e e xtern al do ors o f the bu ildin g
A la rm co ntro ller
C o ntro ls t he op eration of t he s ystem
S iren
E m its an a u dib le w a rn in g wh en an intru de r is s usp ec ted
V oice sy nth esize r
S yn th esiz es a v oice m essage g iv in g the lo ca tio n o f the s usp ec ted in tru de r
Te lep h on e c a ll er
M a ke s ex tern al ca lls t o n otify s ecu rity, th e p olice , etc.
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
ATC system architecture
29
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Sub-system development




30
Typically parallel projects developing the
hardware, software and communications.
May involve some COTS (Commercial Off-the-Shelf)
systems procurement.
Lack of communication across implementation
teams.
Bureaucratic and slow mechanism for
proposing system changes means that the
development schedule may be extended because of
the need for rework.
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
System integration
 The process of putting hardware, software
and people together to make a system.
 Should be tackled incrementally so that subsystems are integrated one at a time.
 Interface problems between sub-systems are
usually found at this stage.
 May be problems with uncoordinated
deliveries of system components.
31
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
System installation
 After completion, the system has to be installed
in the customer’s environment
 Environmental assumptions may be
incorrect;
 May be human resistance to the introduction
of 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.
32
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
System evolution
 Large systems have a long lifetime. They must
evolve to meet changing requirements.
 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.
33
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
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
Should be planned for in the system
design by encapsulation.
 May require data to be restructured and
converted to be used in some other system.
34
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Organizations, people &
systems
 Socio-technical systems are organizational
systems intended to help deliver some
organizational or business goal.
 If you do not understand the organizational
environment where a system is used, the
system is less likely to meet the real needs of
the business and its users.
35
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Human and organizational
factors
 Process changes
 Does the system require changes to the work
processes in the environment?
 Job changes
 Does the system de-skill the users in an
environment or cause them to change the way
they work?
 Organizational changes
 Does the system change the political power
structure in an organization?
36
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Organizational processes
 The processes of systems engineering overlap
and interact with organizational procurement
processes.
 Operational processes are the processes
involved in using the system for its intended
purpose. For new systems, these have to be
defined as part of the system design.
 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.
37
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Procurement/development
processes
38
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
System procurement



39
Acquiring a system for an organization to meet some
need
Some system specification and architectural design
is usually necessary before procurement
 You need a specification to let a contract for
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
Large complex systems usually consist of a mix of
off the shelf and specially designed components. The
procurement processes for these different types of
component are usually different.
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
The system procurement
process
40
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
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
to agree changes after the contractor to build
a system has been selected.
41
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Contractors and subcontractors
 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 liases with the principal contractor
and does not deal directly with subcontractors.
42
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Contractor/Sub-contractor
model
Syst em
custom er
Pr incipa l
contr act or
Subc ont r act or 1
43
Subc ont r act or 2
Subc ont r act or 3
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Legacy systems
 Socio-technical systems that have been
developed using old or obsolete technology.
 Crucial to the operation of a business and it is
often too risky to discard these systems
 Bank customer accounting system;
 Aircraft maintenance system.
 Legacy systems constrain new business
processes and consume a high proportion of
company budgets.
44
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Legacy systems
relationships
45
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Legacy system components






46
Hardware - may be obsolete mainframe hardware.
Support software - may rely on support software from
suppliers who are no longer in business.
Application software - may be written in obsolete
programming languages.
Application data - often incomplete and inconsistent.
Business processes - may be constrained by
software structure and functionality.
Business policies and rules - may be implicit and
embedded in the system software.
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Socio-technical systems
Soci o-t ec hni cal syst e m
Business processes
Applic ation soft war e
Support soft war e
Har dwar e
47
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Key points



48
Socio-technical systems include computer hardware,
software and people and are designed to meet some
business goal.
Emergent properties are properties that are characteristic
of the system as a whole and not its component parts.
The systems engineering process includes specification,
design, development, integration and testing. System
integration is particularly critical.
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Key points
 Human and organizational factors have a
significant effect on the operation of sociotechnical systems.
 There are complex interactions between the
processes of system procurement,
development and operation.
 A legacy system is an old system that
continues to provide essential services.
 Legacy systems include business
processes, application software, support
software and system hardware.
49
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Homework
 REQUIRED
By Wednesday 8 Sep 2004, for 10 points (2
points each), submit printed responses to
questions
2.1, 2.2, 2.4, 2.6 & 2.11
 OPTIONAL
By Wednesday 15 Sep 2004, for 1 extra
point each, you may submit answers to
questions
2.3, 2.5 or 2.7.
50
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
DISCUSSION
51
Notes content copyright © 2004 Ian Sommerville. NU-specific content © 2004 M. E. Kabay. All rights reserved.
Descargar

Socio-technical Systems