• No results found

Requirements Engineering Databases: The Good, The Bad, and The Ugly

N/A
N/A
Protected

Academic year: 2021

Share "Requirements Engineering Databases: The Good, The Bad, and The Ugly"

Copied!
38
0
0

Loading.... (view fulltext now)

Full text

(1)

1

s

Requirements Engineering Databases:

The Good, The Bad, and The Ugly

Brian Berenbach

Siemens Corporate Research

[email protected]

New England Database Day

(NEDBDay08)

(2)

s

s

2

Agenda

¾

Brief Introduction to Siemens (Context)

¾

What is a Requirements Database?

¾

Key differentiators of an RE Database

¾

Industrial Problems

¾

(3)

s

s

3

Siemens at a Glance

Medical Medical Solutions Transportation Transportation Systems

Siemens VDO Automotiv

e Pow er Power G ener at ion Power Transmissi on and Distribution Automation and Co ntrol Automati on and Drives Industrial Soluti ons and Services Siemens Buil ding Technologi es Lighting Sylvani a Inform ation and cations Communications ns Busin ess Services

Annual Worldwide Sales

75

%

of total sales are from

products and services

develop ed in th e last five y ears

$98.2 billion

47,000 employ ees

$6.6B dedicated to global R&D

Net In co me: $2.8B World’s 21 st largest company orldw ide figu

res for fiscal 20

05 1(U.S. GAAP 2) S ept ember 30 nu al excha nge ra te for F Y 2005: €1.00 = $1.273

(4)

s

s

4

Siemens has a long tradition of

(5)

s

s

5

The rate of innovations is increasing.

… 5 years and younger … 6 to 10 years old …m o re t h an 10 year s old

Share of sales with products…

1985 2005 1980 48% 30% 22% 55% 29% 16% 75% 19% 6%

(6)

s

s

6

RE Databases are Important

‰

Functionality previously realized in

electrical or electro-mechanical

systems is now being realized in soft

ware => bigger, more complex, &

more software projects (hundreds

of developers, millions of lines of

code).

‰

Meeting functional and non-functional requirements is important to business success => restricted hardware resources, real-time performance, safety critical applications.

‰

Multisite development projects.

‰

High quality (i.e., thoroughly tested, re

liable) software is important to

business success.

Our RE databases must address the increasing scale and

(7)

s

s

7

Requirements Database

A requirements database is an extension of a standard database that

provides key functionality in the area

of version control and traceability.

That is, the database provides, “off

the shelf”

the ability to version and

track changes to requirements and to trace requirements within and outside of the database, also to

create trace matrices and generate

formatted reports and specifications.

Let’s find the

changes!

(8)

s

s

8

Attributes of an RE Database

The are many unique attributes of an RE database compared with a traditional database. They include:

i

Schema predefined to support the storage of requirements of different kinds

i

Version control at the requirement (re

cord) level, with user views of

history of a requirement

i

Intrinsic support for tracing, that

is, a “drag and drop”

m

echanism

that is easy to use and supports creating traces manually between requirements.

i

Generation of requirements documents directly from the repository. The preferred method of working I to create and edit requirements in the database, then use the documentation facility of the database to create a filtered and formatted set of requirements in a requirement specification, usua

lly as either a word or pdf

(9)

s

s

9

Typical Configurations of RE Databases

‰

There are two typical types of configurations

for RE Databases.

i

One possible one has the RE management software on the server, using a browser to access it.

i

The other configuration, which is faster but requires that software be

installed on the client,

is to have a client appl

ication on the user PC

(10)

s

s

10

Scale and complexity make life difficult

Requirements

Database with

Over 16000*

Requirements

Requirements

Database with

Over 16000*

Requirements

View Traces

View Traces

* We have RE databases wi

(11)

s

s

11

Key Differentiators of RE Databases

‰

Easy to use, intuitive with minimal need to refer to documentation

‰

Ability to baseline and perform change control on requirements.

‰

(12)

s

s

12

Key Differentiators of RE Databases

‰

Ability to work offline

i

Take requirements home, review them, change them, roll

them back into the database later.

Good thing I can make those

changes at home.

Good thing I can make those

(13)

s

s

13

Key Differentiators of RE Databases

‰

Product line support

i

