© 2005 Prentice Hall12-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.

Slides:



Advertisements
Similar presentations
© 2005 by Prentice Hall Appendix 3 Object-Oriented Analysis and Design Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Advertisements

Chapter 11 Designing the User Interface
© 2005 Prentice Hall13-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Using Data Flow Diagrams
Using Dataflow Diagrams
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
© 2005 Prentice Hall6-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Interaction Diagrams Activity Diagram State Machine Diagram
Object-Oriented Analysis and Design
2 Object-Oriented Analysis and Design with the Unified Process Objectives  Explain how statecharts can be used to describe system behaviors  Use statecharts.
© 2005 Prentice Hall7-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Using Dataflow Diagrams
Chapter 7 Using Data Flow Diagrams
© 2005 Prentice Hall8-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
© 2005 Prentice Hall3-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Selected techniques from the Creative Design Process Vision statement Requirements workshop, other facilitated workshops Creative Design Brief Navigation.
Chapter 9 Using Data Flow Diagrams
Chapter 6 Functional Modeling
Chapter 9: Moving to Design
SE-565 Software System Requirements More UML Diagrams.
Chapter 13: Designing the User Interface
Chapter 7: The Object-Oriented Approach to Requirements
System Analysis Overview Document functional requirements by creating models Two concepts help identify functional requirements in the traditional approach.
Chapter 9 Elements of Systems Design
The Design Discipline.
Chapter 13 Starting Design: Logical Architecture and UML Package Diagrams.
Systems Analysis and Design in a Changing World, Fifth Edition
Systems Analysis and Design in a Changing World, Fifth Edition
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
14 Chapter 11: Designing the User Interface. 14 Systems Analysis and Design in a Changing World, 3rd Edition 2 Identifying and Classifying Inputs and.
Using Dataflow Diagrams – Part 2 Systems Analysis and Design, 7e Kendall & Kendall 7 © 2008 Pearson Prentice Hall.
Chapter 7 Using Data Flow Diagrams
12 Systems Analysis and Design in a Changing World, Fifth Edition.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
Requirements To Design--Iteratively Chapter 12 Applying UML and Patterns Craig Larman.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
Systems Analysis and Design in a Changing World, 3rd Edition
© 2005 Prentice Hall10-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
GRASP: Designing Objects with Responsibilities
© 2005 Prentice Hall9-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
What to remember from Chap 13 (Logical architecture)
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Chapter 6 – Architectural Design Lecture 1 1Chapter 6 Architectural design.
© 2005 Prentice Hall1-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
12 Chapter 12: Advanced Topics in Object-Oriented Design Systems Analysis and Design in a Changing World, 3 rd Edition.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Systems Analysis and Design in a Changing World, Fourth Edition
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
TK2023 Object-Oriented Software Engineering CHAPTER 8 LOGICAL ARCHITECTURE.
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design,
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.
11 Systems Analysis and Design in a Changing World, Fifth Edition.
9 Systems Analysis and Design in a Changing World, Fifth Edition.
Systems Analysis and Design in a Changing World, Fourth Edition
Object-Oriented Systems Analysis and Design Using UML
Business System Development
Starting Design: Logical Architecture and UML Package Diagrams
An Introduction to Software Architecture
Stumpf and Teague Object-Oriented Systems Analysis and Design with UML
Stumpf and Teague Object-Oriented Systems Analysis and Design with UML
Appendix 3 Object-Oriented Analysis and Design
Stumpf and Teague Object-Oriented Systems Analysis and Design with UML
Presentation transcript:

© 2005 Prentice Hall12-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.

© 2005 Prentice Hall12-2 Learning Objectives Describe which features of the user- computer dialogue should be included in a design model for the user interface. Explain the components of a state transition diagram (statechart) and what each of them represents. Use a coordinated pair of state transition diagrams to model the user-computer interface.

© 2005 Prentice Hall12-3 Learning Objectives (continued) Explain the conventions for window navigation diagrams. Use a window navigation diagram to model the navigation through a series of windows or Web pages. Discuss the importance of testing the interface for usability. Describe the Model-View Separation pattern and discuss the advantages it provides.

© 2005 Prentice Hall12-4 Overview Applying the design principles of Chapter 11 requires modeling the design of the user-computer interaction at the automation boundary. Some of these models present the interface design to prospective users. Others specify the interaction in sufficient detail for the interface to be constructed.

© 2005 Prentice Hall12-5 Overview (continued) The external design of the user interface should be recorded in a written specification. Testing the design of the user interface throughout the development process is critical to success. There is no acceptable substitute for observing users as they interact with prototypes as well as with the completed system.

© 2005 Prentice Hall12-6 Overview (continued) State transition diagrams effectively model the details of user-computer interaction at the automation boundary. Window navigation diagrams model the navigation paths between the windows in a GUI or the pages of a Web site. Simulations and prototypes facilitate communicating the interface design to users.

© 2005 Prentice Hall12-7 Overview (continued) The Model-View Separation pattern guides the connection of the presentation layer and the business layer. It enforces the design principle that objects in the application domain should have no direct knowledge of or be directly coupled to objects in the presentation layer.

