Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

EA User Group Brussels 2017 - Traceability in Practice

147 views

Published on

https://divetro.nl/enterprise-architect-user-group-presentatie-2017/

Published in: Business
  • Be the first to comment

  • Be the first to like this

EA User Group Brussels 2017 - Traceability in Practice

  1. 1. Brussel 05 October 2017 Traceability in practice workshop Dennis Geluk
  2. 2. www.divetro.nl Roadmap 05/10/2017 3Traceability in practice workshop
  3. 3. www.divetro.nl 05/10/2017 Traceability in practice workshop 4 Repository • Elements • Relations • Diagrams • Relational model (SQL) • Registration of elements, relations and diagrams • Views on repository Global design Enterprise Architect
  4. 4. www.divetro.nl Globale design Enterprise Architect • Delete from diagram ≠ Delete from repository • Not shown / visible ≠ Does not exist in repository • Repository based upon relational database principle • Query opportunity's 05/10/2017 Traceability in practice workshop 5
  5. 5. www.divetro.nl Traceability 05/10/2017 Traceability in practice workshop 6 Traceability is the capability to trace something. In some cases it is interpreted as the ability to verify the history, location, or application of an item by means of documented recorded identification. Other common definitions include the capability (and implementation) of keeping track of a given set or type of information to a given degree, or the ability to chronologically interrelate uniquely identifiable entities in a way that is verifiable.
  6. 6. www.divetro.nl Why • Traceability can reduce costs / time • Impact analyses • New enhancements (of previous requirements) • Start-up time new staff members • Traceability can increase the quality of the model / work • Are all requirements covered? • Are all needs / features covered? 05/10/2017 Traceability in practice workshop 7
  7. 7. www.divetro.nl • Model structure • Composed elements • Naming conventions 05/10/2017 Traceability in practice workshop 8 Traceability in EA Soft • (UML) Relations • Trace relations • Custom relations Hard
  8. 8. www.divetro.nl Structure • Structure will help in • Understandability of the model • Readability of the model • Ways to create structure • Package structure • Composted Elements • Activity / Interaction / Statemachine • Composite Diagram / Nested elements 05/10/2017 Traceability in practice workshop 10
  9. 9. www.divetro.nl Hands-on 1 Start model: TW Model Nr 1 Situation: Snapshot of project without focus on structure Actions: • Try to bring structure into the project • Brief discussion on chosen direction 05/10/2017 Traceability in practice workshop 11 15 minutes
  10. 10. www.divetro.nl Conventions • Conventions will help in • Understandability of the model • Maintainability of the model • Examples • Number ranges for specific domain (parts) • Name conventions for • Elements • Diagrams 05/10/2017 Traceability in practice workshop 12
  11. 11. www.divetro.nl Hands-on 2 Start model: TW Model Nr 2 Situation: Snapshot of project with some structure Actions: • Try to bring more structure into the project with conventions • Brief discussion on chosen direction 05/10/2017 Traceability in practice workshop 13 15 minutes
  12. 12. www.divetro.nl (UML) Relations • Two types of relations • Structural (UML) relations • Explicit <trace> relations • Structural relations • Purpose: registration of common UML structural relations to create a more explicit model • Such as: • Include, Extend relations between use cases • Inheritance relations between classes • (Directed) associations between elements • Realize relations between interface and component • Relation between architectural elements (on different levels) 05/10/2017 Traceability in practice workshop 15 Class1 Class2 Class3 Use Case1 User Use Case2 Use Case3 Use Case4 «include» «extend» «ArchiMate_BusinessProcess» Sell Flowers (from Business Processes) «ArchiM... Record Orders (from Business Processes) «ArchiM... Dispatch Flowers (from Business Processes) «ArchiM... Reserve Stock (from Business Processes) «ArchiMate... Customer Orders Received (from Business Events) «ArchiMate... Flower Selling (from Business Services) «ArchiMate... Flower Delivery Service (from Business Services) «ArchiMate... Business Roles:: Retailer «ArchiMate... Business Actors:: Sales Department «ArchiMate... Business Roles:: Flower Seller «ArchiMate_Realization» «ArchiMate_Realization» «ArchiMate_Assignment»«ArchiMate_Assignment» «ArchiMate_Triggering» «ArchiMate_Triggering» «ArchiMate_UsedBy» «ArchiMate_Triggering» «ArchiMate_UsedBy»
  13. 13. www.divetro.nl (Trace) Relations • Trace relations • Purpose: registration of specific trace relations for traceability reasons • Such as: • Trace relation between needs & features • Trace relation between glossary item & use case • Trace relation between business rule & use case • … 05/10/2017 Traceability in practice workshop 16 Use Case1 GlossaryItem 1 GlossaryItem 2 BusinessRule 1 Business Rule 2 «trace» «trace» «trace» «trace»
  14. 14. www.divetro.nl (Trace) Relations Direction of traceability should be used consistent! There are two ways: 1. Bottom up • Relation from “child” to “parent” • Traceability diagram belongs to “child” 2. Top down • Relation from “parent” to “child” • Traceability diagram belongs to “parent” 05/10/2017 Traceability in practice workshop 17
  15. 15. www.divetro.nl (Trace) Relations 05/10/2017 Traceability in practice workshop 18 Top downBottom up • Impact analyses • Is used by • Review purposes • uses Use Case1 BusinessRule 1 «trace» BusinessRule 1 Use Case1 «trace»
  16. 16. www.divetro.nl Creation of relations Relations can only be created in a limited way: • Single relation • Diagram – Toolbox • Diagram – Quick link menu of (source) Element • Single or bulk • Relationship Matrix (use with proper care) Be aware of not visible relations ☺ 05/10/2017 Traceability in practice workshop 19
  17. 17. www.divetro.nl Hands-on 3 Start model: TW Model Nr 3 Situation: Middle-sized project with some structure and conventions Actions: • Create the relations as descripted (Hands-on 3.docx) • Create traceability diagram • Brief discussion on chosen direction 05/10/2017 Traceability in practice workshop 20 30 minutes
  18. 18. www.divetro.nl Visibility Several ways to visualize traceability: • Straight forward • Diagram • Property - links • Standard traceability window • Plug ins • On demand • Insert related elements • Relationship matrix • SQL query / script 05/10/2017 Traceability in practice workshop 22
  19. 19. www.divetro.nl Property - links Property > Links (for each Element) 05/10/2017 Traceability in practice workshop 23
  20. 20. www.divetro.nl Standard traceability window A “traceability window” can be added to the workspace (Ctrl+Shift+4) • All relations of selected element are shown • Possibilities to navigate to related elements 05/10/2017 Traceability in practice workshop 24
  21. 21. www.divetro.nl Insert related elements “Insert related elements” can be use to construct a traceability diagram based on a root element • Only works from a diagram • Customization is possible 05/10/2017 Traceability in practice workshop 25 MRG-01-01: Geboorteaangifte regels (from 01 MR Groepen) BRG-01-01: Erkenning regels (from 01 BR Groepen) BRG-01-02: Geslachtsnaam regels (from 01 BR Groepen) BRG-01-03: Nationaliteit regels (from 01 BR Groepen) BRG-01-05: Mede- ouderschap regels (from 01 BR Groepen) BRG-01-06: Adres regels (from 01 BR Groepen) BRG-01-07: Moederschap regels (from 01 BR Groepen) BRG-01-10: Registratie regels (from 01 BR Groepen) MRG-01-03: Erkenning regels (from 01 MR Groepen) Business rules Traceability diagram Module 01 Afstamming BR-01-21: Ontbrekend geslacht (from 01 Bedrijfsregels) BR-01-26: Geen dubbele inschrijving in BRP (from 01 Bedrijfsregels) BR-01-31: Geslacht moeder (from 01 Bedrijfsregels) (from 01 Afstamming) KUC001 Registreren geboorte «trace» «trace» «trace» «trace» «trace» «trace» «trace» «trace» «trace» «trace» «trace» «trace» «trace» «trace»
  22. 22. www.divetro.nl Relationship matrix • Feature to construct a matrix of elements and their relations • Examples: • Needs vs. Features • Features vs. Use Cases • The relationship matrix can be used for maintaining relations • Great when creating / deleting a bulk of relations Only works on one relation type at a time 05/10/2017 Traceability in practice workshop 26
  23. 23. www.divetro.nl SQL query / script • Feature to run custom query / scripts on the model • Examples: • All Needs that are not traced to any Feature • All glossary items that are not traced to any other element • … • The feature is very powerful to guard the integrity / quality of your model Not that easy to work with 05/10/2017 Traceability in practice workshop 27
  24. 24. www.divetro.nl 05/10/2017 Traceability in practice workshop 28 Demo
  25. 25. www.divetro.nl Relationship matrix - Overview 05/10/2017 Traceability in practice workshop 29 Package and Element Type for: • Source (horizontal) • Target (vertical) Link Type and Direction of requested relations
  26. 26. www.divetro.nl Best practices • When selected a Row / Column • Note can be shown • Locate in package browser … • Maintaining relations • In general always from a diagram • Only use matrix if diagram becomes unreadable (don’t forget to place a note) • Be aware of the direction of the relation • Use default “Both” as Direction • Wrong relations are shown and can be adjusted • Save commonly used settings as a “profile” 05/10/2017 Traceability in practice workshop 30
  27. 27. www.divetro.nl 05/10/2017 Traceability in practice workshop 31 Demo
  28. 28. www.divetro.nl Hands-on 4 Start model: TW Model Nr 4 Situation: Large (real-life) project with structure, conventions and a lot of relations Actions: • Explore the model • Answer some of the questions (Hands-on 4.docx) • Brief discussion / conclusions / feedback 05/10/2017 Traceability in practice workshop 32 40 minutes
  29. 29. Dennis Geluk dennis.geluk@divetro.nl +31 (0)6 13 476 892 +31 (0)26 443 67 90 www.divetro.nl Parkstraat 74 | 6828 JL Arnhem

×