PEARSON. Addison Wesley

Similar documents
PEARSON. Amsterdam Cape Town Dubai London Madrid Milan Munich Paris Montreal Toronto

MARKETING PLANNING. Where Strategy Meets Action PEARSON

Project Management Process,Technology, and Practice

Object-Oriented & Classical Soft Engineering

Marketing Management. PhiLip. Kevin Lane. Mairead. MalcoLm. forben. Prentice Hall PEARSON

Software Engineering QUESTION BANK

CONTENTS. Introduction to Software Engineering. Software Process and Life Cycle Models. Software Life-Cycle Model-2. Chapter 1. Chapter 2.

Gaining and Sustaining Competitive Advantage

IT Architectures and Middleware

SOA Principles of Service Design

HUMAN RESOURCE MANAGEMENT DEREK TORRINGTON, LAURA HALL, CAROL ATKINSON, STEPHEN TAYLOR TENTH EDITION. v v :? % '"v f ' ; ' f. !3fc * .

CM M Is for Services. AAddison-Wesley. Guidelines for Superior Service. Sandy Shrum. Second Edition. Eileen C. Forrester Brandon L Buteau

A Practical Approach. Development. to Large-Scale Agile. FutureSmart Firmware. How HP Transformed LaserJet. AAddison-Wesley. Mike Young.

Understanding SOA with Web Services

Economic Approaches to Organizations

Natural Resource and Environmental Economics

SE curriculum in CC2001 made by IEEE and ACM: What is Software Engineering?

SERVICES MARKETING PEOPLE, TECHNOLOGY, STRATEGY. Christopher Lovelock. Yale University. Jochen Wirtz. National University of Singapore

The Product and the Process The Product The Evolving Role of Software Software Software: A Crisis on the Horizon Software Myths Summary References

SOFTWARE ENGINEERING WITH JAVA

Customer Service. A Practical Approach. Elaine K. Harris PEARSON

Natural Resource and Environmental Economics

SOA Design Patterns. Thomas Erl. (with additional contributors) PRENTICE HALL UPPER SADDLE RIVER, NJ BOSTON INDIANAPOLIS SAN FRANCISCO

Software Engineering. Ian Sommerville

Economic Approaches to Organizations

SYLLABUS. What is Agility, What is an Agile Process, Agile Process Models.

STRATEGIC MANAGEMENT INACTION

Human Resource Management

PESIT- Bangalore South Campus Hosur Road (1km Before Electronic city) Bangalore

LEVEL THREE LEADERSHIP

CS SOFTWARE ENGINEERING QUESTION BANK

STRATEGIC COMPENSATION

Kaizen and Kaizen Event Implementation

SUPPLY CHAIN MANAGEMENT

Service-Oriented Architecture

Accounting for Society and the. Rob Gray, Carol A. Adams and Dave Owen

The Art of Agile Practice

International Human Resource

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1

Essential Guide to. Second edition. Nfeiriaifi Buirk o l-v -. j-, Financial Times Prentice Hall Is an imprint of I". ( J

Technology Strategies for the Hospitality Industry

SUPPLY CHAIN MANAGEMENT

Chapter 1. What is Software Engineering. Shari L. Pfleeger Joanne M. Atlee. 4 th Edition

The software process

Methods of IT Project Management

An Introduction Eleventh Edition

Software Processes. Objectives. Topics covered. The software process. Waterfall model. Generic software process models

CMPT 275 Software Engineering

Objectives. The software process. Topics covered. Waterfall model. Generic software process models. Software Processes

II. Software Life Cycle. Laurea Triennale in Informatica Corso di Ingegneria del Software I A.A. 2006/2007 Andrea Polini

2068 I. Attempt any ten questions. (10x6=60)

GLOBAL EDITION. Structural Analysis. Ninth Edition in SI Units. R. C. Hibbeler

A FORMALIZATION AND EXTENSION OF THE PURDUE ENTERPRISE REFERENCE ARCHITECTURE AND THE PURDUE METHODOLOGY REPORT NUMBER 158

