dare d omain a nalysis and r euse e nvironment

27
DARE Domain Analysis and Reuse Environment תתתתת: תתתתתת תתתתתתת תתתתתת תתתת תתתת- תתתת: ת"ת תתתתת תתתתתתת תתתתת ת', תתת"ת תתתתתת תתת תתתתת תתתת

Upload: leala

Post on 07-Jan-2016

27 views

Category:

Documents


2 download

DESCRIPTION

DARE D omain A nalysis and R euse E nvironment. סמינר: נושאים מתקדמים בהנדסת תכנה מרצה: ד"ר איריס ריינהרץ- ברגר. סמסטר א', תשס"ז. אהרוני ענת ברזני ערבה. Domain Engineering. DARE supports the following two phases: Domain analysis - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: DARE D omain  A nalysis and  R euse  E nvironment

DAREDomain Analysis and

Reuse Environment

סמינר: נושאים מתקדמים בהנדסת תכנה

סמסטר א', תשס"זמרצה: ד"ר איריס ריינהרץ- ברגר

אהרוני ענת

ברזני ערבה

Page 2: DARE D omain  A nalysis and  R euse  E nvironment

Domain Engineering

DARE supports the following two phases: Domain analysis

The activity of identifying and documenting the commonalities and variabilities in related software systems in a domain

Domain implementationUsage of acquired knowledge in order to develop reusable assets for the domain (reusable components, application generators)

DARE support creation of reusable assets repository

Page 3: DARE D omain  A nalysis and  R euse  E nvironment

DARE

-Supports domain analyst carrying out well defined domain analysis method

-Provides Method and tools that help users perform domain analysis

-Supports the collection of domain assets in a database and provides a library

search facility.

-Producing a repository of reusable assets for the domain

Page 4: DARE D omain  A nalysis and  R euse  E nvironment

Primary Goal

Creation of a generic architecture that describes architectural elements and their relationships,

for family of systems.

Support systematic and repeatable domain analysis process uses top-down and bottom-

up strategy and automate it.

Page 5: DARE D omain  A nalysis and  R euse  E nvironment

commonalities

variabilities

Recognize Analyze

commonalities

Generic Architecture

varied varied

varied varied

Variabilities, commonalties

Page 6: DARE D omain  A nalysis and  R euse  E nvironment

The Domain Book - the product of domain analysis.

To support creation of generic architecture, DARE uses a book metaphor

Contains all domain analysis inputs, outputs and supporting material

Domain book captured domain information from

* domain experts

* domain documents

* code from systems in the domainThe domain book provides a detailed

specification of the domain

Page 7: DARE D omain  A nalysis and  R euse  E nvironment

Domain Book

User manuals,Requirements documents, Design documents etc.

Provide descriptions of systems in the domainand their architectures

Will be analyzed to discover architectural information aboutsystems in the domain and

provide reusable code components

Page 8: DARE D omain  A nalysis and  R euse  E nvironment

Tools for producing parts of the book:

• A form based interface For acquiring general domain information from experts

• A graphical architecture editor Recording systems architectures (system may have several architectural representations – DFD, ERD, STRUCTURE CHARTS, OBJECT D., STATE D. FLOW CHARTS, LAYER OR ONION D. and MIXTURES OF THIS).

Creating and recording generic architectures

• A feature table For summarizing system commonalities and

variabilities

For recording decision about commonalities and variabilities in systems based on generic architecture

Page 9: DARE D omain  A nalysis and  R euse  E nvironment

Tools for producing parts of the book (cont):

• Text analysis toolsFor extracting a domain vocabulary from text sources

• A clustering tool A graphical way for analyzing and manipulating the similarities between different words and phrases

within the domain to form the critical categories of words an phrases.

• A glossary, bibliography, index and appendices For collecting and organizing reference information

Page 10: DARE D omain  A nalysis and  R euse  E nvironment

Cluster editor screen

Page 11: DARE D omain  A nalysis and  R euse  E nvironment

DARE system description form

Page 12: DARE D omain  A nalysis and  R euse  E nvironment

DARE system feature table screen

Page 13: DARE D omain  A nalysis and  R euse  E nvironment

DARE – architecture editor

Page 14: DARE D omain  A nalysis and  R euse  E nvironment

DARE – table of contents

Page 15: DARE D omain  A nalysis and  R euse  E nvironment

Domain sources

Created and updated continuously during

Domain Analysis

Page 16: DARE D omain  A nalysis and  R euse  E nvironment

Domain book include:All domain sources

