Title: Systematic Integration between Requirements and Architecture
1Systematic Integration between Requirements and
Architecture
- Lucia Bastos Jaelson Castro
Banco do Brasil S.A.
Centro de Informática UF Tecnologia
Universidade Federal de
Pernambuco UFPE BrasÃlia, DF,
Brazil Recife,
Brazil
May, 2004
2Contents
- Motivation
- Role Theory and Organizational Structure
- Tropos Project
- The SIRA Framework
- SIRA Elements
- SIRA Process
- Final Considerations and Future Works
3Motivation
Index
- Semantic Gap among Requirements and Architecture
- Requirements are derived from concepts and
relationships in the problem domain (for example,
e-commerce, bank accounting) and architecture
models are solution for the problem described in
the requirements - This conceptual differences between what to do
(requirements) versus how to do (architecture)
is one of the challenging problem in software
engineering - Goal-based Organizational Models
- Goals can be related to functional abilities,
business and system qualities - Goals can be used as starting point to construct
the architectural description
4Contents
- Motivation
- Role Theory and Organizational Structure
- Tropos Project
- The SIRA Framework
- SIRA Elements
- SIRA Process
- Final Considerations and Future Works
5Role Theory and Organizational Structures
Index
- The Role Theory applied for enterprise modeling
- Individuals occupy positions in an organizations
- Associated to each position is a set of
activities that constitute the responsibilities
of that positions - A organizational structure can define the roles
of various components (actors), their
responsibilities defined in terms of goals and
tasks they have assigned and resources allocated - Organizations consist of a collection of group
(or a set of actors). A group represents a
context of a role. - The SIRA Framework uses the Role Theory concepts
- Software (i System actor) occupies a position
that corresponds to a group (or a collection of
sub-groups)
6Contents
- Motivation
- Role Theory and Organizational Structure
- Tropos Project
- The SIRA Framework
- SIRA Elements
- SIRA Process
- Final Considerations and Future Works
7Tropos Project
Index
Ontology
Actors, social dependencies, goals, resources,...
Application area
(Requirements-driven) Software development
Tropos, in Greek, means manner (as in manner
of doing things)
8Requirement Model Operational Context of the
System
Organizational Map
- Functions and qualities for the system within
its environment
9Architectural Catalogue and Quality Attributes
Predictability, Security, Adaptability,
Cooperativity, Competitivity, Availability,
Integrity, Modularity, Aggregability
() contributes positively (very positively)
- (--) contributes negatively (very negatively)
10Contents
- Motivation
- Role Theory and Organizational Structure
- Tropos Project
- The SIRA Framework
- SIRA Elements
- SIRA Process
- Final Considerations and Future Works
11Proposal for Systematic Integration between
Requirements and Architecture
Index
The SIRA Framework
SIRA Elements
System Groups
Architectural Elements
Requirements model
SystemGroup schema
SIRA Process
Architectural model
Architectural catalogue
12SIRA Elements System Groups
- The software actors of the information system. A
System Group can be a component or sub-components
of a software system, like Medi_at_ actor to sell
media items in Internet - Each System Group can be refined into Sub Group
to provide some service in a particular context - System Roles Each Sub Group assume some
behavior to execute a service in the context - Responsibilities Services and capabilities
assigned to a System Group or Sub-Group.
Responsibility is extracted from the set of tasks
to be performed and goals to be fulfilled by
system actors, like Place order or Buy media
items.
SIRA
13E-commerce Example System Group and
Responsibilities
System Group
Responsibilities (task and goal)
14SIRA Elements Architectural Elements
- The elements in architectural model.
- Components - System Actors (software elements)
and Task/Goals/Resources dependencies between
them - Connectors, Protocols and Ports - A connector is
an abstraction of a message-passing channel that
connects two or more ports - Constraints Assertions and constraints that
apply to the entire software system. Many
softgoals impose constraints on component
interaction.
SIRA
15The SIRA Process
Index
Relating Elements
Analyzing Elements
Selecting Architecture
Requirements models, Architectural catalogue,
and SIRA Elements definition
System Group Schema and Architectural model
Architectural model
SIRA
161 - Analyzing Elements
- This activity consist of analyzing the i
elements (System actor) to identify an possible
SIRA Element - Three sub-activities
- Identify System Group
- Identify System Responsibilities
- Identify System Roles
171.1 Identify System Group
Example
181.2 Identify System Responsibilities
Responsibility Type
Example
191.3 Identify System Roles
E-commerce Role Categorization
20The SIRA Process
Index
Relating Elements
Analyzing Elements
Selecting Architecture
Requirements models, Architectural catalogue,
and SIRA Elements definition
System Group Schema and Architectural model
Architectural model
SIRA
212 Selecting Architecture
- This activity consist of selecting among
alternative architectural styles - Two sub-activities
- Identify the Architectural Constraints
- Each architecture must conform to the application
domain qualities - Apply NFR Framework
- Each architectural candidate will be analyzed
based on positive contributions to priority
qualities (constraints) of the application domain
Example
222.1 - NFR Framework
From Security, Availability, Adaptability
() contributes positively (very positively)
- (--) contributes negatively (very negatively)
Selected Architecture - Joint Venture Style
NFR Table
23E-commerce Example System Group and Constraints
System Group
Constraints
24Selected Architecture - Joint Venture Style
- Based on a agreement between two or more
principal partners. - Principal Partner Autonomous on a local
dimension and interacts directly with other
principal partners to exchange services, data and
knowledge - Joint Management actor coordinates tasks and
manages the sharing of knowledge and resources. - Secondary Partners Supply services or support
tasks for the organization core - Joint Venture in i and UML
25Joint Venture in i and UML
26The SIRA Process
Index
Relating Elements
Analyzing Elements
Selecting Architecture
Requirements models, Architectural catalogue,
and SIRA Elements definition
System Group Schema and Architectural model
Architectural model
SIRA
273 Relating SIRA Elements and Architectural
Elements
- This activity consist of deriving the
relationship among SIRA elements and
architectural elements. This relationship can be
identified by Sub-Group Functionality and Roles. - Three sub-activities
- Analyzing Architectural Components
- Identify Task/Goals/Resource Dependency between
Sub-Groups - Identify Architectural Connectors and Protocols
- E-commerce architecture
SIRA
283.1 Analyzing Architectural Components
Medi_at_ Actor and Joint Venture components
29Joint-Venture E-commerce Architecture
Index
30Final Considerations Research contributions
Index
- Narrowing the gap among requirements gtlt
architectures - Requirement specification supported by a
development methodology, the Tropos Methodology - Using same concepts for requirements and
architectures - Social Groups, System Actors and roles
- Mapping requirements into architecture and
maintaining consistency and traceability - Refining requirement and architecture
specifications into a systematic process
SIRA
31Future Works
Index
- Integration with some other Tropos Requirement
- Investigation of recent works in component-based
approach - Improve schemas, templates and guidelines
- Real study case to evaluate results
SIRA