An Introduction to Systems

Similar documents
Unit 7 Data analysis and design

Principles of Public Speaking

TABLE OF CONTENTS TABLE OF CONTENTS COVER PAGE HALAMAN PENGESAHAN PERNYATAAN NASKAH SOAL TUGAS AKHIR ACKNOWLEDGEMENT FOREWORD

Guide to Teaching Computer Science

Rotary Club of Portsmouth

Knowledge-Based - Systems

IBM Software Group. Mastering Requirements Management with Use Cases Module 6: Define the System

Advanced Grammar in Use

Section 3.4. Logframe Module. This module will help you understand and use the logical framework in project design and proposal writing.

SPRING GROVE AREA SCHOOL DISTRICT

A Context-Driven Use Case Creation Process for Specifying Automotive Driver Assistance Systems

Identifying Novice Difficulties in Object Oriented Design

PROCESS USE CASES: USE CASES IDENTIFICATION

Syllabus of the Course Skills for the Tourism Industry

Different Requirements Gathering Techniques and Issues. Javaria Mushtaq

Problem Solving for Success Handbook. Solve the Problem Sustain the Solution Celebrate Success

A R "! I,,, !~ii ii! A ow ' r.-ii ' i ' JA' V5, 9. MiN, ;

Implementing a tool to Support KAOS-Beta Process Model Using EPF

Knowledge management styles and performance: a knowledge space model from both theoretical and empirical perspectives

MODULE 4 Data Collection and Hypothesis Development. Trainer Outline

Designing a Rubric to Assess the Modelling Phase of Student Design Projects in Upper Year Engineering Courses