The results of vocabulary analysis

The result of architecture analysis, include code analysis

Summary information (glossary, a bibliography, user index, appendices

Recording analyses and design decisions generic architecture

source for repository of reusable components

The domain book organizes all domain information and become the product of domain analysis

Once complete, the domain book provides a detailed specification of the domain

Page 17: DARE D omain  A nalysis and  R euse  E nvironment

The DARE-COTS tool Provides navigation support to browse in the domain book and

for tracing outputs & inputs

Domain book solves two vexing problems:

•What should the output of domain analysis be?

The output of domain analysis is a domain book

•What are the criteria for analysis completion?

The process is complete when all section of the domain book are written

Page 18: DARE D omain  A nalysis and  R euse  E nvironment

The DARE – COTS implementation

Implement third prototype using COTS and freeware

Domain book- In control

Source document – MS word

Text analysis – Concordance

Expert forms – MS word

Architecture – Inspiration

Stemming – Unix Tools

Code analysis – Unix tools

Dare tool had 2 prototypes, they found them very slow to develop environment as time and project resources became short.

Page 19: DARE D omain  A nalysis and  R euse  E nvironment

Organization decide to analyze one of its domain:

at least 1 analyst

domain experts: provide descriptions of systems in the domain and architectures

Source code from systems

Documentations for systems in the domain (user manuals, requirements, documents, design documents, and so on)

Page 20: DARE D omain  A nalysis and  R euse  E nvironment

Experts: enter information by dare

input forms.

architectural information,

reusable code components

documentation: record and

analysis in the domain book

Source Code: record and

analysis in The domain book

Dare text analysis tools to extract

terms & phrases

Dare cluster editor &facet table tool to create facets

Low Level

Automated analysis code

High Level

Facet tableCommon & variable

and system architecture

Record & analysis

Check and refine the system

architecture

System feature table: summary information about commonalities

and variabilities

Page 21: DARE D omain  A nalysis and  R euse  E nvironment

Facet tableSystem

feature tableCode structures

Generic architecture for the Domain

Generic Feature table

characterizing the stable common aspects

and allowed variabilities

Repository of reusable assetsSource documents characterizing

aspects of systems

con

form

System built

Software components implementing aspects of systems

Placed

Page 22: DARE D omain  A nalysis and  R euse  E nvironment

Generic architecture

Feature table Repository of reusable assets

Vocabulary

BASE

Domain implementation

Page 23: DARE D omain  A nalysis and  R euse  E nvironment

Dare User Population

DARE

Requirements Writer

Write requirements for new systems in

domain Software Architects

Specify architectures for New Systems in

the Domain

Programmers

Look For Reusable components and

can add new assets

Maintenance engineering

Asses Impact of changes on

requirements

Domain engineers

Domain Analysts &

experts

Use domain models and information to create reusable parts and

generators for domain

Use domain models as a

starting point for new domain

analysis

Page 24: DARE D omain  A nalysis and  R euse  E nvironment

DARE METHOD - conclusion

DARE Provides a systematic and organized method in order tobuild domains, but not for applications

Provide only knowledge for creating new applications

Page 25: DARE D omain  A nalysis and  R euse  E nvironment

The CASE tool: DARE- COTSDARE-COTS method partially based on STARS Reuse

Library Process Model

STARS, FODA, ODM are insufficiently prescriptive for automation and focus on the analysis of low-level domain objects.

Example:

FODA provides very little guidance to the central activity of documenting generic architectures

STARS method places too much emphasis on the bottom-up analysis of domain text.

DARE: More highly perspective: information from experts

Page 26: DARE D omain  A nalysis and  R euse  E nvironment

References

•Dr. Ruben Prieto-Diaz, Dr. Bill Frakes, Mr. B.K Gogia (1998): DARE: Domain analysis and reuse environment, Annals of Software Engineering 5 125-141

•Dr. Ruben Prieto-Diaz, Dr. Bill Frakes, Christopher Fox (1997): DARE-COTS- Domain analysis Support Tool, Proceedings.-17th-International-Conference-of-the-Chilean-Computer-Science- Society-Cat.-No.97TB100194, 73-7

•Dr. Ruben Prieto-Diaz, Dr. Bill Frakes, Mr. B.K Gogia (1992): DARE: Domain analysis and reuse environment, phase 1 final report

• http://www.cs.umaine.edu/~ftp/wisr/wisr7/papers/frakes/frakes.html

Page 27: DARE D omain  A nalysis and  R euse  E nvironment