Domain Modeling                     Augmenting UML, Agile & Usability Engineering..               Welcome!                ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
When to Augment                      Documentation is Abstract Proposed by Project Sponsor.   Specified in Project Request...
When to Augment       Over–Management = Waste    Over–specification:    • Rationale (context)    • Need (requirements)    ...
When to Augment       Eliminate risk and waste!                                                  “We are uncovering better...
When to Augment                     Critical Thinking is Needed...                                             YES! … Agil...
When to Augment                     Critical Thinking is Needed...                                             YES! … Agil...
When to Augment                     Critical Thinking is Needed...                                             YES! … Agil...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?       ...
Methods              A good system development framework:                                                                U...
Methods                Agile focus = the total system.                                                                   U...
Methods                UE focus = the total system use.                                                                   ...
Methods                UML focus = the total system operation.                                  Define                    ...
Methods                All methods analyze the domain a little.                     Domain                                ...
Methods                But the whole domain is much bigger!                     Domain                                  De...
Methods                Complex domain                        strong analysis tool...                               Underst...
Methods              Easy-to-understand domain & system…                                              Notes & Sketches    ...
Methods              If only the GUI is complex, then add...                                                              ...
Methods              If data/functions are complex, then add...                                        UML                ...
Methods              Large, complex, or difficult domain?...            SADT/IDEF0    Language   Beliefs   Assumptions   O...
Methods                 Users must ponder their assumptions?…            SADT/IDEF0       Language   Beliefs   Assumptions...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
Why SADT/IDEF0?                         Long History of Use 1973 – developed for general purpose systems modeling. 1981 – ...
Why SADT/IDEF0?                              Many analysis capabilities 1973 – developed      Extremely strong for: for ge...
Why SADT/IDEF0?                                 Unique modeling ideas 1973 – developed      Extremely strong for:         ...
SADT/IDEF0                            SADT “Features” (1977)Context                                      FeedbackArrow    ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
General Systems                          Definition Transdisciplinary study of systems; Discovering and defining principle...
General Systems                           Brief History Transdisciplinary    1940s – 1950s study of systems;    • Cognitiv...
General Systems                           Some Application Areas Transdisciplinary    1940s – 1950s                       ...
General Systems                               Modeling Examples …            Any kind of system             can be modeled...
General Systems                           Training Model                                                           .      ...
General Systems                           Operations Model                     .                                     .©Ope...
General Systems                       Manufacturing Model                                                       .©OpenProc...
General Systems                       Finance Model©OpenProcess, Inc.   Do not copy. Do not distribute.   Domain Modeling ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
Function-Data Duality                             Box = Function OR Data                     FUNCTION                     ...
Function-Data Duality                                 Box Interface = Data                     FUNCTION                   ...
Function-Data Duality                             Box Interface = Function                     FUNCTION                   ...
Function-Data Duality                                 Same Language for Both                     FUNCTION                 ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
Control versus Input                                  Box Sides = Semantics                     FUNCTION                  ...
Control versus Input                             Function Interface = ICOM                     FUNCTION                   ...
Control versus Input                                Example …                     FUNCTION                                ...
Control versus Input                                Example …                     FUNCTION                                ...
Control versus Input                      Data Interface = CRUD                     .                                     ...
Control versus Input                      CRUD invented in 1973                     .                                     ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
Decomposition in Context                               Make a Boundary                      Build                     Spec...
Decomposition in Context                               Define the Interface                      Build                    ...
Decomposition in Context                                     Add ICOM Codes                     C1                        ...
Decomposition in Context                                     Carry Forward…                     C1                        ...
Decomposition in Context                                     …Now Decompose                     C1                        ...
Decomposition in Context                               The Final Diagram©OpenProcess, Inc.   Do not copy. Do not distribut...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
Small, Focused Models                 Highly Specific Purposes©OpenProcess, Inc.   Do not copy. Do not distribute.   Domai...
Small, Focused Models                        Distinct Subjects…Subject              Boat©OpenProcess, Inc.          Do not...
Small, Focused Models                        Distinct Subjects…                                                           ...
Small, Focused Models                        Real-World Scenarios…Subject              Boat      ThreatScenario           ...
Small, Focused Models                        Real-World Scenarios…                                                        ...
Small, Focused Models                          Behavior within ScenarioSubject               Boat       ThreatScenario    ...
Small, Focused Models                          Behavior within Scenario                                                   ...
Small, Focused Models                                        Common Functions …Subject                         Boat       ...
Small, Focused Models                                        Used in Multiple ModelsSubject                         Boat  ...
Small, Focused Models                                        … Call / Support NotationSubject                         Boat...
Small, Focused Models                                        This is analogous to…Subject                         Boat    ...
Small, Focused Models                                        Object-Oriented MethodsSubject                         Boat  ...
Small, Focused Models                                        System within a ContextSubject                         Boat  ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
Annotations             A Unified Set of Supplements …             Glossary          Diagram                        Text  ...
Annotations             1. Choose a Diagram …             Glossary          Diagram                        Text           ...
Annotations             2. … and its Glossary Page             Glossary           Diagram                        Text     ...
Annotations             3. Write Text Page (in context)             Glossary           Diagram                        Text...
Annotations             4. Highlight Diagram                   Scenario             Glossary           Diagram            ...
Annotations             5. Specify Activation Rules …             Glossary           Diagram                        Text  ...
Annotations          How to Specify Activation Rules                                                                      ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
UML: Objects                  Rules               Interactions                     Aspects                        Glossary...
1. Glossary                   Objects, Classes, Relationships    Object,     Class,          1  Relationship              ...
2. Activations                    Types, Roles, Interfaces    Object,     Class,          1  Relationship                 ...
3. Activations                    Business Rules & Events    Object,     Class,          1  Relationship                  ...
4. Highlights                   Use Cases                         Interaction Diagrams    Object,     Class,          1  R...
5. Objects + Uses + Interactions                                                  Activity Diagrams                       ...
6. Objects + Activity Diagrams                                                   State Machines                           ...
7. Calls & Supports                               Aspects (cross-cutting)                                       5         ...
Correspondence with prior augmentation research                                  5          Activity Diagram              ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
Example                 SADT/IDEF0                         UML Mapping                                 SADT/IDEF0         ...
Example              SADT/IDEF0 Activity Diagram …©OpenProcess, Inc.            Do not copy. Do not distribute.   Domain M...
Example              … Corresponding UML Activity Diagram                                                                 ...
Example              Generating a UML Activity Model   1. Swim Lanes       A. Create an SADT/IDEF0 model.       B. Decompo...
Example              Mechanism Arrows                          Swim Lanes                 Step 1©OpenProcess, Inc.        ...
Example                    Boxes     Activities                                                 Step 2      Machinist     ...
Example                    Context Arrows                     States                          Step 3   Machinist          ...
Example              Controls Arrows                     Control Flow                   Step 4©OpenProcess, Inc.          ...
Example              Input & Output Arrows                      Work Flow                Step 5©OpenProcess, Inc.         ...
Example              Mechanism Arrows                          Swim Lanes                 Step 1                          ...
Example                   Boxes         Activities                                                             Step 2     ...
StepExample                     Context Arrows                           States                                           ...
Example                     Properties               Other States                                                         ...
Example                     Controls Arrows                            Control Flow                                       ...
Example                     Input & Output Arrows                                         Work Flow                       ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
Language                      Assumptions                                Norms                “Work”         3            ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
Rules                    Aspects             Use Cases                             HCI Model         3                    ...
Correspondence with prior augmentation research         3                                                 The             ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
Diagrams                  Notes + Sketches + Comments in Code                                               Workflow      ...
Correspondence with prior augmentation research                                                     Workflow              ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     OUTLINE     • What Methods?     • ...
Domain Modeling                     Augmenting UML, Agile & Usability Engineering..     CLOSING REMARKS     1. Lack of exp...
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering
Upcoming SlideShare
Loading in …5
×

SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering

2,023 views

Published on

Correct and complete context for software engineering requires domain modeling. Structured Analysis and Design Technique (SADT/IDEF0) is a proven way to model any kind of domain. This talk explains how SADT/IDEF0 domain modeling can bring correct and complete domain knowledge, including all required context, to today’s commonplace disciplines of Agile System Development, Unified Modeling Language (UML) methodology, and Usability Engineering methods.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,023
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

SADT & IDEF0 for Augmenting UML, Algile & Usability Engineering

  1. 1. Domain Modeling Augmenting UML, Agile & Usability Engineering.. Welcome! David A. Marca 6th International Conference University of Phoenix Software and Data Technologies ICSOFT 2011, Seville, Spain, 18-21 July College of IS&T Phoenix, Arizona U.S.A. dmarca@email.phoenix.edu References list is given in last three sides. July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 1
  2. 2. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • How to Augment? College of IS&T • Knowledge Acquisition Phoenix, Arizona U.S.A. • Closing Remarks dmarca@email.phoenix.edu July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 2
  3. 3. When to Augment Documentation is Abstract Proposed by Project Sponsor. Specified in Project Request. Designed by Systems Analyst. Produced by Programmers. Installed at User site. What User wanted.©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 3
  4. 4. When to Augment Over–Management = Waste Over–specification: • Rationale (context) • Need (requirements) • Solution (system) Over–management: • Goals (scope, time, $) • Project (coordination) • Results (system)©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 4
  5. 5. When to Augment Eliminate risk and waste! “We are uncovering better ways Over–specification: of developing software by doing it and helping others do it. Through • Rationale (context) this work we have come to value: • Need (requirements) Individuals and interactions over processes and tools. • Solution (system) Working software over comprehensive documentation. Customer collaboration Over–management: over contract negotiation. • Goals (scope, time, $) Responding to change • Project (coordination) over following a plan. • Results (system) That is, while there is value in the items on the right, we value the items on the left more.”©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 5
  6. 6. When to Augment Critical Thinking is Needed... YES! … Agile NO! … MethodsUsers fully understand & can Heavy User Involvement Domain Modelingarticulate the entire domain?Developers fully understand Less Formal Settings Domain Modelingentire problem & its context?Users fully agree on the totality Small Subset of Users Specify Requirementsof what exactly is needed?Developers understand the Notes & Sketches Specify Designstotality of what is needed?Intended technology is robust & Ready-to-Go Technology Validate Assumptionsdevelopers have experience?Solution size/complexity can be Rapid Prototyping Project Managementbuilt within time/cost?Management is aligned & has Real-Time Changes Formal Change Controlno hidden agendas?©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 6
  7. 7. When to Augment Critical Thinking is Needed... YES! … Agile NO! … MethodsUsers fully understand & can Heavy User Involvement Domain Modelingarticulate the entire domain?Developers fully understand Less Formal Settings Domain Modelingentire problem & its context?Users fully agree on the totality Small Subset of Users Specify Requirementsof what exactly is needed?Developers understand the Notes & Sketches Specify Designstotality of what is needed?Intended technology is robust & Ready-to-Go Technology Validate Assumptionsdevelopers have experience?Solution size/complexity can be Rapid Prototyping Project Managementbuilt within time/cost?Management is aligned & has Real-Time Changes Formal Change Controlno hidden agendas?©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 7
  8. 8. When to Augment Critical Thinking is Needed... YES! … Agile NO! … MethodsUsers fully understand & can Heavy User Involvement Domain Modelingarticulate the entire domain?Developers fully understand Less Formal Settings Domain Modelingentire problem & its context?Users fully agree on the totality Small Subset of Users Specify Requirementsof what exactly is needed?Developers understand the Notes & Sketches Specify Designstotality of what is needed?Intended technology is robust & Ready-to-Go Technology Validate Assumptionsdevelopers have experience?Solution size/complexity can be Rapid Prototyping Project Managementbuilt within time/cost?Management is aligned & has Real-Time Changes Formal Change Controlno hidden agendas?©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 8
  9. 9. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • A Good Framework David A. Marca • Agile System Development University of Phoenix • Usability Engineering (UE) College of IS&T • Unified Modeling Language Phoenix, Arizona U.S.A. • The Framework’s Process dmarca@email.phoenix.edu • Domain Size & Complexity? • Why SADT/IDEF0? • Which Features? • How to Augment? • Knowledge Acquisition July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 9
  10. 10. Methods A good system development framework: Unified Modeling Language Usability Engineering Agile Methods©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 10
  11. 11. Methods Agile focus = the total system. Unified Modeling Language Usability Engineering Develop & Agile System Deploy Fast Methods©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 11
  12. 12. Methods UE focus = the total system use. Unified Modeling Language Verify Usability Usage Usability Engineering Develop & Agile System Deploy Fast Methods©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 12
  13. 13. Methods UML focus = the total system operation. Define Unified Modeling Specification Operation Language Verify Usability Usage Usability Engineering Develop & Agile System Deploy Fast Methods©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 13
  14. 14. Methods All methods analyze the domain a little. Domain Define Unified Modeling Specification Operation Language Verify Usability Usage Usability Engineering Develop & Agile System Deploy Fast Methods©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 14
  15. 15. Methods But the whole domain is much bigger! Domain Define Unified Modeling Specification Operation Language Verify Usability Usage Usability Engineering Develop & Agile System Deploy Fast Methods©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 15
  16. 16. Methods Complex domain strong analysis tool... Understand SADT/ Domain Environment IDEF0 Define Unified Modeling Specification Operation Language Verify Usability Usage Usability Engineering Develop & Agile System Deploy Fast Methods©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 16
  17. 17. Methods Easy-to-understand domain & system… Notes & Sketches Explicit Knowledge Final System Agile Development Collaborations©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 17
  18. 18. Methods If only the GUI is complex, then add... UE Notes & Sketches Evaluation Criteria Explicit Knowledge Prototype Final System System Agile Usability Development Evaluation Collaborations Shortcomings©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 18
  19. 19. Methods If data/functions are complex, then add... UML UE Business Model Specifications Evaluation Criteria Explicit Knowledge Prototype Final System System Agile Usability Development Evaluation Collaborations Shortcomings©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 19
  20. 20. Methods Large, complex, or difficult domain?... SADT/IDEF0 Language Beliefs Assumptions Organization Work Tasks Tools System Usage Expectations UML UE Business Model Specifications Evaluation Criteria Explicit Knowledge Prototype Final System System Agile Usability Development Evaluation Collaborations Shortcomings©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 20
  21. 21. Methods Users must ponder their assumptions?… SADT/IDEF0 Language Beliefs Assumptions Organization Work Tasks Tools System Usage Expectations UML UE Business Model Deep Knowledge Specifications Evaluation Criteria Tacit Knowledge Prototype Final System System Author/Reader Agile Usability Cycle Development Evaluation Collaborations Shortcomings HCI Learnings©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 21
  22. 22. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • History University of Phoenix • Capabilities College of IS&T • Unique Concepts Phoenix, Arizona U.S.A. • Features dmarca@email.phoenix.edu • Which Features? • How to Augment? • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 22
  23. 23. Why SADT/IDEF0? Long History of Use 1973 – developed for general purpose systems modeling. 1981 – USAF commissions part of SADT for sheet metal fabrication. 1990 – IDEF0 becomes a widely used standard. 2008 – USAF retires use of IDEF0.©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 23
  24. 24. Why SADT/IDEF0? Many analysis capabilities 1973 – developed Extremely strong for: for general purpose • Domain understanding systems modeling. • Problem identification 1981 – USAF • Solution boundary commissions part of SADT for sheet • Context preservation metal fabrication. • Function reuse • Operating scenarios 1990 – IDEF0 becomes a widely • External events used standard. • Responses (to events) 2008 – USAF retires • Object identification use of IDEF0. • Object encapsulation • Asynchronous review©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 24
  25. 25. Why SADT/IDEF0? Unique modeling ideas 1973 – developed Extremely strong for: Unique concepts: for general purpose • Domain understanding • General systems theory systems modeling. • Problem identification • Function–Data Duality 1981 – USAF • Solution boundary • Control versus Input commissions part of SADT for sheet • Context preservation • Decomposition Context metal fabrication. • Function reuse • Small, Focused Models • Operating scenarios • Author/Reader Cycle 1990 – IDEF0 becomes a widely • External events used standard. • Responses (to events) 2008 – USAF retires • Object identification use of IDEF0. • Object encapsulation • Asynchronous review©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 25
  26. 26. SADT/IDEF0 SADT “Features” (1977)Context FeedbackArrow PipelineTransformControl TunnelMeans To/From AllVerbs NoteNouns FootnotePath Meta-NoteDominance SquiggleRelevance SequenceOmissions NodeBranches ModelJoins Interface To-From ReferenceOR DominanceANDBoundary DescriptionParent HighlightsICOM Glossary IndexCalls©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 26
  27. 27. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • General Systems College of IS&T • Function–Data Duality Phoenix, Arizona U.S.A. • Control versus Input dmarca@email.phoenix.edu • Decomposition Context • Small, Focused Models • How to Augment? • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 27
  28. 28. General Systems Definition Transdisciplinary study of systems; Discovering and defining principles; Can be applied to all systems and associated fields of R&D and application.©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 28
  29. 29. General Systems Brief History Transdisciplinary 1940s – 1950s study of systems; • Cognitive Science • Wieners Cybernetics Discovering and • Society was Formed defining principles; • Ashbys Cybernetics . 1960s – 1970s Can be applied • Bertalanffys G.S.T. to all systems • Second-order Logic • Catastrophe Theory and . 1980s – 1990s associated fields • Chaos Theory of R&D and • Context Theory application. • Adaptive Systems©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 29
  30. 30. General Systems Some Application Areas Transdisciplinary 1940s – 1950s • Galactic study of systems; • Cognitive Science • Planetary • Wieners Cybernetics • Biological Discovering and • Society was Formed . defining principles; • Ashbys Cybernetics • Power . • Electrical 1960s – 1970s • Water Can be applied • Bertalanffys G.S.T. . to all systems • Economic • Second-order Logic • Catastrophe Theory • Government and . • Judicial 1980s – 1990s . associated fields • Chaos Theory • Commerce of R&D and • Context Theory • Manufacturing application. • Adaptive Systems • Software©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 30
  31. 31. General Systems Modeling Examples … Any kind of system can be modeled . using SADT/IDEF0 . .©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 31
  32. 32. General Systems Training Model . . .©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 32
  33. 33. General Systems Operations Model . .©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 33
  34. 34. General Systems Manufacturing Model .©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 34
  35. 35. General Systems Finance Model©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 35
  36. 36. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • General Systems College of IS&T • Function–Data Duality Phoenix, Arizona U.S.A. • Control versus Input dmarca@email.phoenix.edu • Decomposition Context • Small, Focused Models • How to Augment? • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 36
  37. 37. Function-Data Duality Box = Function OR Data FUNCTION DATA Function Data©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 37
  38. 38. Function-Data Duality Box Interface = Data FUNCTION DATA Data Data Data Function Data Realization©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 38
  39. 39. Function-Data Duality Box Interface = Function FUNCTION DATA Function Function Function Function Data Realization©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 39
  40. 40. Function-Data Duality Same Language for Both FUNCTION DATA Data Function Data Data Function Function Function Data Realization Realization©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 40
  41. 41. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • General Systems College of IS&T • Function–Data Duality Phoenix, Arizona U.S.A. • Control versus Input dmarca@email.phoenix.edu • Decomposition Context • Small, Focused Models • How to Augment? • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 41
  42. 42. Control versus Input Box Sides = Semantics FUNCTION DATA Data Function Data Data Function Function Function Data Realization Realization©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 42
  43. 43. Control versus Input Function Interface = ICOM FUNCTION . Control Input Output Function Mechanism©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 43
  44. 44. Control versus Input Example … FUNCTION . Control What goes here? Input Output Food Dish Function Cook Mechanism Stove, Utensils©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 44
  45. 45. Control versus Input Example … FUNCTION . Control Recipe Input Output Food Dish Function Cook Mechanism Stove, Utensils©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 45
  46. 46. Control versus Input Data Interface = CRUD . DATA Create, Delete Update Read Data Store©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 46
  47. 47. Control versus Input CRUD invented in 1973 . DATA Create, Delete Update Read Data Store©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 47
  48. 48. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • General Systems College of IS&T • Function–Data Duality Phoenix, Arizona U.S.A. • Control versus Input dmarca@email.phoenix.edu • Decomposition Context • Small, Focused Models • How to Augment? • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 48
  49. 49. Decomposition in Context Make a Boundary Build Special Part©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 49
  50. 50. Decomposition in Context Define the Interface Build Special Part©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 50
  51. 51. Decomposition in Context Add ICOM Codes C1 C2 I1 Build O1 I2 Special Part O2 M1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 51
  52. 52. Decomposition in Context Carry Forward… C1 C2 I1 O1 I2 O2 M1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 52
  53. 53. Decomposition in Context …Now Decompose C1 C2 I1 O1 I2 O2 M1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 53
  54. 54. Decomposition in Context The Final Diagram©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 54
  55. 55. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • General Systems College of IS&T • Function–Data Duality Phoenix, Arizona U.S.A. • Control versus Input dmarca@email.phoenix.edu • Decomposition Context • Small, Focused Models • How to Augment? • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 55
  56. 56. Small, Focused Models Highly Specific Purposes©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 56
  57. 57. Small, Focused Models Distinct Subjects…Subject Boat©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 57
  58. 58. Small, Focused Models Distinct Subjects… Mode-Based DescriptionsSubject Boat©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 58
  59. 59. Small, Focused Models Real-World Scenarios…Subject Boat ThreatScenario CBDR©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 59
  60. 60. Small, Focused Models Real-World Scenarios… 2+ Subjects InteractingSubject Boat ThreatScenario CBDR©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 60
  61. 61. Small, Focused Models Behavior within ScenarioSubject Boat ThreatScenario CBDRBehavior Defend©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 61
  62. 62. Small, Focused Models Behavior within Scenario State-Based DescriptionsSubject Boat ThreatScenario CBDRBehavior Defend©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 62
  63. 63. Small, Focused Models Common Functions …Subject Boat ThreatScenario CBDRBehavior DefendFunction Maneuver Attack©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 63
  64. 64. Small, Focused Models Used in Multiple ModelsSubject Boat Threat Weapon CMScenario CBDRBehavior DefendFunction Maneuver Attack©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 64
  65. 65. Small, Focused Models … Call / Support NotationSubject Boat Threat Weapon CMScenario CBDRBehavior DefendFunction Maneuver Attack©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 65
  66. 66. Small, Focused Models This is analogous to…Subject Boat Threat Weapon CMScenario CBDRBehavior DefendFunction Maneuver Attack©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 66
  67. 67. Small, Focused Models Object-Oriented MethodsSubject Boat Threat Weapon CM ObjectScenario CBDR EventBehavior Defend ResponseFunction Maneuver Attack Subroutine©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 67
  68. 68. Small, Focused Models System within a ContextSubject Boat Threat Weapon CMScenario CBDRBehavior DefendFunction Maneuver Attack Emergency Preset©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 68
  69. 69. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • How to Augment? College of IS&T • Annotations Phoenix, Arizona U.S.A. • UML dmarca@email.phoenix.edu • Ethnography • Usability Engineering • Agile Development • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 69
  70. 70. Annotations A Unified Set of Supplements … Glossary Diagram Text Highlight Activation©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 70
  71. 71. Annotations 1. Choose a Diagram … Glossary Diagram Text Highlight Activation©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 71
  72. 72. Annotations 2. … and its Glossary Page Glossary Diagram Text Highlight Activation©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 72
  73. 73. Annotations 3. Write Text Page (in context) Glossary Diagram Text Highlight Activation©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 73
  74. 74. Annotations 4. Highlight Diagram Scenario Glossary Diagram Text Highlight Activation©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 74
  75. 75. Annotations 5. Specify Activation Rules … Glossary Diagram Text Highlight Activation©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 75
  76. 76. Annotations How to Specify Activation Rules Blueprint C1 Machine Selected on Floor Pick Machine I1 Machine 1 O1 R1: 1I1 + 1C1 1O1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 76
  77. 77. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • How to Augment? College of IS&T • Annotations Phoenix, Arizona U.S.A. • UML dmarca@email.phoenix.edu • Ethnography • Usability Engineering • Agile Development • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 77
  78. 78. UML: Objects Rules Interactions Aspects Glossary-3 Diagram-3 Text-3 Glossary-2 Diagram-2 Text-2 Glossary-1 Diagram-1 Text-1 Highlight-3 Highlight-2 Highlight-1 Activation- 3 Activation- 2 Activation- 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 78
  79. 79. 1. Glossary Objects, Classes, Relationships Object, Class, 1 Relationship Glossary-3 Diagram-3 Text-3 Glossary-2 Diagram-2 Text-2 Glossary-1 Diagram-1 Text-1 Highlight-3 Highlight-2 Highlight-1 Activation- 3 Activation- 2 Activation- 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 79
  80. 80. 2. Activations Types, Roles, Interfaces Object, Class, 1 Relationship Glossary-3 Diagram-3 Text-3 Glossary-2 Diagram-2 Text-2 Glossary-1 Diagram-1 Text-1 Highlight-3 Highlight-2 Highlight-1 Activation- 3 Activation- Types, Roles, 2 2 Activation- Interfaces 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 80
  81. 81. 3. Activations Business Rules & Events Object, Class, 1 Relationship Glossary-3 Diagram-3 Text-3 Glossary-2 Diagram-2 Text-2 Glossary-1 Diagram-1 Text-1 Highlight-3 Highlight-2 Highlight-1 Activation- 3 Activation- Types, Roles, 2 2 3 Business Activation- Interfaces Rule / Event 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 81
  82. 82. 4. Highlights Use Cases Interaction Diagrams Object, Class, 1 Relationship Glossary-3 Diagram-3 Text-3 Glossary-2 Diagram-2 Text-2 Glossary-1 Diagram-1 Text-1 4 Highlight-3 Use Case & Highlight-2 Interaction Highlight-1 Activation- 3 Activation- Types, Roles, 2 2 3 Business Activation- Interfaces Rule / Event 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 82
  83. 83. 5. Objects + Uses + Interactions Activity Diagrams 5 Activity Diagram 5 Object, Class, 1 Relationship Glossary-3 Diagram-3 Text-3 Glossary-2 Diagram-2 Text-2 Glossary-1 Diagram-1 Text-1 4 Highlight-3 Use Case & Highlight-2 Interaction Highlight-1 Activation- 3 Activation- Types, Roles, 2 2 3 Business Activation- Interfaces Rule / Event 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 83
  84. 84. 6. Objects + Activity Diagrams State Machines 5 Activity Diagram 5 & State Machine 6 Object, Class, 1 Relationship Glossary-3 Diagram-3 Text-3 Glossary-2 Diagram-2 Text-2 Glossary-1 Diagram-1 Text-1 4 Highlight-3 Use Case & Highlight-2 Interaction Highlight-1 Activation- 3 Activation- Types, Roles, 2 2 3 Business Activation- Interfaces Rule / Event 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 84
  85. 85. 7. Calls & Supports Aspects (cross-cutting) 5 Activity Diagram 5 & State Machine 6 7 Object, Class, 1 Aspect Relationship Glossary-3 Diagram-3 Text-3 Glossary-2 Diagram-2 Text-2 Glossary-1 Diagram-1 Text-1 4 Highlight-3 Use Case & Highlight-2 Interaction Highlight-1 Activation- 3 Activation- Types, Roles, 2 2 3 Business Activation- Interfaces Rule / Event 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 85
  86. 86. Correspondence with prior augmentation research 5 Activity Diagram 5 & State Machine 6 7 Object, Class, 1 Aspect Relationship Domain General Formal Glossary-3 Diagram-3 Text-3 Ontology background descriptions of Glossary-2 Database Diagram-2 knowledge base Text-2 the domain (Brockmans’06) Glossary-1 with reasoning Diagram-1 (Bryant’03) Text-1 logic (Süß’04), 4 HowHighlight-3 and why Use Case & people do the Interaction Highlight-2 work that they do Highlight-1 (Larsen’99), In-context: Activation- ● business rules 3 Activation- Types, Roles, (Skersys’05) 2 Business 2 3 Interfaces ● Activation- decision-making Rule / Event 1 rules (Kestutis’09)©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 86
  87. 87. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • How to Augment? College of IS&T • Annotations Phoenix, Arizona U.S.A. • UML Example dmarca@email.phoenix.edu • Ethnography • Usability Engineering • Agile Development • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 87
  88. 88. Example SADT/IDEF0 UML Mapping SADT/IDEF0 UML (activity diagram) (activity diagram)Function / Activity Box LozengeData Arrow Arrow Context Arrow,State Circle Property LabelData Split & Join Arrow Intersection BarControl Flow Control Output XWork Flow Input Output Solid Line Rational UnifiedKnowledge Acquisition Author / Reader Cycle Process©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 88
  89. 89. Example SADT/IDEF0 Activity Diagram …©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 89
  90. 90. Example … Corresponding UML Activity Diagram Job Note how neat and uncluttered Plan Job this diagram looks…you can Status Evaluate Job Progress easily see how: Next Yes 1) Next Step governs all of the Step Finished? steps involved with machining. No 2) Machining Result feeds Pick Tools back to Evaluate Job Progress. Machines 3) Ready Machine Place must & Tools happen before the Machine & Assemble step can begin. Setup Machining Place Neatness and clarity happen Materials Ready because you did all the hard Machine analytical thinking using the Place SADT/IDEF0 methodology. Machine & Assemble Machining Result Finished Job©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 90
  91. 91. Example Generating a UML Activity Model 1. Swim Lanes A. Create an SADT/IDEF0 model. B. Decompose until one mechanism = one role. C. Use these mechanism arrows to create swim lanes. . 2. Activities A. Decompose the SADT/IDEF0 model until purpose is met. B. Make an SADT/IDEF0 schematic of a set of diagrams. C. Add activities to swim lanes from the diagrams. . 3. States A. Add property labels (how often/fast/much/well) to arrows. B. Context arrows start/end states. Properties other states. C. Attach states to activities in each lane. . 4. Flows & Messages A. Add annotations to define scenarios. B. Use input & output arrows to create object flows. C. Use control arrows to create messages.©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 91
  92. 92. Example Mechanism Arrows Swim Lanes Step 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 92
  93. 93. Example Boxes Activities Step 2 Machinist Request ApprovalKit Plans Estimates Part Status Materials Standards Machines & Tools Job Scrap Job©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 93
  94. 94. Example Context Arrows States Step 3 Machinist Request ApprovalKit Plans Estimates Part Status Materials Standards Machines & Tools Job Scrap Job©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 94
  95. 95. Example Controls Arrows Control Flow Step 4©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 95
  96. 96. Example Input & Output Arrows Work Flow Step 5©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 96
  97. 97. Example Mechanism Arrows Swim Lanes Step 1 Build Special Part Manage Job Foreman Complete Kit Machinist Inspect Job Inspector©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 97
  98. 98. Example Boxes Activities Step 2 Build Special Part Manage Job Foreman Receive & Review Kit Estimate Monitor Complete Assign & Plan Job Job Work Job Complete Kit Machinist Evaluate Pick Setup Machine & Progress Tools Machining Assemble Inspect Job Inspector Measure Appraise Accept or Assess Stage Dimensions Work Reject©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 98
  99. 99. StepExample Context Arrows States 3a Build Special Part Machinist Request Manage Job Foreman Receive & Review Kit Estimate Monitor Complete Assign & Plan Job Job Work Job Estimates Kit Materials Complete Kit Machinist Evaluate Pick Setup Machine & Progress Tools Machining Assemble Part Tools Machines Standards Inspect Job Inspector Measure Appraise Accept or Assess Stage Dimensions Work Reject Approval©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 99
  100. 100. Example Properties Other States Step 3b Build Special Part Machinist Request Manage Job Foreman Receive & Review Kit Estimate Monitor Complete Assign & Plan Job Job Work Job Estimates Kit Materials Complete Kit Machinist Evaluate Pick Setup Machine & Progress Tools Machining Assemble Ready Part Place Tools Machines Standards Inspect Job Inspector Measure Appraise Accept or Assess Stage Dimensions Work Reject Approval©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 100
  101. 101. Example Controls Arrows Control Flow Step 4 Build Special Part Machinist Request Manage Job Foreman Receive & Review Kit Estimate Monitor Complete Assign & Plan Job Job Work Job Plans Status Estimates Kit Materials Complete Kit Machinist Evaluate Pick Setup Machine & Progress Tools Machining Assemble Ready Part Place Tools Machines Standards Inspect Job Inspector Measure Appraise Accept or Assess Stage Dimensions Work Reject Approval©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 101
  102. 102. Example Input & Output Arrows Work Flow Step 5 Build Special Part Machinist Request Manage Job Foreman Receive & Review Kit Estimate Monitor Complete Assign & Plan Job Job Work Job Plans Status Estimates Kit Materials Complete Kit Job Machinist Evaluate Pick Setup Machine & Progress Tools Machining Assemble Ready Part Place Tools Machines Standards Scrap Inspect Job Inspector Assess Measure Appraise Accept or Stage Dimensions Work Reject Approval©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 102
  103. 103. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • How to Augment? College of IS&T • Annotations Phoenix, Arizona U.S.A. • UML dmarca@email.phoenix.edu • Ethnography • Usability Engineering • Agile Development • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 103
  104. 104. Language Assumptions Norms “Work” 3 The Work 2 Work 7 Aspect Artifact Glossary-3 Diagram-3 Text-3 1 2 Native Glossary-2 Diagram-2 Text-2 Field Language Glossary-1 Diagram-1 Text-1 Notes Traditions Highlight-3 4 Fundamental Highlight-2 Assumption Highlight-1 Coupling & Cohesion 5 Pathology Activation- 6 3 Activation- Cultural 2 Activation- Norms 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 104
  105. 105. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • How to Augment? College of IS&T • Annotations Phoenix, Arizona U.S.A. • BPML dmarca@email.phoenix.edu • Ethnography • Usability Engineering • Agile Development • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 105
  106. 106. Rules Aspects Use Cases HCI Model 3 The Work 2 Work 7 Aspect Artifact Glossary-3 Diagram-3 Text-3 1 2 Native Glossary-2 Diagram-2 Text-2 Field Language Glossary-1 Diagram-1 Text-1 Notes Traditions Highlight-3 Use 4 Highlight-2 Case Fundamental Assumption 8 Highlight-1 Coupling & Cohesion 5 9 HCI Pathology Model Activation- 6 3 6 Activation- Cultural 2 Business Activation- Norms Rule / Event 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 106
  107. 107. Correspondence with prior augmentation research 3 The Work 2 Work 7 Aspect Artifact Information: note Glossary-3 Domain model Diagram-3 Patterns that Text-3 1 how it differs from syntax/semantics unify aspects 2 Native Glossary-2 Diagram-2 Text-2 Field context-to-context for consistency of usage by via Language Glossary-1 Diagram-1 Text-1 Notes (Najar’09) across models a set of themes (Medvidovic’99) (Baniassad’04) Context-based UI Highlight-3 Use 4 Traditions navigation space Case Fundamental Highlight-2 & UI presentation 8 Assumption Highlight-1 Coupling & Cohesion models (Koch’01) 5 9 HCI Pathology Model UI design trade-offs via patterns (Abraham’09). Activation- 6 In-context problem-solution pairs (Abraham’09). 3 6 Activation- Cultural Claims library for UI design reuse (Wahid, 2006). 2 Business Activation- Norms Rule / Event 1©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 107
  108. 108. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • How to Augment? College of IS&T • Annotations Phoenix, Arizona U.S.A. • BPML dmarca@email.phoenix.edu • Ethnography • Usability Engineering • Agile Development • Knowledge Acquisition • Closing Remarks July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 108
  109. 109. Diagrams Notes + Sketches + Comments in Code Workflow Notes/Sketch 3 1 DB Object Subroutine & Relation 6 Glossary-3 Diagram-3 Text-3 Glossary-2 Diagram-2 Text-2 Header / Block Glossary-1 Diagram-1 Text-1 Comment 7 Highlight-3 System Use Highlight-2 Notes/Sketch 2 Highlight-1 GUI Prototype Activation- 5 3 Activation- 2 Rule as Activation- RPC Code 1 4©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 109
  110. 110. Correspondence with prior augmentation research Workflow Notes/Sketch 3 1 DB Object Subroutine & Relation 6 Make & keep Glossary-3 Document the Diagram-3 Publish vital Text-3 fixed the major knowledge of documentation Glossary-2 Diagram-2 Text-2 Header / Block object decisions domain & user’s in the prototype Glossary-1 Diagram-1 Text-1 Comment (Reifer’03) self-reflection (Warstaa’03) 7 (Wells’02) (Friedrich’07) Document tacit Highlight-3 System Use assumptions Notes/Sketch Highlight-2 (Dingsøyr’02) & 2 Highlight-1 self-reflection (Salo’04) GUI Prototype Document design Activation- 5 knowledge with 3 Activation- specifications 2 Rule as Activation- (Scacchi’02) & RPC Code 1 tools (Bryant’06) 4©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 110
  111. 111. Domain Modeling Augmenting UML, Agile & Usability Engineering.. OUTLINE • What Methods? • Why SADT/IDEF0? David A. Marca • Which Features? University of Phoenix • How to Augment? College of IS&T • Knowledge Acquisition Phoenix, Arizona U.S.A. • Closing Remarks dmarca@email.phoenix.edu July, 2011©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 111
  112. 112. Domain Modeling Augmenting UML, Agile & Usability Engineering.. CLOSING REMARKS 1. Lack of explicit understanding or agreement? 2. Analyze the context of the “context” (the context around event-response, problem-solution, system usage). 3. Use a general purpose domain modeling methodology. 4. Create descriptions that augment UML, UE, agile. 5. “Be agile with agile.” (Francisco Rebella de Andrade)©OpenProcess, Inc. Do not copy. Do not distribute. Domain Modeling – A Lost Art, 112

×