Product Information
For courses in Software Engineering, Software Development, or Object-Oriented Design and Analysis at the Junior/Senior or Graduate level. This text can also be utilized in short technical courses or in short, intensive management courses. Object-Oriented Software Engineering Using UML, Patterns, and Java, 3e , shows readers how to use both the principles of software engineering and the practices of various object-oriented tools, processes, and products. Using a step-by-step case study to illustrate the concepts and topics in each chapter, Bruegge and Dutoit emphasize learning object-oriented software engineer through practical experience: readers can apply the techniques learned in class by implementing a real-world software project. The third edition addresses new trends, in particular agile project management (Chapter 14 Project Management) and agile methodologies (Chapter 16 Methodologies).Product Identifiers
PublisherPearson Education, Prentice Hall PTR
ISBN-100136061257
ISBN-139780136061250
eBay Product ID (ePID)71756865
Product Key Features
Number of Pages816 Pages
LanguageEnglish
Publication NameObject-Oriented Software Engineering Using Uml, Patterns, and Java
Publication Year2009
SubjectSoftware Development & Engineering / General, Programming / Object Oriented
TypeTextbook
Subject AreaComputers
AuthorBernd Bruegge, Allen Dutoit
Dimensions
Item Height1.9 in
Item Weight51 Oz
Item Length9.6 in
Item Width7.4 in
Additional Product Features
Edition Number3
Intended AudienceCollege Audience
Dewey Edition22
IllustratedYes
Dewey Decimal005.117
Lc Classification NumberQa76.758.B785 2009
Table of ContentForeword Preface Acknowledgments PART I Getting Started Chapter 1 Introduction to Software Engineering 1.1 Introduction: Software Engineering Failures 1.2 What Is Software Engineering? 1.2.1 Modeling 1.2.2 Problem Solving 1.2.3 Knowledge Acquisition 1.2.4 Rationale 1.3 Software Engineering Concepts 1 1.3.1 Participants and Roles 1.3.2 Systems and Models 1.3.3 Work Products 1.3.4 Activities, Tasks, and Resources 1.3.5 Functional and Nonfunctional Requirements 1.3.6 Notations, Methods, and Methodologies 1.4 Software Engineering Development Activities 1.4.1 Requirements Elicitation 1.4.2 Analysis 1.4.3 System Design 1.4.4 Object Design 1.4.5 Implementation 1.4.6 Testing 1.5 Managing Software Development 1.5.1 Communication 1.5.2 Rationale Management 1.5.3 Software Configuration Management 1.5.4 Project Management 1.5.5 Software Life Cycle 1.5.6 Putting It All Together 1.6 ARENA Case Study 1.7 Further Reading 1.8 Exercises Chapter 2 Modeling with UML 2.1 Introduction 2.2 An Overview of UML 2.2.1 Use Case Diagrams 2.2.2 Class Diagrams 2.2.3 Interaction Diagrams 2.2.4 State Machine Diagrams 2.2.5 Activity Diagrams 2.3 Modeling Concepts 2.3.1 Systems, Models, and Views 2.3.2 Data Types, Abstract Data Types, and Instances 2.3.3 Classes, Abstract Classes, and Objects 2.3.4 Event Classes, Events, and Messages 2.3.5 Object-Oriented Modeling 2.3.6 Falsification and Prototyping 2.4 A Deeper View into UML 2.4.1 Use Case Diagrams 2.4.2 Class Diagrams 2.4.3 Interaction Diagrams 2.4.4 State Machine Diagrams 2.4.5 Activity Diagrams 2.4.6 Diagram Organization 2.4.7 Diagram Extensions 2.5 Further Readings 2.6 Exercises Chapter 3 Project Organization and Communication 3.1 Introduction: A Rocket Example 3.2 An Overview of Projects 3.3 Project Organization Concepts 3.3.1 Project Organizations 3.3.2 Roles 3.3.3 Tasks and Work Products 3.3.4 Schedule 3.4 Project Communication Concepts 3.4.1 Planned Communication 3.4.2 Unplanned Communication 3.4.3 Communication Mechanisms 3.5 Organizational Activities 3.5.1 Joining a Team 3.5.2 Joining the Communication Infrastructure 3.5.3 Attending Team Status Meetings 3.5.4 Organizing Client and Project Reviews 3.6 Further Readings 3.7 Exercises PART II Dealing with Complexity Chapter 4 Requirements Elicitation 4.1 Introduction: Usability Examples 4.2 An Overview of Requirements Elicitation 4.3 Requirements Elicitation Concepts 4.3.1 Functional Requirements 4.3.2 Nonfunctional Requirements 4.3.3 Completeness, Consistency, Clarity, and Correctness 4.3.4 Realism, Verifiability, and Traceability 4.3.5 Greenfield Engineering, Reengineering, and Interface Engineering 4.4 Requirements Elicitation Activities 4.4.1 Identifying Actors 4.4.2 Identifying Scenarios 4.4.3 Identifying Use Cases 4.4.4 Refining Use Cases 4.4.5 Identifying Relationships among Actors and Use Cases <p style="MARGIN: 0px" a