......
UserUser InterfaceInterface DesignDesign withwith UMLUML
FourthFourth WorkshopWorkshop OnOn UMLUML forfor EnterpriseEnterprise ApplicationsApplications
ATC Enterprises, Inc. 7402 Borman Avenue St. Paul, MN 55076 651.554.1771 www.atcenterprises.com UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .ObjectivesObjectives ...... • Process overview and • Tips for detailing use cases and how to handle user interface (UI) requirements • Using UML collaborations for UI design • Identify UI elements • Identify their responsibilities • Identify their relationships • Using Rational Rose, RequisitePro, and SoDA
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved SM TM .AdaptiveAdaptive ...... TeamTeam ...... CollaborativeCollaborative ...... ProcessProcess ...... (ATCP(ATCP...... )) . . . • Practical, agile, and iterative • Extreme Programming (XP) • Use case based and risk driven • Adaptive Software Development (ASD) • Customer-centric and adaptive • Usage-Centered Design (UCD) • Applies practical UML guidance • Object-Oriented Analysis and • Supports MDA through Design (OOAD) traceability strategy and tool • Unified Modeling Language usage (UML) • Based on Software Process • Rational Unified Process (RUP) Engineering Metamodel (SPEM) • Capability Maturity Model (CMM) • Will be available open • UCD adopted ATCP Actor/Role license/freeware UML notation – Oct 2002 • Leverages tool transparency for • http://www.foruse.com/newsletter/for use26.htm real-time measurement
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .SampleSample ...... ATCPATCP ...... WorkflowWorkflow ......
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .UserUser . . . . . Interface.Interface ...... AnalysisAnalysis ...... and.and. . . . DesignDesign...... • ATCP recognizes user interface analysis and design as separate discipline • Follow very similar process pattern as in object-oriented analysis and design • However, do not focus on what happens “inside” system – just at the system boundary • Similar to steps 6-8 in Agile UCD process • Build the content model and navigation map using UML
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .ATCPATCP ...... UserUser ...... InterfaceInterface ...... And And. . . . .MDA MDA......
Requirements Use Model Fine-grainedFine-grained Cases ttraceabiraceabililtyity
UI Analysis Platform Independent Model UIUI ArchiArchitecturetecture // Model (PIM) TransforTransfor mat matiionon RulesRules
UI Design UI Design Platform Specific Model Model #1 Model #2 (PSM) (Platform A) (Platform B)
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .ATCPATCP ...... UseUse . . . . .CaseCase ...... SpecificationSpecification......
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .ATCPATCP ...... UseUse . . . . .CaseCase ...... StepsSteps...... ! Actor-initiated step (user intention) " System response # Alternate condition $ Next step % Loop/iterate
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .UserUser . . . . . Interface.Interface ...... AnalysisAnalysis ...... • Create user interface realization • Identify candidate UI elements • Model role-boundary interaction • Re-factor UI responsibilities • Model UI navigation
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .ArchitectureArchitecture ...... ProcessProcess...... Pattern Pattern...... Given the description of a set of related behaviors • Find candidate components • Describe their services • Describe how they interact • Group them into structures to support their interactions such that their aggregate behavior constitutes the set of behaviors in question
This way of looking at software can be applied at all levels of abstraction and at all degrees of granularity; ATCP applies this viewpoint to derive one model from another
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .CreateCreate ...... UserUser . . . . . Interface.Interface ...... RealizationRealization ...... • Use UML collaboration to capture the behavior and use case structure of the user Register for Event interface model “realizes” • Stereotype the collaboration relationship as <
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .UIUI . . .AnalysisAnalysis ...... Model.Model ...... StereotypesStereotypes ...... • View • Form • List • Menu
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .ModelModel ...... Role Role. . . . .- -.BoundaryBoundary ...... Interaction Interaction...... • Use UML collaboration diagram SystemSystem ResponsibResponsibiliiltiitesies
UserUser IntentIntentionsions 2: display event list( ) 4: display event info( ) 1: view event list( ) 8: display confirmation( ) 3: select event( ) 5: register for event( ) 6: enter attendee info( ) 7: enter payment info( ) 9: confirm registration( )
: Registrant : Event Registration Form
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .AssignAssign ...... UserUser . . . . . Interface.Interface ...... ResponsibilitiesResponsibilities ...... • Use UML class diagram • Look messages that are going to objects • They become responsibilities of the destination object • Model as operations in a class icon
<
confirm registration() display confirmation() display event info() display event list() enter attendee info() Registrant enter payment info() register for event() select event() view event list()
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .ReRe . . .-- Factor.Factor ...... UserUser...... Interface Interface...... ResponsibilitiesResponsibilities...... • We followed a pretty simple guideline to get started • One boundary class per use case per actor • Following this guidelines helps us focus on identifying responsibilities • Inspect them to see if they could be re-factored to a larger number of more fine-grained user interface elements • Support engineering principles • Loosely coupled • Highly cohesive
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .ReRe . . .-- Factor.Factor ...... UserUser...... Interface Interface...... ResponsibilitiesResponsibilities...... 17: view( ) 1: view event list( )
: Registrant : Event Confirmation Message 4: sort by event by date( ) : Attendee View 5: select event( ) 15: confirm registration( ) 16: send( ) 3: display event list( ) 8: register for event( ) 14: display confirmation( ) 10: enter attendee info( ) 11: enter payment info( ) 2: open( ) 12: submit registration( ) 7: display event info( )
13: open( ) : Event List 9: open( ) : Event Confirmation Form 6: open( ) SixSix UIUI eelele m m e e nts nts : Event Details insteainstea d d ofof one!one! : Event Registration Form • Collaboration diagrams show patterns of interaction • Shows relationships in addition to behavior • Easy to draw free hand UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .ReRe . . .-- Factor.Factor ...... UserUser...... Interface Interface...... ResponsibilitiesResponsibilities......
: Registrant : Attendee : Event : Event : Registration : Confirmation : Confirmation View List Details Form Form Message
1: view event list( ) 2: open( ) 3: display event list( ) 4: sort by event by date( ) 5: select event( ) 6: open( ) 7: display event info( ) 8: register for event( ) 9: open( ) 10: enter attendee info( ) 11: enter payment info( ) 12: submit registration( ) 13: open( ) 14: display confirmation( ) 15: confirm registration( ) 16: send( ) 17: view( ) • Sequence diagrams can be easier to read • Do not show relationships • Not as easy to draw free hand UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .ModelModel ...... User User...... InterfaceInterface ...... NavigationNavigation...... • After creating several user interface realizations for a set of use cases • Look for common responsibilities and continue to re-factor • Use generalization and composition • Can create a navigation map that spans multiple use cases for overall flow • Use UML class diagram
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .ModelModel ...... User User...... InterfaceInterface ...... NavigationNavigation...... <
open() display event list() sort by event by date() <
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .UserUser . . . . . Interface.Interface ...... ArchitectureArchitecture ...... • UI architecture patterns • UI architecture mechanisms • UI design patterns • Layout/style/graphic conventions • Controls transformation of PIM to PSM
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .UIUI . . .ArchitectureArchitecture ...... Patterns.Patterns ...... • Business architecture • Software architecture • Knowledge portal • Model-View-Controller (MVC) • Customer service • Layered / n-tiered • Retail sales • Broker • Marketing • Reflection • Communities • Auction • Search • Workflow
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .UIUI . . .ArchitecturalArchitectural ...... MechanismsMechanisms...... • Display object • User support • Window management • Computer-based training • Dialogue support • On-line help • Interactive customer service • Keyboard • • Voice recognition Printing • Handwriting recognition • Personalization • External devices • Session management • Security • Quality of service (QoS) • Error handling • Navigation
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .UserUser . . . . . Interaction.Interaction ...... DesignDesign ...... PatternsPatterns...... • Hypertext • Kiosk • Window • Multiple document • Single document • Interactive voice response (IVR) • Batch • Mobile • Real-time • Personal digital assistant (PDA)
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .MDAMDA ...... ToolTool . . . . . SupportSupport...... • Automatically create UI analysis model structure from use case flows in requirements management tool • Create user interface realization and traceability diagram • Create individual sequence diagrams for each flow • Create single class diagram • Establish traceability from flow in RM tool to sequence diagram in modeling tool • Support instant generation of UI design reports • Capture UI design patterns and architectural mechanisms • Automate transformation from analysis to design • Generate functional UI from design model
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved .Questions?Questions? ......
Thank you for your attention and participation!
UML. . Workshop. . . . 2003: . . User. . Interface . . . Design. . . with . .UML ...... Copyright 2001-2003 ATC Enterprises, Inc., All rights reserved