Topics covered. Software process models Process iteration Process activities The Rational Unified Process Computer-aided software engineering

Chapter 1. Contents. What is Software Engineering 9/9/13. Shari L. Pfleeger Joanne M. Atlee. 4 th Edition

Svend Hollensen. Prentice Hall

Software Engineering Ian Sommerville Pearson Education File Type

An Introduction. Twelfth Edition. Global Edition. O GARY ARMSTRONG University of North Carolina. Q PHILIP KOTLER Northwestern University PEARSON

MICROECONOMICS. London School of Economics. University of Western Ontario. Prentice Hall FINANCIAL TIMES

The Unified Software Development Process

Ethics and the Conduct of Business

Measuring and Assessing Software Quality

Marketing Communications in Tourism and Hospitality

International Human Resource Management

SOA Principles of Service Design

Social Welfare. A History of the American Response to Need. Mark J. Stern University of Pennsylvania. June Axinn Deceased EIGHTH EDITION

Global Program Management

MODULE Explain briefly the different types of system models that might be created during the system analysis phase. 2. Write short notes on

Negotiation and Dispute Resolution

Communication in. Business and the

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK

Foundation Design. Principles. and Practices. Donald P. Coduto. Man-chu Ronald Yeung. William A. Kitch. Third Edition PEARSON

nterne Strategy, Implementation and Practice Dave Chaffey Fiona Ellis-Chadwick Richard Mayer Kevin Johnston Fourth Edition FT Prentice Hall

methodologies (SOFTWARE ENGINEERING) CONTENTS 1.1 INTRODUCTION TO O SOFTWARE ENGINEERING Basic Stages in Software Development... 1.

Ian Sommerville Software Engineering 7th Edition Ebook Free Download

Workflow Administration of PTC Windchill 11.1

James Evans Business Analytics Solutions Manual Istbh

MARKETING RESEARCH AN APPLIED APPROACH FIFTH EDITION NARESH K. MALHOTRA DANIEL NUNAN DAVID F. BIRKS. W Pearson

AUTOMATED DEFECT PREVENTION: BEST PRACTICES IN SOFTWARE MANAGEMENT

fourth edition Dr Frances Brassington Dr Stephen Pettitt FT Prentice Hall FINANCIAL TIMES Senior Lecturer Oxford Brookes University

Preface... iii Introduction... xvii Chapter 1: Introduction to Management Information System... 1

Kotler Principles Of Marketing European Edition 6

Modular Design for Machine Tools

Software Engineering COMP 201

Fifth Edition CONSUMER BEHAVIOUR

BC420 Data Migration. Course Outline. SAP NetWeaver. Course Version: 93 Course Duration: 5 Day(s) Publication Date: Publication Time: 1550

"Charting the Course... MOC A Retail n Brick and Mortar Stores: Development and Customization for Microsoft Dynamics AX 2012 R2.

Health Care Viewpoint

Program Evaluation Methods and Case Studies

Experiencing MIS PEARSON

SM100. SAP Solution Manager Configuration for Operations COURSE OUTLINE. Course Version: 15 Course Duration: 5 Day(s)

Introduction to Agricultural Economics Fifth Edition

Introduction to Agricultural Economics Fifth Edition

Software Engineering II - Exercise

Planning and Scheduling Issues in Supply Chains. Stephan Kreipl SAP Germany AG Michael Pinedo New York University

Challenges & Approaches to Implementing Structured System architecture in the Medical Device Industry

COMMERCIAL LAW in Malaysia

THE ECONOMIC IMPACT OF THE EU STEEL SECTOR. Doug Godden Lead Economist, Oxford Economics

EXPERIMENTS. with ECONOMIC PRINCIPLES. Theodore C. Bergstrom. University of Michigan. John H. Miller. Carnegie Mellon University

Transcription:

PEARSON Addison Wesley Boston San Francisco N e w York London Toronto Sydney Tokyo Singapore Madrid Mexico City Munich Paris Cape Town Hong Kong Montreal :. - - } r / : '... : '. : :

I Preface i Overview 1 Introduction 1.1 FAQs about Software engineering 1.2 Professional and ethical responsibility Key Points Further Reading Exercises 2 Socio-technical Systems 3 5 14 17 18 18 20 2.1 Emergent System properties 23 2.2 Systems engineering 25 2.3 Organisations, people and Computer Systems 34 2.4 Legacy Systems 38 Key Points Further Reading Exercises 40 41 41

xiv Contents Chapter 3 Critical Systems 43 3.1 A simple safety-critical System 46 3.2 System dependability 47 3.3 Availability and reliability 51 3.4 Safety 55 3.5 Security 58 Key Points 60 Further Reading 61 Exercises 61 Chapter 4 Software processes 63 4.1 Software process modeis 65 4.2 Process iteration 71 4.3 Process activities 74 4.4 The Rational Unified Process 82 4.5 Computer-Aided Software Engineering 85 Key Points 89 Further Reading 90 Exercises 91 Chapter 5 Project management 92 5.1 Management activities 94 5.2 Project planning 96 5.3 Project scheduling 99 5.4 Risk management 104 Key Points 111 Further Reading 112 Exercises 112

Contents xv Part 2 Requirements 115 Chapter 6 Software requirements 117 6.1 Functional and non-functional requirements 119 6.2 User requirements 127 6.3 System requirements 129 6.4 Interface specification 135 6.5 The Software requirements document 136 Key Points 140 Further Reading 140 Exercises 141 Chapter 7 Requirements engineering processes 142 7.1 Feasibility studies 144 7.2 Requirements elicitation and analysis 146 7.3 Requirements Validation 158 7.4 Requirements management 161 Key Points 166 Further Reading 167 Exercises 167 Chapter 8 System modeis 169 8.1 Context modeis 171 8.2 Behavioural modeis 173 8.3 Data modeis 177 8.4 Object modeis 181 8.5 Structured methods 187 Key Points 190 Further Reading 191 Exercises 191

xvi Contents Chapter 9 Critical Systems specification 193 9.1 Risk-driven specification 195 9.2 Safety specification 202 9.3 Security specification 204 9.4 Software reliability specification 207 Key Points 213 Further Reading 214 Exercises 214 Chapter 10 Formal specification 217 10.1 Formal specification in the Software process 219 10.2 Sub-system interface specification 222 10.3 Behavioural specification 229 Key Points 236 Further Reading 236 Exercises 237 Part 3 Design 239 Chapter 11 Architectural Design 241 11.1 Architectural design decisions 245 11.2 System Organisation 247 11.3 Modular decomposition styles 252 11.4 Control styles 256 11.5 Reference architectures 260 Key Points 263 Further Reading 264 Exercises 264 Chapter 12 Distributed Systems Architectures 266 12.1 Multiprocessor architectures 269

Contents xvii 12.2 Client-server architectures 270 12.3 Distributed object architectures 275 12.4 Inter-organisational distributed Computing 282 Key Points 289 Further Reading 290 Exercises 290 Chapter 13 Application Architectures 292 13.1 Data processing Systems 295 13.2 Transaction processing Systems 298 13.3 Event processing Systems 304 13.4 Language processing Systems 307 Key Points 310 Further Reading 310 Exercises 311 Chapter 14 Object-oriented Design 313 14.1 Objects and object classes 316 14.2 An object-oriented design process 320 14.3 Design evolution 335 Key Points 336 Further Reading 337 Exercises 337 Chapter 15 Real-Time Software Design 339 15.1 System design 342 15.2 Real-time operating Systems 346 15.3 Monitoring and control Systems 349 15.4 Data acquisition Systems 355 Key Points 357 Further Reading 359 Exercises 359