Create subsets of requirements that c

an be reused for different projects and

products.

‰

Global Support.

i

The ability to have distributed requirement

s analysis is more than just the ability

to fold in rules to determine routing,

review procedures (e.g. workflow), and

(14)

s

s

14

Key Differentiators of RE Databases

All fields/attributes should be definable on a

per company or per project basis, such that

the same corporate data dictionary is used on

multiple projects for consistency, but

each project can still have its own glossary of terms, keywords,

etc.

Corporate Dictionary

Project

(15)

s

s

15

Key Differentiators of RE Databases

Parent child

relationship-it should be possible to

have a parent child relationship, and where there is such a relationship, it should be possible to have parent and child of a different core requirement type.

FEAT101

SECRQT101.5

PERFRQT 101.33

i

Note that some commercial databases do

not allow parent-child requirements to

(16)

s

s

16

Key Differentiators of RE Databases

‰

Traceability-the tool used shall enable

end-to-end traceability, vertical and horizontal traceability. This may require integration with other tools such as IDEs

and/or modeling and

testing tools.

‰

Mandated by law, including Sarbanes-Oxley, the FDA and the FAA.

‰

Traceability required by most demanding safety- critical process standards such as: DO178B, IEC 61508, EN50128*.

(17)

s

s

17

Traceability and The FDA*

A software requirements traceability

analys

is should be conducted to

trace software requirements

to (and from) system requirements and to

risk analysis results.

In addition to any other analyses

and docum

entation used to verify

software requirements, a

formal design review

is recommended to

confirm that requirements are fully specified and appropriate before extensive software design efforts begin.

Requirements can be approved and re

leased incrementally, but care should

be taken that interactions and inte

rfaces among software (and hardware)

requirements are properly reviewed, analyzed, and controlled.”

u

idance

(18)

s

s

18

Traceability and the FAA

FAA's Advisory Circular AC20-115B established DO-178B as

the accepted means of certifying all new aviation software:

“The stringent and internationally accepted DO-178B process

standard that governs the development of civilian avionics

embedded software is primarily requirements driven. …at each

stage …

software developers must be able to demonstrate

traceability of designs against requirements

; i.e. are the

high-level requirements I am specifying traceable to the system

requirements? Are the low-level requirements traceable to the

high-level requirements? ....

*Esterel
(19)

s

s

19 xx xxx

SHR 3

or

Multiple Layers

SR 37

SR 31

SR 41

Xx xxx xx xx xx xxxx xx xxxxx

&

X xx x xxxxx xx xx xx xxxx xxx

&

DR 37

DR 132

DR 24

DR 131

DR 42

DR 14

Xx x xx xxxxx xx xxxx xx x xxx

or

Xxxxxxx xx xxxx x xxxx xx xxxxxx

&

System

requirements

Design requirements

DK 01: Xxx xxx x xx
(20)

s

s

20 xx xxx

SHR 3

or

Multiple Layers

SR 37

SR 31

SR 41

Xx xxx xx xx xx xxxx xx xxxxx

&

X xx x xxxxx xx xx xx xxxx xxx

&

DR 37

DR 132

DR 24

DR 131

DR 42

DR 14

Xx x xx xxxxx xx xxxx xx x xxx

or

Xxxxxxx xx xxxx x xxxx xx xxxxxx

&

System

requirements

Design requirements

DK 01: Xxx xxx x xx
(21)

s

s

21

The Ugly

(22)

s

s

22

(23)

s

s

23

Captain! There are no viable solutions on the

(24)

s

s

24

The Bad

(25)

s

s

25

The Good

some advanced techniques that

SCR/SE has piloted may help in

the future

i

Unified Requirements Model

i

(26)

s

s

26

The Unified Requirements Modeling Language

‰

The U

nified R

equirements M

odeling L

anguage (URML) is a

standard notation for the modeling of requirements artifacts

as first step in developing a product or performing business

modeling.

‰

It incorporates elements of:

i

Use cases

i

Feature Modeling

i

Hazard Analysis

i

Threat Modeling

i

Goal Modeling

i

Other requirements related visual modeling techniques

Sam

p

(27)

s

s

27

Unified Requirements Models

‰

A

unified requirements model

is a model that has been

created using the URML

.

i

