Sunteți pe pagina 1din 9

CSSE5033

February 21, 2012

Software & Systems Requirements Engineering


In Practice
Brian Berenbach, Daniel J. Paulish, Juergen Kazmeier, Arnold Rudorfer
McGraw-Hill, 2009

Outline
Introduction RE taxonomy RE artifact model Using the artifact model Using templates for requirements artifacts Dynamic tailoring of an artifact model Organizational artifact model tailoring Creating a system life cycle process Tips for RE artifact modeling
Dr. Ali Afzal Malik, FIT, UCP 2

Chapter 2 Requirements Engineering Artifact Modeling Dr. Ali Afzal Malik

February 21, 2012

Introduction
Purpose of RE artifact modeling
Define a reference model for RE that provides the core set of RE artifacts (work products) and their interdependencies Guide the establishment & maintenance of product- and project-specific RE processes

RE Taxonomy [1]
A taxonomy is a collection of controlled vocabulary terms organized into a hierarchical structure
Used to classify things

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

Requirements Engineering

CSSE5033

February 21, 2012

RE Taxonomy [2]
In well-structured taxonomies, each term has only one parent Poly-hierarchies may be used in case of need A term can appear in more than one place in a taxonomy

RE Taxonomy [3]
There may be multiple ways of representing concepts

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

RE Taxonomy [4]
Glossary vs. taxonomy
Glossary: terms are listed alphabetically and defined Taxonomy: terms are grouped into classifications

RE Taxonomy [5]
A complete RE taxonomy includes
Categorization of requirements types Classification of all artifacts associated with a RE process

To create a glossary
Start with a taxonomy of RE terms Leaves of taxonomy tree (plus any additional domain- or organization-specific terms) become a part of the glossary
February 21, 2012 Dr. Ali Afzal Malik, FIT, UCP 7 February 21, 2012 Dr. Ali Afzal Malik, FIT, UCP 8

Requirements Engineering

CSSE5033

February 21, 2012

RE Taxonomy [6]
Taxonomies can be quite extensive

RE Taxonomy [7]
Taxonomy attributes
Complete Extensible Navigable Valid Systematic

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

10

RE Taxonomy [8]
Creation of an RE taxonomy
Identify tools Collect all requirement types For incremental development, mine requirements for classes Categorize by grouping Make sure complete, agreed-upon definitions are available for every term Create a draft taxonomy and circulate to stakeholders Revise and publish Provide feedback and maintenance mechanisms
February 21, 2012 Dr. Ali Afzal Malik, FIT, UCP 11

RE Taxonomy [9]
Other types of taxonomies useful in RE
E.g. document classification taxonomy

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

12

Requirements Engineering

CSSE5033

February 21, 2012

RE Taxonomy [10]
Taxonomy extension
Extend tree with artifacts of appropriate classification

RE Artifact Model [1]


REAM is a meta-model for structuring of RE work products
A meta-model is an explicit model of constructs and rules needed to build specific models within a domain of interest

REAM contains all artifacts referenced, modified, or created during RE activities

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

13

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

14

RE Artifact Model [2]


Elements of an artifact model
Artifact Association Cardinality

RE Artifact Model [3]


REAM diagrams vs. class diagrams
RE artifact has only name and description (vs. methods and attributes) Show only real objects that will be used or created (vs. abstract classes) Only simple associations are shown (vs. inheritance, aggregation, etc.)

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

15

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

16

Requirements Engineering

CSSE5033

February 21, 2012

RE Artifact Model [4]


REAM vs. RE taxonomy
REAM: graph RE taxonomy: tree Both can be multitiered i.e. selecting an object can open onto a different diagram
REAM tend to be flatter

RE Artifact Model [5]


Creation of a REAM
Need holistic understanding of business processes used from product creation through maintenance Following questions must be asked

February 21, 2012

What are the artifacts that the roles use? How are the artifacts related? Who creates them? Who modifies them? How do they become obsolete?
Dr. Ali Afzal Malik, FIT, UCP 18

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

17

RE Artifact Model [6]


REAM example: a small company creating a software product may have the following artifacts
Business plan Business goals Marketing brochure(s) Product features Customers Product definition Test plan Test cases System requirements Customer requirements Product design

RE Artifact Model [7]


REAM example

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

19

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

20

Requirements Engineering

CSSE5033

February 21, 2012

RE Artifact Model [8]


REAM example

Using the Artifact Model [1]


REAM created prior to start of a project is like looking at the X-ray of a patient prior to starting surgery
The model is used by most stakeholders (except possibly customers)

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

21

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

22

Using the Artifact Model [2]

Using the Artifact Model [3]


Extending an artifact model to augment process definition

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

23

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

24

Requirements Engineering

CSSE5033

February 21, 2012

Using the Artifact Model [4]


The upfront costs of creating an artifact model may appear high but it is a very fast and costeffective activity Just having project staff think about downstream artifacts, quality gates, and approval checklists can result in significant efficiencies

Using Templates for Requirements Artifacts [1]


Templates can be used to fill in information about each artifact in REAM These filled out templates are maintained with the same tool (e.g. MS Visio) used to create the drawings

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

25

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

26

Using Templates for Requirements Artifacts [2]

Using Templates for Requirements Artifacts [3]

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

27

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

28

Requirements Engineering

CSSE5033

February 21, 2012

Dynamic Tailoring of an Artifact Model [1]


When creating a REAM for a project, one size does not fit all For example, an artifact in REAM could be
Mandatory on a large project Optional on a medium project Not used on a small project

Dynamic Tailoring of an Artifact Model [2]

If artifacts are tagged (using project attributes such as type and size) during creation of REAM, it then becomes possible to filter and present the required information
February 21, 2012 Dr. Ali Afzal Malik, FIT, UCP 29 February 21, 2012 Dr. Ali Afzal Malik, FIT, UCP 30

Dynamic Tailoring of an Artifact Model [3]

Organizational Artifact Model Tailoring


High-level organizational models can be used as starting point for creation of projectspecific models

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

31

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

32

Requirements Engineering

CSSE5033

February 21, 2012

Creating a System Life Cycle Process [1]


By adding attributes to artifacts that specify when they are needed, a query will result in production of a list of all appropriate artifacts Project management can use this list for planning, including
Definition of decision and review points Work products needed Quality artifacts needed to measure project quality and efficiency
February 21, 2012 Dr. Ali Afzal Malik, FIT, UCP 33

Creating a System Life Cycle Process [2]

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

34

Tips for RE Artifact Modeling


Define a Glossary of Terms for your project or product Create an RE Taxonomy keeping tools in mind Develop a REAM specific to your project. Communicate project roles to all team members and artifacts they are responsible for as defined in REAM Use templates to define RE artifacts For scaling projects, provide tailoring information in REAM Tailor REAM for a specific project from any corporate-level models, if they exist Create a system life cycle process by adding needed timing to defined artifacts

February 21, 2012

Dr. Ali Afzal Malik, FIT, UCP

35

Requirements Engineering

S-ar putea să vă placă și