xviii Contents Chapter 16 User Interface Design 362 16.1 Design issues 366 16.2 The Ul design process 376 16.3 User analysis 378 16.4 User interface prototyping 381 16.5 Interface evaluation 383 Key Points 385 Further Reading 386 Exercises 386 Part 4 Critical Systems 389 Chapter 17 Rapid Software Development 391 17.1 Agile methods 396 17.2 Extreme programming 398 17.3 Rapid application development 405 17.4 Software prototyping 409 Key Points 412 Further Reading 413 Exercises 414 Chapter 18 Software Reuse 415 18.1 The reuse landscape 418 18.2 Design patterns 421 18.3 Generator-based reuse 423 18.4 Application frameworks 426 18.5 Application system reuse 428 Key Points 437 Further Reading 437 Exercises 438

XIX Chapter 19 Component-based Software Engineering 439 19.1 Components and component modeis 442 19.2 The CBSE process 450 19.3 Component composition 452 Key Points 460 Further Reading 460 Exercises 461 Chapter 20 Critical Systems Development 462 20.1 Dependable processes 466 20.2 Dependable programming 467 20.3 Fault tolerance 475 20.4 Fault-tolerant architectures 482 Key Points 486 Further Reading 486 Exercises 487 Chapter 21 Software Evolution 488 21.1 Program evolution dynamics 490 21.2 Software maintenance 492 21.3 Evolution processes 498 21.4 Legacy System evolution 504 Key Points 509 Further Reading 510 Exercises 510 Part 5 Verification and Validation 513 Chapter 22 Verification and Validation 515 22.1 Planning verification and Validation 519 22.2 Software inspections 521

xx Contents 22.3 Automated static analysis 527 22.4 Verification and formal methods 530 Key Points 535 Further Reading 535 Exercises 536 Chapter 23 Software Testing 537 23.1 System testing 540 23.2 Component testing 547 23.3 Test case design 551 23.4 Test automation 561 Key Points 563 Further Reading 564 Exercises 565 Chapter 24 Critical Systems Validation 566 24.1 Reliability Validation 568 24.2 Safety assurance 574 24.3 Security assessment 581 24.4 Safety and dependability cases 583 Key Points 586 Further Reading 587 Exercises 587 Part 6 Managing People 589 Chapter 25 Managing People 591 25.1 Selecting staff 593 25.2 Motivating people 596 25.3 Managing Groups 599 25.4 The People Capability Maturity Model 607

Contents xxi Key Points 610 Further Reading 610 Exercises 611 Chapter 26 Software Cost Estimation 612 26.1 Software productivity 614 26.2 Estimation techniques 620 26.3 Algorithmic cost modelling 623 26.4 Project duration and staffing 637 Key Points 638 Further Reading 639 Exercises 639 Chapter 27 Quality Management 641 27.1 Process and product quality 644 27.2 Quality assurance and Standards 645 27.3 Quality planning 652 27.4 Quality control 653 27.5 Software measurement and metrics 655 Key Points 663 Further Reading 663 Exercises 664 Chapter 28 Process Improvement 665 28.1 Process and product quality 667 28.2 Process Classification 669 28.3 Process measurement 672 28.4 Process analysis and modelling 673 28.5 Process change 678 28.6 The CMMI process improvement framework 680 Key Points 687

xxii Contents Further Reading 687 Exercising 688 Chapter 29 Configuration Management 689 29.1 Configuration management planning 692 29.2 Change management 695 29.3 Version and release management 698 29.4 System building 705 29.5 CASE tools for configuration management 706 Key Points 711 Furhter Reading 711 Exercises 712 Glossaary 715 References 727 Index 743 Trademark Notice The following are trademarks or registered trademarks of their respective companies: Java, JavaBeans and Modula-2 are trademarks of Sun Microsystems, Inc.; Lotus Notes is a trademark of Lotus Development Corporation; Mac OS is a trademark of Apple Computer, Inc.; Microsoft, PowerPoint, Windows, Visual Basic and Visual C+ + are trademarks of Microsoft Corporation; Unix is a trademark licensed through X/Open Company Ltd.