(28)

s

s

28

Unified Requirements Model

‰

Requirements Relationships are naturally organized in directed graphs, whereas traditional databases support a tree structure. The use of a tree structure forces the creation of an inordinate number of traces and does not work well with cross-cutting requirements. As a typical project grows to N requirements, the number of traces needed is often greater than N

(29)

s

s

29

A Visual Language Provides Views into the Model

¾

Faster than text (up to 70%)

¾

Verifiable

¾

Easier to understand than text.

I f

inally underst

and

why I should use

(30)

s

s

30

Definition of Traceability*

“Requirements traceability is the ability to describe and

fo

llow t

he lif

e of a require

m

ent, in both a forward and

backward direction:

from it

s or

igins,

th

rough it

s development and

specification

to its subsequent deployment and use

through periods of ongoing refinement and iteration in all

of the project phases.”

*Gotel
(31)

s

s

31

Dynamic Tracing

‰

Problem:

Manual tracing is subject to errors,

omissions, and decay as artifacts are changed

and the lack-of-benefit-to-tracer problem

.

‰

One solution:

Dynamic tracing

‰

Dynamic tracing

is the automated generation

(32)

s

s

32

With over 3000 design

documents the rebels

will

NEVER

find the

flaw in the DeathStar.

With over 3000 design

documents the rebels

will

NEVER

find the

(33)

s

s

33

Much to learn you have,

hmmm? The rebels are using

Dynamic Tracing

!

Much to learn you have,

hmmm? The rebels are using

Dynamic Tracing

(34)

s

s

34

(35)

s

s

35

Information Retrieval*

Inference Network Model

(probabilistic approach)

Prob(d

j

|q) =

prob(d

j

|t

i

) prob(q|t

i

) prob(t

i

)

Σ

prob(q)

i Frequency of term t i

in respect to the size

of the document. prob(d

j |t i )=freq(d j ,t i )/ Σ k fre q(d j ,t k ) Frequency of term t i

in respect to the size

of the query. prob(q|t

i )=freq(q,t i )/ Σ k freq(q,t k )

Measures the rarity/commonality of the term. prob(t

i ) = η (1/n i ) where n i = # of docs containing t i . η = nor malizing factor Prob ability of a link bet w een a

query and document.

Σ i prob(q|t i ) prob(t i )

*Slide Courtesy of Prof. Jane C

leland-Huang, DePa

(36)

s

s

36 / * * N oti fi cat ion _Pr oce ss ing .ja va * @ aut ho r Fuh u L iu * @ ver si on 5.0 * C han ge d l og fil e t o log DB */ impo rt ja va. awt .*; i mpo rt ja va. awt .ev ent .* ; i mpo rt ja vax .sw ing .*; i mpo rt ja va. io. *; i mpo rt ja va. uti l.* ; i mpo rt ja va. sql .*; .... void Up da teD isp lay Lis t( ) { l ist Mo del .re mov eAl lE lem ent s() ; S tri ng mS QL = " SEL EC T d ist inc t” + “ S ubs cri ber Nam e FRO M E ven tDe ta ils "; t ry { r s = s tmt .ex ecu te Que ry( mSQ L); w h i le (rs .ne xt( )) { Str ing Su bsN am e = rs .ge tSt ri ng( 1); lis tMo del .ad dE lem ent (Su bsN am e); } r s . clo se( ); } ca tc h ( Exc ept ion e ) { S y s tem .ou t.p rin tl n(" Not ifi cat io n_P roc ess ing : P r o ble m w ith qu er y: " + e ); } } • An example of traceabl

e artifacts and selected lin

(37)

s

s

37

Visualized Hierarchy*

X X F R E E ZE PREDICTIO N DRIVIN G AL ERT CON T AC T S ROADS UPDAT E R O AD DATA ROAD NE T W OR K MAPS ROAD S E N SOR S WEATH E R STATIO N MANAG EMEN T WEATH E R READI NG S WEATHER STATION S DE-ICING SCHEDULING

Alerts shall be issued when hazardous driving conditions exist

Candidate link

Accepted link

Current link

Rejected link

X leland-Huang, DePa ul University
(38)

s

s

38

Questions?

Am I supposed to disintegrate the database or the

audience???

References

Related documents