Hi my name is Scott Hebbard and this webinar will discuss requirements management in
Enterprise Architect 13
Many requirements start life as a handwritten diagram,
a post-it note, email or an office document.
Enterprise Architect can help bring all of these elements
together under a unified platform offering collaboration, traceability,
change management, and impact analysis.
A shuttle launch example has been used to illustrate how to store, discuss and
manage requirements in Enterprise Architect 13.
Allowing all Stakeholders to contribute
to the development of a robust set of requirements.
Enterprise Architect 13 provides powerful tools for requirements management and
activities associated with discovering, evaluating,
analyzing and reporting on your project requirements.
The specification manager helps you to
rapidly build your specification using a familiar text based editor.
A requirements diagram helps convey information
about your requirements to key stakeholders.
We examine the structure of a requirement and see how to analyze
information presented in a requirements diagram
to help you make better decisions.
We apply various visualization techniques including Diagram Filters and
Diagram Legends to help convey information
about requirements within a model.
Traceability helps us to understand the impact that change may have on our model.
We will also look at the Traceability window and the innovative Time Aware Modeling
capability available in Enterprise Architect 13.
At the conclusion of the webinar you
should have a better understanding of some of the requirements management
tools available in Enterprise Architect 13.
Let's start by taking a closer look at the Specification Manager
For those of you unfamiliar with the Ribbon Interface,
simply type a word to find the command or Tool you're looking for, or in this case
Specification.
All the tools you need are now at your fingertips.
Once we open the specification view.
We can navigate to the package, we need to edit or review.
Many of you will be comfortable with writing specifications in Word documents
or even spreadsheets -
but you've probably also felt the pain of reduced traceability involved with
the document centric approach.
This is where the specification manager in
Enterprise Architect can help...
It gives you the familia document editing environment, while also making it easy
to connect your project requirements to
Downstream Design and Implementation Models.
As you can see it's very easy to update requirement names, edit notes, address
spelling mistakes and create new glossary terms.
For example I'm defining the term freezing to ensure that it is not
confused with the term Absolute Zero and uses a metric value.
Without clarity these requirements become ambiguous,
which can lead to software problems.
Use the Field Chooser to add additional information about requirements such as a
Version number or Priority.
The specification Manager makes the process of reviewing or proof reading and
editing requirements quite simple.
Now let's take a look at a requirements diagram.
The package diagram on screen helps to sort the
requirements into logical containers such as Functional
and Non-Functional requirements and a use Case Model.
Our Functional Requirements are further broken up into
Console safety and Launch Pad Management.
The Requirements diagram on-screen is used to convey visual information about the
Status of each requirement. All the connectors describe the relationships
that exist between the various model elements.
Each requirement includes a
name for identification
a detailed description and can link to glossary terms to ensure the
requirements definition is well understood by all stakeholders.
The main tab contains rich metadata, that describes properties such as type,
status or the difficulty, vision, and phase.
Any change to the status of a requirement will result in that element
color changing on the diagram accordingly.
This visual information allows us to glance at
the diagram and understand why requirements are
important and how they are connected to other model elements.
You also have the ability to create your own
custom types to better suit the needs of your project.
For example there are many requirements in a Shuttle Launch System,
that need to be approved by the Launch Director.
So I'm going to create a new custom status
called "Approved by Launch Director".
Simply provide a status description and color
for your new type and save the results.
We can now use the status approved by launch director throughout our project.
The requirements diagram now reflect
the custom status, that we've just created.
Diagram Legends can be used to overlay
supplementary visual information on a diagram.
For example we can easily identify the priority of all requirements shown on screen.
Different color has been assigned to represent High, Medium and Low priorities.
Select the apply auto color check-box to enable the Diagram legend, and click OK.
You can customize the options to suit your individual needs including changing
the colors of connectors. The diagram legend makes it easy to see that there
are four high priority requirements that need attention, two low priority
requirements and three medium priority requirements.
Enterprise Architect provides a number of tools,
that make it easy to review requirement properties.
Diagram Filters are available from the "Layout" Ribbon in Enterprise Architect 13.
They allow you to quickly display all
and easily modify the appearance of a diagram.
For example we can display all requirements that were authored by Scott.
Looking at the properties for requirement 27 is being written by Scott.
We can quickly modify the filter to identify which elements have been
written by Tom
It is also possible to filter on properties such as Type, Status
Alias, Difficulty, Version and even Custom Tag Values.
Many Business analyst often need Custom attributes
are properties that meet the needs of a specific project.
In Enterprise Architect these custom attributes are provided by Tag Values.
Tag values are additional properties that can be
assigned to UML elements and connectors.
On screen I've created a number of filters that evaluate Tag Values.
For example the requirement "Manage User Accounts" has a tag value called
"shown in webinar", which is set to true.
When I enable the filter "Manage User Accounts" is
highlighted on screen.
I can also quickly identify which requirements have been approved or
denied by the Launch Director.
Enterprise Architect 13 introduces diagram filter groups and also offers
logical operator for filtering groups.
This allows me to quickly determine which requirements have been written by
Scott, which requirements have been written by Tom.
We can also select the group of filters to see
which requirements have been written by Tom or Scott.
Obviously when we change a Logical Operator the filter produces a different result.
Filtering on Tag Values provides enormous flexibility and can be applied
to Cost, Regulations, or even your own custom settings.
I want to briefly show you how to create a tag Value filter based on a set Milestone.
We are going to create a Filter called Check Milestone,
the Active Filter Set is on Tag Value,
the property is going to be equal to Milestone.
While the value is set to "Completed On time".
Now, I will find "Check Milestone Filter".
It highlights a requirement,
that has been Completed On Time.
Charts are another tool, we can use to analyze
the aggregate results from our requirements model.
On screen we have a simple chart, that outlines how many
requirements have been written by Staff.
I'm going to update the Chart to look at the Console Operation Package and including
any Child packages that may exist.
This Chart is dynamically generated.
It shows selected properties of the model elements.
If I happen to update my model or a given diagram.
I can refresh the chart and I'll be able to automatically see those changes
reflected in the Chart Results, which in this case will see the number of
elements Authored by Scott Hebbard increase by 1.
The standard chart element is available from the toolbox.
Simply drag the chart element onto the diagram.
Select your desired chart type and configure the data source accordingly.
Enterprise Architect can create a number of different charts including Pie Charts,
Bar Charts and Line Graphs.
Another tool that can help improve requirements design is a checklist.
The Requirements Checklist is convenient element,
that can track if a requirement complies
with a set of predefined measures including
whether Requirement is Atomic, Cohesive, Traceable, and Verifiable.
You can add additional items such as "Peer Reviewed"
and specify whether it's greyed or use the strikeout feature.
When working with requirements it is sometimes very useful to refer to a
common set of 'best practices' and qualities, that help define the nature of
a well-formed specification.
The requirement checklist element is designed to meet this need.
In this webinar we've looked at how the Specification Manager can edit and review requirements.
We've shown, how the requirements diagram helps convey rich information about the
Status and custom attributes to key stakeholders.
We looked at a diagram
Filters and Diagram legends can be applied
to learn more about our requirements.
Now I had to take a look at traceability and discuss the typical scenario that
might be familiar to many BA's.
Looking at the discussion section of
Enterprise Architect I can see, that someone on the team has identified,
that a requirement is incorrect.
You can see that this requirement is wrong because the wind speed is not
calculated at the launch and landing site.
The launch can't be aborted safely, if the shuttle can't land.
So the developers said they'll fix it.
The Time Aware Modeling feature allows analyst to create incremental versions
of their models providing easy access to tools that facilitate the migration of
elements from multiple versions.
The first step is to clone a structure as a new version.
When using Time Aware Modeling in a model.
You will typically want to create a new vision of a group of elements that
are collected together in one or more packages.
So I'm going to clone my safety Operation Management Package.
I shall rename the heading
and then filter the diagram to only show vision 2 elements.
This makes it very easy to compare As-Is and To-Be models.
I shall now clone an element
as version 2.0 and make the appropriate changes
I'm going to change the name of the requirement,
then the author and make a few other minor changes.
I can now repeat the process and clone version 3
of the Safety Operations Requirements package.
Enterprise Architect now makes it easy to see the evolution of a model over
different versions and create new versions of model elements automatically
without offering the underlying structure of the As-Is model.
This gives an analyst greater control over
the evolution and traceability of your overall model.
Once again I plan on changing the heading
and then cloning a new element
making changes to the cross wind speeds
at both the launch and landing site.
I can also edit the notes of the requirement and change a priority.
This is an example where an element discussion has led to a series of
requirement changes to improve safety.
Once the shuttle launches to abort the mission it must be able to land safely
and this is not possible if wind speeds is to high at the landing site.
The diagram now clearly indicates which elements have been updated to version 3
and you can easily do a side-by-side comparison to see how a diagram has
evolved from one generation to the next.
Requirement number 27 has changed
over all three visions of our model.
How can you trace a particular
requirement that has changed over time.
You can use the Insert Related Elements tool to easily build your own
Traceability diagram and show the evolution of a requirement over time.
Simply set the depth level. Now for this example I'm interested in Traces.
Remember to press the refresh button to sign up to that list of items.
Select the items that you want to appear on your diagram and click OK to automatically
generate your traceability diagram.
Traceability diagrams can be used to conduct an impact analysis.
It is also possible to bring up the relationships window.
If you want a quick overview of the relationships of one or more elements in
your model you can obtain this from the relationships window,
This window lists all of the relationships of the elements currently
selected in the diagram.
Often the project browser showing the relationship type, the direction of the
relationship in a stereotype on the relationship
the names of the source and target elements in the relationship and
characteristics of the source and diagonal elements such as type,
stereotype, role, and cardinality.
So we've used Enterprise Architect to automatically generate a Traceability Diagram,
that shows how requirement has evolved at the time.
Time Aware Models offer enormous potential to modelers
and we look forward to hearing feedback
about how you choose to use them in your projects.
For more information about Requirements Management
or Enterprise Architect 13.
Visits Sparx Systems website on www.sparxsystems.com