Design Model and Strategy PDF
Document Details
Uploaded by AmusingGrowth
BINUS University
Alan Dennis, Barbara Haley Wixom, David Tegarden
Tags
Summary
These lecture notes cover program design methods, focusing on design models and strategies. The document details concepts like verifying analysis models, evolving models, packages and diagrams, strategies for designing new systems, and selecting design approaches.
Full Transcript
Course : Program Design Methods Design Model and Strategy Session 12 Sub Topics Introduction Verifying ad Validating analysis model Evolving Analysis Model to Design Model Packages and package diagram Design Strategy Applying the concep...
Course : Program Design Methods Design Model and Strategy Session 12 Sub Topics Introduction Verifying ad Validating analysis model Evolving Analysis Model to Design Model Packages and package diagram Design Strategy Applying the concepts Acknowledgement These slides have been adapted from: Alan Dennis, Barbara Haley Wixom, David Tegarden (2015). Systems Analysis and Design_ An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 Chapter 7 Learning Objectives At the end of this lecture, students are able to: LO3: To analyze the requirement of a system LO4: To design system based on the requirements Introduction Design includes activities such as designing the user interface, system inputs, and system outputs, which involve the ways that the user interacts with the system Physical architecture decisions are made regarding the hardware and soft ware that will be purchased to support the new system and the way that the processing of the system will be organized A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 Verifying ad Validating analysis model Before transferring analysis representations into design representations, we need to verify and validate the current set of analysis models to ensure that they faithfully represent the problem domain. Includes testing the fidelity of each model For example, we must be sure that the activity diagram(s), use- case descriptions, and use case diagrams all describe the same functional requirements A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 Balancing Functional and Structural Models every class on a class diagram and every CRC card must be associated with at least one use case, and vice versa every activity or action contained in an activity diagram and every event contained in a use-case description should be related to one or more responsibilities on a CRC card and one or more operations in a class on a class diagram and vice versa every object node on an activity diagram must be associated with an instance of a class on a class diagram every attribute and association/aggregation relationships contained on a CRC card (and connected to a class on a class diagram) should be related to the subject or object of an event in a use-case description A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 Balancing Functional and Behavioral Models the activity diagrams, use-case descriptions, and use-case diagrams must agree with the sequence diagrams, communication diagrams, behavioral state machines actors on sequence diagrams, communication diagrams, must be associated with actors on the use-case diagram or referenced in the use case description, and vice versa messages on sequence and communication diagrams, transitions on behavioral state machines must be related to activities and actions on an activity diagram and events listed in a use-case description all complex objects represented by an object node in an activity diagram must have a behavioral state machine that represents the object’s lifecycle A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 Balancing Structural and Behavioral Models behavioral state machines represent the life cycle of complex objects, they must be associated with instances (objects) of classes on a class diagram and with a CRC card that represents the class of the instance communication and sequence diagrams contain objects that must be an instantiation of a class that is represented by a CRC card and is located on a class diagram messages contained on the sequence and communication diagrams, transitions on behavioral state machines must be associated with responsibilities and associations on CRC cards and operations in classes and associations connected to the classes on class diagrams. states in a behavioral state machine must be associated with diff erent values of an attribute or set of attributes that describe an object A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 Evolving The Analysis Models Into Design Models Factoring Factoring is the process of separating out a module into a stand- alone module. The new module can be a new class or a new method (factor out the similarities into a separate class) Partitions and Collaborations split the representation into a set of partitions. A partition is the object-oriented equivalent of a subsystem, where a subsystem is a decomposition of a larger system into its component systems look for potential partitions is the collaborations modeled in UML’s communication diagrams A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 Evolving The Analysis Models Into Design Models Layers add the system environment information A layer represents an element of the soft ware architecture of the evolving system Th ere should be a layer for each of the different elements of the system environment (e.g., data management, user interface, physical architecture) Foundation Contains classes that are necessary for any object-oriented application to exist. They include classes that represent fundamental data types A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 Evolving The Analysis Models Into Design Models Problem Domain need to further detail the classes Data Management The data management layer addresses the issues involving the persistence of the objects contained in the system. Th e types of classes that appear in this layer deal with how objects can be stored and retrieved Human–Computer Interaction Physical Architecture A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 PACKAGES AND PACKAGE DIAGRAMS A package is a general construct that can be applied to any of the elements in UML models The symbol for a package is similar to a tabbed folder Package diagram, is useful to depict a new relationship, the dependency relationship. A dependency relationship is represented by a dashed arrow A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 PACKAGES AND PACKAGE DIAGRAMS Example A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 PACKAGES AND PACKAGE DIAGRAMS Guidelines for Creating Package Diagrams use packages to group classes together when there is an inheritance, aggregation, or composition relationship between them or when the classes form a collaboration In some cases, inheritance, aggregation, or association relationships exist between packages - support inheritance relationships vertically, with the package containing the superclass being placed above the package containing the subclass dependency relationship implies that there is at least one semantic relationship between elements of the two packages When using packages to group use cases together, be sure to include the actors and the associations that they have with the use cases grouped in the package A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 PACKAGES AND PACKAGE DIAGRAMS Guidelines for Creating Package Diagrams Give each package a simple, but descriptive name to provide the package diagram user with enough information to understand what the package encapsulates Be sure that packages are cohesive A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 DESIGN STRATEGIES 3 ways to approach the creation of a new system Developing a custom application in-house, Buying and customizing a packaged system Relying on an external vendor, developer, or service provider to build the system A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 Selecting a Design Strategy A. Dennis et al.,(2015). Systems Analysis and Design An Object-Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4 References Alan Dennis, Barbara Haley Wixom, David Tegarden (2015). Systems Analysis and Design_ An Object- Oriented Approach with UML, 5th ed. ISBN: 978-1-118-80467-4