ea user group brussels 2017 - traceability in practice
TRANSCRIPT
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
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.
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
• 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
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
(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...
Reserv e Stock
(from Business
Processes)
«ArchiMate...
Customer Orders
Receiv ed
(from Business
Events)
«ArchiMate...
Flower Selling
(from Business
Services)
«ArchiMate...
Flower Deliv ery
Serv ice
(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»
ww
w.d
ivetr
o.n
l
(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»
ww
w.d
ivetr
o.n
l
(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
ww
w.d
ivetr
o.n
l
(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»
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
Property - links
Property > Links (for each Element)
05/10/2017 Traceability in practice workshop 23
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
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
inschrijv ing 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»
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
Relationship matrix - Overview
05/10/2017 Traceability in practice workshop 29
Package and Element Typefor:• Source (horizontal)• Target (vertical)
Link Type and Direction of requested relations
ww
w.d
ivetr
o.n
l
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
ww
w.d
ivetr
o.n
l
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
Dennis Geluk
+31 (0)6 13 476 892
+31 (0)26 443 67 90ww
w.d
ivetr
o.n
l
Parkstraat 74 | 6828 JL Arnhem