Systems Analysis and Design : An Object-Oriented Approach with UML
Systems Analysis and Design : An Object-Oriented Approach with UML
Click to enlarge
Author(s): Dennis, Alan
ISBN No.: 9781118804674
Pages: 544
Year: 201503
Format: Trade Paper
Price: $ 291.11
Status: Out Of Print

Chapter 1 Introduction to Systems Analysis and Design 1 Introduction 1 The Systems Development Life Cycle 2 Planning 3 Analysis 3 Design 4 Implementation 4 Systems Development Methodologies 5 Structured Design 6 Rapid Application Development (RAD) 8 Agile Development 12 Selecting the Appropriate Development Methodology 15 Typical Systems Analyst Roles and Skills 17 Business Analyst 18 Systems Analyst 18 Infrastructure Analyst 18 Change Management Analyst 19 Project Manager 19 Basic Characteristics of Object-Oriented Systems 19 Classes and Objects 19 Methods and Messages 20 Encapsulation and Information Hiding 20 Inheritance 21 Polymorphism and Dynamic Binding 22 Object-Oriented Systems Analysis and Design (OOSAD) 23 Use-Case Driven 24 Architecture-Centric 24 Iterative and Incremental 24 Benefits of Object-Oriented Systems Analysis and Design 25 The Unified Process 25 Phases 26 Workflows 28 Extensions to the Unified Process 30 The Unified Modeling Language 34 Applying the concepts at Patterson superstore 36 Chapter Review 36 Chapter 2 Project Management 41 Introduction 41 Project Identification 43 System Request 44 Feasibility Analysis 45 Technical Feasibility 45 Economic Feasibility 46 Organizational Feasibility 51 Project Selection 53 Traditional Project Management Tools 54 Work Breakdown Structures 55 Gantt chart 56 Network Diagram 57 Project Effort Estimation 58 Creating and Managing the Workplan 63 Evolutionary Work Breakdown Structures and Iterative Workplans 63 Managing Scope 67 Timeboxing 68 Refining Estimates 69 Managing Risk 70 Staffing the Project 71 Characteristics of a Jelled Team 71 Staffing Plan 73 Motivation 75 Handling Conflict 76 Environment and Infrastructure Management 76 CASE Tools 77 Standards 77 Documentation 78 Applying the Concepts at Patterson Superstore 80 Chapter Review 80 PART ONE ANALYSIS MODELING 85 Chapter 3 Requirements Determination 86 Introduction 86 Requirements Determination 87 Defining a Requirement 87 Requirements Definition 89 Determining Requirements 89 Creating a Requirements Definition 91 Real-World Problems with Requirements Determination 91 Requirements Analysis Strategies 92 Problem Analysis 92 Root Cause Analysis 92 Duration Analysis 93 Activity-Based Costing 94 Informal Benchmarking 94 Outcome Analysis 95 Technology Analysis 95 Activity Elimination 95 Requirements-Gathering Techniques 95 Interviews 96 Joint Application Development (JAD) 100 Questionnaires 104 Document Analysis 106 Observation 108 Selecting the Appropriate Techniques 108 Alternative Requirements Documentation Techniques 110 Concept Maps 110 User Stories 112 The System Proposal 113 Applying the Concepts at Patterson Superstore 114 Chapter review 114 Chapter 4 Business Process and Functional Modeling 119 Introduction 119 Business Process Identification with Use Cases and Use-Case Diagrams 121 Elements of Use-Case Diagrams 121 Identifying the Major Use Cases 126 Creating a Use-Case Diagram 127 Business Process Modeling with Activity Diagrams 129 Elements of an Activity Diagram 131 Guidelines for Creating Activity Diagrams 136 Creating Activity Diagrams 137 Business Process Documentation with Use Cases and Use-Case Descriptions 140 Types of Use Cases 141 Elements of a Use-Case Description 141 Guidelines for Creating Use-Case Descriptions 145 Creating Use Case Descriptions 146 Verifying and Validating the Business Processes and Functional Models 153 Verification and Validation through Walkthroughs 153 Functional Model Verification and Validation 154 Applying the Concepts at Patterson Superstore 157 Chapter Review 157 Chapter 5 Structural Modeling 163 Introduction 163 Structural Models 164 Classes, Attributes, and Operations 164 Relationships 165 Object Identification 166 Textual Analysis 166 Brainstorming 167 Common Object Lists 169 Patterns 169 Crc Cards 172 Responsibilities and Collaborations 172 Elements of a CRC Card 173 Role-Playing CRC Cards with Use Cases 174 Class Diagrams 176 Elements of a Class Diagram 176 Simplifying Class Diagrams 184 Object Diagrams 184 Creating Structural Models Using CRC Cards and Class Diagrams 185 Campus Housing Example 187 Library Example 187 Verifying and Validating the Structural Model 194 Applying the Concepts at Patterson Superstore 197 Chapter Review 198 Chapter 6 Behavioral Modeling 202 Introduction 202 Behavioral Models 203 Interaction Diagrams 204 Objects, Operations, and Messages 204 Sequence Diagrams 204 Communication Diagrams 216 Behavioral State Machines 221 States, Events, Transitions, Actions, and Activities 221 Elements of a Behavioral State Machine 222 Creating a Behavioral State Machine 226 Crude Analysis 229 Verifying and Validating the Behavioral Model 233 Applying the Concepts at Patterson Superstore 235 Chapter Review 235 PART TWO DESIGN MODELING 239 Chapter 7 Moving on to Design 240 Introduction 240 Verifying and Validating the Analysis Models 242 Balancing Functional and Structural Models 242 Balancing Functional and Behavioral Models 243 Balancing Structural and Behavioral Models 251 Summary 254 Evolving the Analysis Models into Design Models 257 Factoring 257 Partitions and Collaborations 258 Layers 259 Packages and Package Diagrams 262 Guidelines for Creating Package Diagrams 264 Creating Package Diagrams 266 Verifying and Validating Package Diagrams 266 Design Strategies 268 Custom Development 268 Packaged Software 269 Outsourcing 270 Selecting a Design Strategy 272 Selecting an Acquisition Strategy 273 Alternative Matrix 274 Applying the Concepts at Patterson Superstore 276 Chapter Review 276 Chapter 8 Class and Method Design 280 Introduction 280 Review of the Basic Characteristics of Object Orientation 282 Classes, Objects, Methods, and Messages 282 Encapsulation and Information Hiding 282 Polymorphism and Dynamic Binding 282 Inheritance 284 Design Criteria 286 Coupling 286 Cohesion 289 Connascence 292 Object Design Activities 293 Adding Specifications 293 Identifying Opportunities for Reuse 294 Restructuring the Design 297 Optimizing the Design 298 Mapping Problem-Domain Classes to Implementation Languages 300 Constraints and Contracts 304 Types of Constraints 306 Elements of a Contract 306 Method Specification 314 General Information 314 Events 314 Message Passing 315 Algorithm Specifications 316 Example 318 Verifying and Validating Class and Method Design 319 Applying the Concepts at Patterson Superstore 322 Chapter review 322 Chapter 9 Data Management Layer Design 326 Introduction 326 Object Persistence Formats 327 Sequential and Random Access Files 327 Relational Databases 330 Object-Relational Databases 332 Object-Oriented Databases 332 NoSQL Data Stores 333 Selecting an Object Persistence Format 335 Mapping Problem Domain Objects to Object Persistence Formats 337 Mapping Problem Domain Objects to an OODBMS Format 338 Mapping Problem Domain Objects to an ORDBMS Format 341 Mapping Problem Domain Objects to a RDBMS Format 344 Optimizing Rdbms-Based Object Storage 346 Optimizing Storage Efficiency 347 Optimizing Data Access Speed 351 Estimating Data Storage Size 356 Designing Data Access and Manipulation Classes 357 Nonfunctional Requirements and Data Management Layer Design 360 Verifying and Validating the Data Management Layer 361 Applying the Concepts at Patterson Superstore 362 Chapter Review 362 Chapter 10 Human-Computer Interaction Layer Design 367 Iintroduction 367 Principles for User Interface Design 368 Layout 369 Content Awareness 369 Aesthetics 370 User Experience 371 Consistency 371 Minimizing User Effort 372 User Interface Design Process 372 Use Scenario Development 373 Navigation Structure Design 375 Interface Standards Design 376 Interface Design Prototyping 377 Interface Evaluation 380 Common Sense Approach to User Interface Design 382 Navigation Design 383 Basic Principles 383 Types of Navigation Controls 384 Messages 386 Navigation Design Documentation 387 Input Design 387 Basic Principles 387 Types of Inputs 390 Input Validation 391 Output Design 392 Basic Principles 392 Types of Outputs 394 Media 394 Mobile Computing a.


To be able to view the table of contents for this publication then please subscribe by clicking the button below...
To be able to view the full description for this publication then please subscribe by clicking the button below...