5038/2009: The Electronic Society Systems Thinking, Systems Sciences & Systems Modelling.

Slides:



Advertisements
Similar presentations
Testing Relational Database
Advertisements

5038/2009: The Electronic Society Systems Thinking.
Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Systems.
Chapter 19: Network Management Business Data Communications, 4e.
The Architecture Design Process
Week 8 Implementation Design Alex Baker. Implementation Design System Design – Describes what the system should do Implementation Design – Describes what.
Unified Modeling (Part I) Overview of UML & Modeling
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
CS350/550 Software Engineering Lecture 1. Class Work The main part of the class is a practical software engineering project, in teams of 3-5 people There.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
Introduction to Systems Analysis and Design
Course Instructor: Aisha Azeem
CSC230 Software Design (Engineering)
Frequently asked questions about software engineering
Lecture 1.
Chapter 1 Introduction to Databases
Next lecture : The System System Engineering Basic Introduction System Engineering System Engineering II.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 1 Systems engineering 1.
Software Architecture premaster course 1.  Israa Mosatafa Islam  Neveen Adel Mohamed  Omnia Ibrahim Ahmed  Dr Hany Ammar 2.
Software Dependability CIS 376 Bruce R. Maxim UM-Dearborn.
Chapter 1- Introduction
Chapter 1- Introduction Lecture 1 Ready, fire, aim (the fast approach to software development). Ready, aim, aim, aim, aim... (the slow approach to software.
Databases From A to Boyce Codd. What is a database? It depends on your point of view. For Manovich, a database is a means of structuring information in.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
1 BTEC HNC Systems Support Castle College 2007/8 Systems Analysis Lecture 9 Introduction to Design.
What is Enterprise Architecture?
Chapter 1 Introduction to Simulation
3- System modelling An architectural model presents an abstract view of the sub-systems making up a system May include major information flows between.
SWE 316: Software Design and Architecture – Dr. Khalid Aljasser Objectives Lecture 11 : Frameworks SWE 316: Software Design and Architecture  To understand.
An Introduction to Software Architecture
CSE 303 – Software Design and Architecture
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 2Slide 1 Chapter 2 Computer-Based System Engineering As modified by Randy Smith.
1. 2 IMPORTANCE OF MANAGEMENT Some organizations have begun to ask their contractors to provide only project managers who have been certified as professionals.
Chapter 6 : Software Metrics
 Dr. Syed Noman Hasany.  Review of known methodologies  Analysis of software requirements  Real-time software  Software cost, quality, testing and.
OBJECT ORIENTED SYSTEM ANALYSIS AND DESIGN. COURSE OUTLINE The world of the Information Systems Analyst Approaches to System Development The Analyst as.
What are the main differences and commonalities between the IS and DA systems? How information is transferred between tasks: (i) IS it may be often achieved.
Databases From A to Boyce Codd. What is a database? It depends on your point of view. For Manovich, a database is a means of structuring information in.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
NAVEEN AGENT BASED SOFTWARE DEVELOPMENT. WHAT IS AN AGENT? A computer system capable of flexible, autonomous (problem-solving) action, situated in dynamic,
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Dr. Jana Jagodick Polytechnic of Namibia, 2012 Project Management Chapter 2 Project Management Cycle.
J1879 Robustness Validation Hand Book A Joint SAE, ZVEI, JSAE, AEC Automotive Electronics Robustness Validation Plan The current qualification and verification.
Software Engineering Principles. SE Principles Principles are statements describing desirable properties of the product and process.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
DISTRIBUTED COMPUTING. Computing? Computing is usually defined as the activity of using and improving computer technology, computer hardware and software.
Introduction to Earth Science Section 2 Section 2: Science as a Process Preview Key Ideas Behavior of Natural Systems Scientific Methods Scientific Measurements.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Foundations of Information Systems in Business. System ® System  A system is an interrelated set of business procedures used within one business unit.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
Smart Home Technologies
Chapter 4 – Requirements Engineering Lecture 1 The hardest part of the software task is arriving at a complete and consistent specification, and much of.
Modern Systems Analysis and Design Third Edition Chapter 2 Succeeding as a Systems Analyst 2.1.
Chapter 4 Requirements Engineering (1/3) Yonsei University 2 nd Semester, 2015 Sanghyun Park.
EVALUATION RESEARCH To know if Social programs, training programs, medical treatments, or other interventions work, we have to evaluate the outcomes systematically.
System A system is a set of elements and relationships which are different from relationships of the set or its elements to other elements or sets.
03/20/021 Spaceport Vision Team Members Organizations that contributed: Air Force NASA NCSS FAA Industry University Etc.
Systems and Systems Thinking 3a Foundations of Technology Mr. Barnes.
Sub-fields of computer science. Sub-fields of computer science.
CS 325: Software Engineering
Data and database administration
Chapter 4 – Requirements Engineering
Chapter 1- Introduction
Frequently asked questions about software engineering
An Introduction to Software Architecture
Outline Chapter 2 (cont) OS Design OS structure
Principles of Science and Systems
Chapter 5 Architectural Design.
Presentation transcript:

5038/2009: The Electronic Society Systems Thinking, Systems Sciences & Systems Modelling

Systems Thinking Systems, which perform functions and provide services, are complex assemblies and combinations of technological, human/social, economic, and policy components. How can we organize our understanding? How can model systems so that we can explore and reason about all of the interacting and conflicting components and requirements? How do systems fail? Systemic failure, component failure, individual culpability? Security examples.

What is a System? `` whole compounded of several parts or members’’ ``a set of interacting or interdependent components forming an integrated whole’’

Types and example Natural – Physical/chemical systems: a lot of the early ideas come from thermodynamics ; the biological cell ; – biological ecosystems Synthetic – An engine; a single computer; a(n) (inter)network; a battleship; a supply chain; … Of course, the boundaries between these categories are not sharp (e.g., What about the Gaia principle, or a decentralized economy operated by biological creatures, interconnected by a global communications network architecture with designed protocols?)

What goes into a system? Structure – components (building blocks) – Interconnectivity – Structural relationships (e.g. hierarchical subsytsems) – [ Agents, stakeholders ] Behaviour – Function: Input and output of whole Information, energy, material – Dynamics: how the system changes

The elephant outside the room Environment – Larger system within which the system of interest is embedded. Can’t think about everything at once: delimit boundary and have at most simple interactions across it. Note that the boundary is conceptual. It can be physically inside a part of a larger system.

The elephant sneezes Physics: isolated system has negligible interaction with environment. – ``the entropy of a thermally isolated system can only increase’’ (part of 2nd law of thermodynamics) – Even in physics, need models that allow for more interesting interactions with environment. For the systems we will be interested in, pretty much never the case that the environment is negligible. Instead, have to try to precisely delimit interaction with environment – Can be very difficult with modern systems.

Rear-Admiral Grace Hopper ``Life was simple before World War II. After that, we had systems.’’ Aside: Wrote the first compiler, to allow for the execution of a high-level programming language! One of the key players in the development of COBOL. Left us with the word ``bug’’ in computing and systems.

Systems Prehistory Of course, we had systems before WW2. Lots of thinkers had considered them. Physicists (e.g., Cournot, Gibbs), mathematicians (Wiener), engineers, biologists (Darwin), economists (Keynes), social-thinkers and philosophers, politicians, generals.

So what? In the last 100 years or so it has rapidly become possible and necessary to engineer more and more complex systems. For correct and optimal performance of the systems we use, we need to take into account more of the environment in our `model’ of these system. – E.g. designer of some access-control system for a computer network maybe should think in detail about user behaviour and social patterns.

Apollo Program Take-off; escape earth’s gravity; slingshot around earth; various separation phases; follow precise trajectory at precise speed to moon; separate; land; take off; dock; return to earth; keep highly-trained human occupants alive; only just enough fuel and energy; some, but minimal compute power; mission support; communications. Rocket > 2 million components on vehicle alone, from over suppliers. Command and Service Modules > ``With over 3 million components, a performance record of 99.9% would still leave 3,000 parts that could fail -- any one of which might result in the deaths of the crew.’’ Many more components left on the ground.

Systems Engineering How systems should be planned, designed, implemented, built, and maintained. Need to identify and manipulate the properties of the system as a whole. – May not be straightforward to do, even when we know the component properties. We’ll devote the next lecture to systems engineering. Advanced engineering requires modelling methods.

Systems Modelling Need ways to explore the consequences of decisions made about design and operation of systems, and of responses to changes in environment. Need models, rigorously defined (mathematical, logical, computational), and grounded in data to the greatest extent possible. Need to explore scenarios and predict in an honest fashion. Understand and model multiple stakeholder preferences, and figure-out how to combine. Analyze, visualize, optimize (or satisfice), where possible Try to get definite conclusions, but with all the assumptions about the system laid bare. – The opposite of fortune-telling.

The Ideal Systems Modeller is: A software engineer: requirements, ontologies, modules, classes, objects, interfaces, software engineering methods, UML diagrams, workflows etc. A statistician: collection and analysis of numerical data. Prediction of future based on past data and trends… A mathematician: dynamical systems theory (continuous, discrete), solutions of equations, numerical methods. … A decision-theorist: economic models, game theory, operations research… A social scientist: ethnography, psychology, criminology, management, law, politics. A scientist: physics, chemistry, biology, ecology,… An engineer: hardware, protocol knowledge, performance analysis, reliability and safety engineering A computer scientist: programs, simulations, protocols, interactions, agents, tools…. All at once, and able to communicate extremely effectively!

Reductionism A lot (but not all) of science tends to be reductionist: it has a focus on breaking systems down on increasingly small parts to figure out what they do. – Collective phenomena are known: Curie point of ferromagnetic materials. For systems, we need to understand how assemblies of simple parts behave together. Problem: it is not always easy to understand behaviour of whole when understand behaviour of parts (e.g. weather system), and with many mod. sys. don’t understand all parts. Does not mean that whole is more than the sum of the parts – Our model may have missed something – The `sum’ might not be as simple as we had thought – There is no such thing as magic!

Example of a Systems Modelling Methodology

Distributed Systems Definition of a Distributed System: – A collection of autonomous information-processing devices connected by a network supporting data transmissions between devices – Managed by software that is designed to support an integrated computing facility that delivers services to users and other systems Examples: the Internet; your home network; a bank’s account management systems, the Met Office’s network of sensors So, different levels of abstraction matter

More abstractly … The system has a boundary between itself and its environment The system itself consists in – A collection of locations – A collection of resources at each location – A collection of processes that execute at locations using the available resources The environment is represented stochastically – events begin incident upon the system according to a probability distribution.

A System Model R1R2…R1R2… processes manipulate resources events L1L1 L2L2 …

Example Boats entering a harbour: – Arrive from the sea (the environment) according to an exponential distribution (simple gives an arrival rate) – Locations: holding area; jetties – Resources: tugs, cranes, stevedores – Process: a boat itself, arrives from sea collects tugs, docks at a jetty, uses a crane, collects tugs, returns to sea

A Security Example The use of USB sticks by the employees of a major bank. USB sticks used for good reasons. But usage leads to a range of information security vulnerabilities. How to protect?

USB locations Home Client’s Office Office Transport Each location has different vulnerabilities, threats, and protection

The USB Model Process: lifecycle of a stick (cf. a boat) The stick accesses resources at the various locations; e.g., a port on computer (cf. tug) As the stick moves around the locations, it is subject to different threats. Examples? Thieves, for example, might be part of the environment. So, model arrival of a thief in the same train carriage of the stick using a probability distribution Likelihood of data loss depends on things like the probability stick’s owner used its encryption …

How to use the model? Run simulations to understand the consequences of different design choices: a simulation modelling tool that captures this is Core Gnosis, available from Use logical methods to reason about properties of the system. Don’t worry, this is beyond the scope of this course − involves heavy mathematical logic ….

Example How can data be lost from USB sticks: – Stick lost on train – Stick corrupted by malware on a home computer – Stick connected to client’s computer, other clients’ files accidently copied – … Solutions?

Encryption? Is this a good solution?

Yes, because if sticks are always encrypted, then there is very little risk of date being lost BUT …

No, because encryption significantly impedes productivity: – Typing passwords takes time – Have to find the find right stick – Passwords tend to be forgotten At clients’ premises, a forgotten password is very embarrassing, particularly in the City of London culture.

Trade-offs In fact, there is a trade-off between security (confidentiality) and productivity The nature of this trade-off can be analyzed using methods from economics The key idea is that of a utility function.

Utility (again; cf. Security lectures) In economics, utility theory is used to understand how agents use (expected) valuations of (expected) outcomes to make decisions/choices To use utility theory, it’s necessary to understand the problem in a fair degree of detail, but also to remember to stick with the level of abstraction that’s appropriate for what you’re trying to achieve ``A scientific theory should be as simple as possible, but no simpler.’’ – Can be abused by the lazy, but applies well to modelling.

So, identify which resources you care about Identify what else in the model affects their values Typically, there will be a trade-off between some of things you care about, such as confidentiality and productivity BUT, you might not care about all things to the same extent: e.g., different weightings for confidentiality and productivity

Shape of Utility Associated with each of confidentiality and productivity, and indeed cost/investment, might be a target level Targets can be missed both above and below

As manager, you might also care more about some of confidentiality, C, productivity, P, and investment, K, than the others. So the utility function gives different weightings Overall U(C, P, K) = w 1 f 1 (C) + w 2 f 2 (P) + w 3 f 3 (K) Each of C, P, K depends on the system itself Compare with Security notes

The can explore how the utility function changes as the system is reconfigured This approach used to explore the value of applying encryption to the USB sticks used by the bank’s employees

Conclusion of USB study Encryption is only justified − in terms of the trade-off between confidentiality, productivity, and cost − if the bank’s staff includes traitors who are deliberately trying to undermine its security In which case, they’ll find other ways anyway … Of course, different preferences, such as a strong preference for C over P, might produce different answers.

Modelling the Human and Technological Costs and Benefits of USB Memory Stick Security. Proc. WEIS In Managing Information Risk and the Economics of Security. M. Eric Johnson (editor), Springer, 2009: Proc. WEIS In Managing Information Risk and the Economics of Security. M. Eric Johnson (editor), Springer, 2009: Available from pdf Available from pdf