IMPROVING STUDENTS READING COMPREHENSION BY IMPLEMENTING RECIPROCAL TEACHING (A

content First Introductory book to cover CAPM First to differentiate expected and required returns First to discuss the intrinsic value of stocks

USA GYMNASTICS ATHLETE & COACH SELECTION PROCEDURES 2017 WORLD CHAMPIONSHIPS Pesaro, ITALY RHYTHMIC

IMPROVING STUDENTS SPEAKING SKILL THROUGH

International Series in Operations Research & Management Science

Accounting 380K.6 Accounting and Control in Nonprofit Organizations (#02705) Spring 2013 Professors Michael H. Granof and Gretchen Charrier

Honors Mathematics. Introduction and Definition of Honors Mathematics

Course Law Enforcement II. Unit I Careers in Law Enforcement

MASTER S THESIS GUIDE MASTER S PROGRAMME IN COMMUNICATION SCIENCE

MEE 6501, Advanced Air Quality Control Course Syllabus. Course Description. Course Textbook. Course Learning Outcomes. Credits.

Agent-Based Software Engineering

Major Milestones, Team Activities, and Individual Deliverables

Economics 201 Principles of Microeconomics Fall 2010 MWF 10:00 10:50am 160 Bryan Building

S T A T 251 C o u r s e S y l l a b u s I n t r o d u c t i o n t o p r o b a b i l i t y

Practice Examination IREB

CRC cards to support the development and maintenance of product configuration systems

Field Experience and Internship Handbook Master of Education in Educational Leadership Program

ECE-492 SENIOR ADVANCED DESIGN PROJECT

Rules of Procedure for Approval of Law Schools

Faculty Athletics Committee Annual Report to the Faculty Council September 2014

BENG Simulation Modeling of Biological Systems. BENG 5613 Syllabus: Page 1 of 9. SPECIAL NOTE No. 1:

School of Basic Biomedical Sciences College of Medicine. M.D./Ph.D PROGRAM ACADEMIC POLICIES AND PROCEDURES

For information only, correct responses are listed in the chart below. Question Number. Correct Response

Marketing Management

CERTIFIED PROJECT MANAGEMENT SPECIALIST (CPMS) STUDY GUIDE

Business Students. AACSB Accredited Business Programs

City University of Hong Kong Course Syllabus. offered by School of Law with effect from Semester A 2015/16

ONG KONG OUTLINING YOUR SUCCESS SIDLEY S INTERN AND TRAINEE SOLICITOR PROGRAM

Knowledge Elicitation Tool Classification. Janet E. Burge. Artificial Intelligence Research Group. Worcester Polytechnic Institute

HDR Presentation of Thesis Procedures pro-030 Version: 2.01

YMCA SCHOOL AGE CHILD CARE PROGRAM PLAN

Specification of the Verity Learning Companion and Self-Assessment Tool

foundations in accountancy (FIA) Preparatory Course for ACCA - Diploma in Accounting and Business

Classify: by elimination Road signs

Introduction to CRC Cards

Background Information. Instructions. Problem Statement. HOMEWORK INSTRUCTIONS Homework #3 Higher Education Salary Problem

THE INFLUENCE OF COOPERATIVE WRITING TECHNIQUE TO TEACH WRITING SKILL VIEWED FROM STUDENTS CREATIVITY

Programme Specification. MSc in International Real Estate

Practical Research. Planning and Design. Paul D. Leedy. Jeanne Ellis Ormrod. Upper Saddle River, New Jersey Columbus, Ohio

PRINCE2 Practitioner Certification Exam Training - Brochure

CHALLENGES FACING DEVELOPMENT OF STRATEGIC PLANS IN PUBLIC SECONDARY SCHOOLS IN MWINGI CENTRAL DISTRICT, KENYA

Simulation in Maritime Education and Training

ACTL5103 Stochastic Modelling For Actuaries. Course Outline Semester 2, 2014

PROFESSIONAL TREATMENT OF TEACHERS AND STUDENT ACADEMIC ACHIEVEMENT. James B. Chapman. Dissertation submitted to the Faculty of the Virginia

School Inspection in Hesse/Germany

Criterion Met? Primary Supporting Y N Reading Street Comprehensive. Publisher Citations

Pragmatic Use Case Writing

Visual CP Representation of Knowledge

University of Exeter College of Humanities. Assessment Procedures 2010/11

Controlled vocabulary

Radius STEM Readiness TM

Lecture Notes on Mathematical Olympiad Courses

AST Introduction to Solar Systems Astronomy

Evolutive Neural Net Fuzzy Filtering: Basic Description

Introduction to Modeling and Simulation. Conceptual Modeling. OSMAN BALCI Professor

Diploma in Library and Information Science (Part-Time) - SH220

KUTZTOWN UNIVERSITY KUTZTOWN, PENNSYLVANIA COE COURSE SYLLABUS TEMPLATE

Abstractions and the Brain

Including the Microsoft Solution Framework as an agile method into the V-Modell XT

Southern Wesleyan University 2017 Winter Graduation Exercises Information for Graduates and Guests (Updated 09/14/2017)

83 Fellows certified in 2016! Currently 161 Fellows registered Global Online Fellowship In Head & Neck Surgery and Oncology

Green Belt Curriculum (This workshop can also be conducted on-site, subject to price change and number of participants)

An Interactive Intelligent Language Tutor Over The Internet

Exemplar Grade 9 Reading Test Questions

Montfort del Rosario School of Architecture and Design AR 2204 Architectural Design II Semester 2/2015. Project II Performing Arts Learning Center

Availability of Grants Largely Offset Tuition Increases for Low-Income Students, U.S. Report Says

City University of Hong Kong Course Syllabus. offered by Department of Architecture and Civil Engineering with effect from Semester A 2017/18

PH.D. IN COMPUTER SCIENCE PROGRAM (POST M.S.)

CRV Crew Training Theory Module Workbook. New Zealand Search and Rescue

10.2. Behavior models

Visit us at:

Instructor: Matthew Wickes Kilgore Office: ES 310

Python Machine Learning

Prentice Hall Literature: Timeless Voices, Timeless Themes Gold 2000 Correlated to Nebraska Reading/Writing Standards, (Grade 9)

DIGITAL GAMING & INTERACTIVE MEDIA BACHELOR S DEGREE. Junior Year. Summer (Bridge Quarter) Fall Winter Spring GAME Credits.

LEGO MINDSTORMS Education EV3 Coding Activities

Section I: The Nature of Inquiry

UNIVERSITY OF SOUTHERN QUEENSLAND

Cambridge NATIONALS. Creative imedia Level 1/2. UNIT R081 - Pre-Production Skills DELIVERY GUIDE

Transcription:

An Introduction to Systems Second edition Mark Lejk and David Deeks Addison-Wesley An imprint of Pearson Education Harlow, England London New York Reading, Massachusetts San Francisco Toronto Don Mills, Ontario Sydney Tokyo Singapore Hong Kong Seoul Taipei Cape Town Madrid Mexico City Amsterdam Munich Paris Milan

Contents Foreword xv Acknowledgements xvii Introduction 1 Part 1 The systems development environment 3 1 Setting the scene 5 1.1 Introduction 5 1.2 Techniques, tools, methods, strategies 6 1.2.1 A hierarchy 6 1.2.2 Techniques 6 1.2.3 Tools 6 1.2.4 Methods 7 1.2.5 Strategies 8 1.3 Approaches to systems development 9 1.3.1 Explaining the term 'approaches' 9 1.3.2 Approaches covered by this book 9 1.3.3 Approaches not covered by this book 11 1.4 More fundamentals 14 1.4.1 Prototyping 14 1.4.2 CASE (computer-aided software engineering) tools 19 1.4.3 Data and information 21 1.5. Making complex choices 24 1.5.1 Introducing the weighted matrix 24 1.5.2 A simple weighted matrix example 24 1.5.3 Commercial use of weighted matrices 26 1.6 Communication is the key 28 1.6.1 Why communication is so important 28 1.6.2 Communication skills ' 28 1.6.3 Ongoing involvement with users 29 1.7 Systems analysis principles 30 This chapter... 30 Further reading 30 Web addresses worth a visit 31

vi CONTENTS 2 Managing a systems development project 32 2.1 The role of the systems analyst 32 2.1.1 Background 32 2.1.2 Personal qualities 32 2.2 Planning, control, progress 33 2.2.1 Working to a deadline 33 2.2.2 Balancing thoroughness and time 33 2.2.3 Methods for project control 34 2.2.4 The need for clear objectives 34 2.3 Establishing what you are being asked to achieve 35 2.3.1 The theory of 'Management By Objectives' (MBO) 35 2.3.2 The role of objectives 35 2.3.3 The management of objectives 36 2.3.4 Tasks and roles 38 2.4 Getting organised 39 2.4.1 The difference between a group and a team 39 2.4.2 How to turn a group into a team 39 2.5 Controlling it all 40 2.5.1 Introducing project scheduling 40 2.5.2 How to go about it 41 2.5.3 Scheduling project teams 45 This chapter... 45 A useful exercise 45 Further reading 46 Part 2 Structured systems analysis techniques 47 3 Spray and tree diagrams 49 3.1 Why spray and tree diagrams? 49 3.2 Spray diagrams (the 'controlled brainstorm') 50 3.3 Tree diagrams 51 3.3.1 Drawing one 51 3.3.2 More tree diagram applications 53 This chapter... 55 Useful exercises 55 Further reading 55 Web address worth a visit 55 4 Introducing data flow diagrams (DFDs) 56 4.1 Physical and logical views 56 4.1.1 An innate ability 56 4.1.2 Applying relevant information 57 4.2 Document flow diagrams 58 4.2.1 A predecessor of DFDs 58 4.2.2 Document flows and agencies 58

CONTENTS vii 4.2.3 Using a document flow to improve a system 59 4.3 Introducing data flow diagrams (DFDs) 60 4.3.1 A more powerful technique 60 4.3.2 DFDs and the two views 60 4.3.3 DFDs and the four stages 61 4.4 Some first DFD examples 61 4.4.1 What you are doing at the moment 61 4.4.2 Three ways of communicating 62 4.4.3 One logical happening 63 4.5 DFD notation 63 4.5.1 Many conventions, four common elements 63 4.5.2 Not to be confused with flowcharts 64 4.5.3 The four elements explained 64 4.5.4 Some other points to note 66 4.6 DFD levelling 67 4.7 A worked example - the stock control system 68 4.7.1 Where to begin 68 4.7.2 The document flow diagram 69 4.7.3 The context diagram 70 4.7.4 The DFDs 70 4.8 Two more examples of DFDs 74 4.8.1 The hairdressing salon 74 4.8.2 The integrated accounting system 76 This chapter... 77 Useful exercises 78 Further reading 78 Web addresses worth a visit 78 5 Creating DFDs 79 5.1 From theory to practice 79 5.1.1 Unreal and artificial 79 5.1.2 Context diagrams in context 79 5.1.3 Functional areas and processes 80 5.2 Example 1 - the boat building company 80 5.2.1 The scenario 80 5.2.2 Initial attempt at current level 1 physical DFD 81 5.2.3 Second version of DFD - 'one process per functional area' 82 5.2.4 Level 2 DFDs 83 5.3 Example 2 - the student assessment system 86 5.3.1 The scenario 86 5.3.2 Initial discussion 88 5.3.3 Initial attempt at current physical DFDs 88 5.4 Further decomposition? 91 5.5 When is a level 2 a level 1, etc.? 92

viii CONTENTS 5.6 A reminder about 'time' 94 This chapter... 94 A useful exercise 94 Further reading 95 Web addresses worth a visit 95 6 Specifying processes 96 6.1 Introduction 96 6.1.1 Reaching the bottom level 96 6.1.2 Precise, accurate, unambiguous and complete 96 6.2 The problem with ordinary English 97 6.3 Structured English 97 6.3.1 What it is 97 6.3.2 Sequence 98 6.3.3 Selection 98 6.3.4 Iteration 99 6.3.5 Variations on structured English 100 6.4 Decision tables 101 6.4.1 What they are 101 6.4.2 Limited entry decision tables 102 6.4.3 Extended entry decision tables 103 6.4.4 Mixed entry decision tables 104 6.5 Decision trees 105 6.6 A worked example - the end-of-year assessment system 106 6.6.1 Background 106 6.6.2 Representing the narrative description 107 This chapter... Ill A useful exercise 111 Further reading 111 Web address worth a visit 111 7 Entity modelling 112 7.1 Processes and data 112 7.2 Entities and attributes 113 7.2.1 Entities 113 7.2.2 Attributes 113 7.2.3 Selecting entities 114 7.3 Entity relationships 115 7.3.1 Identifying relationships 115 7.3.2 Degrees of relationship 117 7.3.3 Optionality 118 7.3.4 Entities and entity occurrences 121 7.3.5 Further examples 121 7.3.6 Many-to-many relationships 122 7.3.7 Multiple relationships 124

CONTENTS ix 7.3.8 Exclusive relationships 125 7.3.9 Supertypes and subtypes 125 7.4 Building an entity-model 127 7.4.1 The example 127 7.4.2 Selecting entities 127 7.4.3 Identifying relationships between entities 127 7.4.4 Drawing the relationships 127 7.4.5 Completing the entity model 128 7.5 Further examples 128 This chapter... 130 Useful exercises 131 Further reading 132 Web addresses worth a visit 132 8 Normalisation 133 8.1 Introduction 133 8.2 What is a 'relationship'? 133 8.2.1 The entity model 133 8.2.2 Computer system relationships 134 8.3 Normalisation of documents 136 8.3.1 Introduction 136 8.3.2 The student transcript 136 8.3.3 The module class list 144 8.3.4 Combining the student transcript and class list 146 8.4 Normalisation and relational data analysis 147 8.5 Normalisation of tables of data 148 8.6 Composite keys 150 8.6.1 Like a compound key - but not quite 150 8.6.2 The tutor group class list 151 8.6.3 Normalising the tutor group class list 152 8.7 Combining the 3NF entity models 154 8.8 Comparing the 3NF entity model with the logical entity model 155 8.8.1 Aiming for the definitive entity model 155 8.8.2 The entity model before normalisation. 156 8.8.3 Combining the two views 157 This chapter... 158 A useful exercise 158 Further reading 158 Web addresses worth a visit 158 9 Logicalisation of DFDs 159 9.1 Introduction 159 9.1.1 Returning to DFDs 159 9.1.2 Why logicalise? 160 9.1.3 Business Process Re-engineering (BPR) 160

x CONTENTS 9.2 Logicalisation step by step 161 9.2.1 Guidelines 161 9.2.2 Example 1 - the student assessment system 162 9.2.3 Example 2 - Marine Construction 170 9.3 Conclusion 174 This chapter... 175 A useful exercise 175 Further reading 175 Web addresses worth a visit 175 10 Developing the required system 176 10.1 Introduction 176 10.1.1 Learning techniques 176 10.1.2 Putting techniques into practice 176 10.2 The existing student assessment system 177 10.2.1 The scenario 177 10.2.2 Current physical DFDs 179 10.2.3 Current entity model 183 10.2.4 Current logical DFD 183 10.3 The requirements of the new student assessment system 184 10.4 The required system 184 10.4.1 The required entity model 184 10.4.2 The required DFD 185 10.5 What is missing? 186 10.5.1 No maintenance 186 10.5.2 No alternatives 187 This chapter... 187 A useful exercise 188 Further reading 188 Web address worth a visit 188 11 The effect of time 189 11.1 11.2 11.3 11.4 11.5 Introduction Time and the data model 11.2.1 The possible effects 11.2.2 The vehicle breakdown and rescue system Time and the DFD Events 11.4.1 What is an event? 11.4.2 Finding events in DFDs 11.4.3 Types of event Entity life histories (ELHs) 11.5.1 11.5.2 11.5.3 What an ELH is Drawing an ELH The entity/event matrix 189 189 189 190 192 192 192 193 194 194 194 195 199

CONTENTS xi 11.5.4 Creating an ELH by further analysis of the entity/event matrix 11.5.5 The process/event matrix 11.5.6 State indicators and the control of processes 11.6 State transition diagrams 11.7 Conclusion This chapter... A useful exercise Further reading Web address worth a visit 201 206 209 210 211 211 212 212 212 Part 3 Process Improvement for Strategic Objectives (PISO) 213 12 Introducing PISO 215 12.1 A new development 215 12.1.1 Origins 215 12.1.2 Like BPR, but... 215 12.1.3 Views, objectives and stakeholders 217 12.1.4 A new rationale for DFD logicalisation 218 12.2 'Before and after' PISO examples 218 12.2.1 The effect of the strategic objective 218 12.2.2 The Pontefract General Infirmary example 220 12.2.3 The Marine Construction example 221 12.3 The PISO stages and steps 222 12.4 The PISO steps that use DFDs 224 12.5 PISO and 'green field' systems development 225 This chapter... 225 A useful exercise 225 Further reading 226 Web address worth a visit 226 13 PISO and DFDs 227 13.1 Reminders 227 13.1.1 The PISO steps that use DFDs 227 13.1.2 People doing it for themselves 227 13.2 The Marine Construction PISO analysis 228 13.2.1 Marine Construction step 2.2 - Preparing current system physical DFDs 228 13.2.2 Marine Construction step 2.3 - Logicalising for systems efficiency < 232 13.2.3 Marine Construction step 3.1 - Logicalising for strategic objectives 234 13.2.4 Marine Construction step 3.3 - Physical DFD of recommended system 237 13.2.5 Marine Construction - what has been achieved? 239

xii CONTENTS 13.3 Rontefract General Infirmary PISO analysis 240 13.3.1 Pontefract step 2.2 - Preparing current system physical DFDs 240 13.3.2 Pontefract step 2.3 - Logicalising for systems efficiency 240 13.3.3 Pontefract step 3.1 - Logicalising for strategic objectives 243 13.3.4 Pontefract step 3.3 - Physical DFDs of recommended system 245 13.3.5 Pontefract - what has been achieved? 247 This chapter... 248 A useful exercise 248 Further reading 248 Web address worth a visit 248 Part 4 Object-oriented analysis techniques 249 14 Introducing objects 251 14.1 Background 14.1.1 Structured analysis 14.1.2 Software re-use 14.1.3 Software maintenance and testing 14.1.4 Dealing with today's complex systems 14.2 Objects and object classes 14.3 Objects, entities and class diagrams 14.3.1 The 'object' concept 14.3.2 Association 14.3.3 Inheritance 14.3.4 Aggregation and composition 14.4 Operations and class diagrams This chapter... A useful exercise Further reading Web address worth a visit Modelling object behaviour 15.1 Use cases 15.2 Scenarios 15.3 CRC cards 15.4 Sequence diagrams 15.5 Collaboration diagrams 15.6 State diagrams This chapter... A useful exercise Further reading Web address worth a visit 251 251 251 252 252 253 253 253 254 257 258 260 261 261 261 262 263 263 264 266 268 272 272 274 274 274 275

CONTENTS xiii Part 5 And finally... 277 16 Drawing it all together 279 16.1 Some principles of systems analysis 279 16.2 Maintenance and use - information systems and motor cars 281 16.2.1 Maintaining 281 16.2.2 Using 282 16.3 Which approach to use? 282 16.3.1 New and evolving 282 16.3.2 Object-orientation and persistent data 283 16.3.3 Structured analysis... and design 283 16.3.4 Structured and object-oriented analysis 284 16.3.5 Soft Systems 284 16.4 A final finally 285 A useful exercise 285 Further reading 285 Web addresses worth a visit 285 Bibliography 286 Index 288