© 2005 Prentice Hall12-8 Modeling the User-Computer Dialogue The user-computer dialogue consists of messages across the automation boundary between two processors – a human and a computer.

© 2005 Prentice Hall12-9 Modeling the User-Computer Dialogue (continued) A model of this dialogue should represent: Messages containing data Messages controlling the dialogue Material inputs and outputs Operations or procedures Coordination and sequencing of the actions of the processors

© 2005 Prentice Hall12-10 State Transition Diagrams A state transition diagram (known in the UML as a statechart) is a useful model of user-computer interaction. It models the actions of a finite state machine with no state memory. This processor may be in only one state at a time. A transition to a different state is caused by the occurrence of an event or by a condition’s becoming true.

© 2005 Prentice Hall12-11 State Transition Diagrams (continued) Components of a state transition diagram are: State: where the processor waits for an occurrence to cause a transition Transition: an instantaneous change to another state

© 2005 Prentice Hall12-12 State Transition Diagrams (continued) Transitions are labeled to show: the event(s) which trigger them, and the action(s) occurring during the transition. An event may be constrained by a guard – a condition which must be true for the transition to occur.

© 2005 Prentice Hall12-13 State Transition Diagrams (continued).

© 2005 Prentice Hall12-14 State Transition Diagrams (continued) A state transition diagram may be decomposed into subdiagrams in order to reduce its complexity.

© 2005 Prentice Hall12-15 Modeling the Interface Dialogue with State Transition Diagrams Two state transition diagrams can be used to model the user-computer dialogue – one diagram for the human processor and one for the computer. The pair of diagrams shows the synchronization more clearly than a single diagram. Actions of the user are the events which trigger transitions in the computer, and vice versa.

© 2005 Prentice Hall12-16 Real Use Case Narratives Expanded real use case narratives may help in designing the interaction. They record decisions about the details of the technology, which were deliberately omitted from the essential narratives developed during analysis.

© 2005 Prentice Hall12-17 Real Use Case Narratives (continued).

© 2005 Prentice Hall12-18 An Example of a State Transition Diagram.

© 2005 Prentice Hall12-19 Navigation Navigation is the process of moving through the windows of a graphical user interface (or the pages of a Web site). A well-designed interface facilitates this navigation so that the user knows his or her current location along the navigation path.

© 2005 Prentice Hall12-20 Window Navigation Diagrams A window navigation diagram models the windows and the navigation paths between them. Figures and show one type of window navigation diagram.

© 2005 Prentice Hall12-21 Window Navigation Diagrams (continued).

© 2005 Prentice Hall12-22 Window Navigation Diagrams (continued).

© 2005 Prentice Hall12-23 Simulation of the Interface Design A simulation is often the most effective way of communicating the design of the interface to users.

© 2005 Prentice Hall12-24 Specifying the Interface Design.

© 2005 Prentice Hall12-25 Usability Testing of the Interface Design Careful testing of the interface design is critical. Usability testing evaluates users’ satisfaction with the interface. It requires a user. It observes people doing tasks with the product being tested. Interpreting the observations requires judgment and is therefore imprecise.

© 2005 Prentice Hall12-26 Methods of Observation in Usability Testing Three methods of observation are used. Cooperative observation: The designer watches. The user and the designer may ask each other questions. Observation in a controlled environ- ment: The user thinks out loud. The designer watches without interacting with the user. Observation in a natural environment: The user performs tasks where the product will be used.

© 2005 Prentice Hall12-27 The Interface to the Presentation Layer Although user-computer interaction happens at the automation boundary, user requests must reach the business layer via the presentation layer. What kind of visibility should the objects in the GUI have to the business layer? How shall we connect the application layer to the presentation layer?

© 2005 Prentice Hall12-28 The Interface to the Presentation Layer (continued).

© 2005 Prentice Hall12-29 The Model-View Separation Pattern The Model-View Separation pattern enforces the principle that the layers of the three-tier model should have minimum coupling. It permits only indirect communication from the application layer to the presentation layer.

© 2005 Prentice Hall12-30 The Model-View Separation Pattern (continued).

© 2005 Prentice Hall12-31 Advantages of Model-View Separation Minimizes the impact of interface changes on the application layer; Minimizes the impact of changes to the application logic on the user interface; Permits multiple views of the same application object, such as a spreadsheet and a chart;

© 2005 Prentice Hall12-32 Advantages of Model-View Separation (continued) Permits the application layer to be used with another kind of user interface; Allows parallel development of the user interface and the application layer; and Allows execution of the application logic apart from the normal user interface.

© 2005 Prentice Hall12-33 Model-View Separation – An Example.

© 2005 Prentice Hall12-34 Summary State transition diagrams effectively model the details of user-computer interaction at the automation boundary. Window navigation diagrams model the navigation paths between the windows in a GUI or the pages of a Web site. The Model-View Separation pattern allows only indirect communication from objects in the business layer to those in the presentation layer.