Nicole Levy
Laboratoire PRISM Université de Versailles St.-Quentin Nicole.Levy@prism.uvsq.fr
Francisca Losavio
LaTecS Laboratory, Centro ISYS Universidad Central de Venezuela flosav@cantv.net
ARCHI TECTURAL CHOI CES FOR DEPENDABLE SYSTEMS Nicole Levy - - PowerPoint PPT Presentation
3 rd Workshop on Architectures for Dependable Systems (WADS) 26 th ICSE May 2004 - Edinburgh ARCHI TECTURAL CHOI CES FOR DEPENDABLE SYSTEMS Nicole Levy Laboratoire PRISM Universit de Versailles St.-Quentin Nicole.Levy@prism.uvsq.fr
Laboratoire PRISM Université de Versailles St.-Quentin Nicole.Levy@prism.uvsq.fr
LaTecS Laboratory, Centro ISYS Universidad Central de Venezuela flosav@cantv.net
hoc networks
SOFTWARE
Computer System User Work Environment &
Subcharacteristics
Security Replaceability Testability Resource utilization Operability
Quality Characteristics
Suitability Accuracy Interoperability Maturity Fault tolerance Recoverability Understandability Learnability Time behavior Analyzability Changeability Stability Adaptability Installability Co-existence
Attractiveness Compliance Compliance Compliance Compliance Comp Comp
Users req. (contexts of use) Users req. (contexts of use) Data Req. Data Req.
Operation&Env. req Operation&Env. req
Business rules Business rules Quality properties
(external view)
Quality properties
(external view)
Nonfunctional req. Nonfunctional req. Quality properties (in use view) Quality properties (in use view) Functional req Functional req
impose Are measured by
quality properties (internal view) quality properties (internal view)
Affect Affect 0..* Implicit functionality Are specified by Are expressed by Are measured by Are expressed by 1..* 1..* 1..* Are measured by impose impose
* Node *
Data Sharing
Reliability (Consistency) * *
Data Sharing
Reliability (Consistency)
Requires data
*
Provides data
Repository
1
Availability Node
SPEM (Soft. Process Eng. Metamodel Spec.), OMG 2001
Relation of quality rerequirements wwith functionalities
Our Architectural design
Quality Model for problem domain
Software Architect
Identification of business requirements Identification of nonfunctional requirements Architecture refinement. This activity is applied iteratively for each quality characteristics, until all of them have been considered Identification of quality characterstics for each functionality First definition of the architecture
Use case Model Sequence and StateChart Diagrams Model of the architecture ISO 9126-1 standards Patterns Library Cahier des charges
SPEM (Soft. Process Eng. Metamodel Spec.), OMG 2001
Identification of business requirements Identification of nonfunctional requirements Identification of quality characteristics for each functionality First definition of the architecture Use case Model
Patterns Library
Cahier des Charges Sequence Diagram and State Charts Quality Model for problem domain Relation of quality requirements with functionalities Model of the architecture Architecture refinement
ISO 9126-1 standards
1. Express the problem and its context 1.1 Problem definition
Accomplish collaborative work in a mobile ad hoc network context.
leave or is expelled by other members. Similarly, a member may join a group because he explicitly requests it or recovers from failure.
etc.) or by disconnection (connection fails or he is more within the group connection range).
nodes or group connection range, limited to 1 or 2 hops for ad hoc models.
and must also have a consistent view of the group, despite network failures.
domain).
member nodes is mandatory since there is no infrastructure, requiring minimization of the number of messages exchanged among group members to guarantee the overall ad hoc network reliability.
1.2 Functional requirements
1.3 Nonfunctional requirements
(technology business rule)
entities is mandatory (policy business rule)
respect to resource utilization: battery, memory, CPU load, bandwidth
consumption for each device
percentage [0..1] Minimization
consumption Quality characteristics Nonfunctional requirements (Quality model) Maintainability Efficiency Security Reliabili ty
mechanism must be provided, for example to manage the update of replicated data on each member node
Management of Data consistency
… … …
Quality characteristics Nonfunctional requirements (Quality model) Maintainability Efficiency Security Reliability
Changeability Performance with respect to resource utilization: battery, memory, CPU load, bandwidth.
consumption for each device
[0..1] Secur ity Reliability (availability) Group membership Efficiency (performance with respect to Resource Utilization … … ) Reliability (availability) Message exchange among group members Reliability (consistency) Data sharing among group members Quality Characteristics Functional requirements Maintainability Efficiency Secur ity Reliability
* Node *
Message exchange Data Sharing Group membership management
Reliability (Consistency) Efficiency Security Maintainability * *
Message exchange Data Sharing Group membership management
Reliability (Consistency) Efficiency Security Maintainability
Requires data
*
Provides data
Repository
1
Availability Node
* Node *
Message exchange Data Sharing Group membership management
Reliability (Consistency) Efficiency Security Maintainability
*
Node *
Message exchange Data Sharing Group membership management Replica maintenance
Reliability (Consistency) Efficiency Security Maintainability
The problem is usually described within several clauses:
scenario given in the Motivation clause may give more specific information about the design problem. The functionality of the
problem is added.
can be used as parameters of the pattern; they are partially described or defined in the Structure clause. UML 2.0 models are used here.
be applied, the poor designs that the pattern can address. These are mainly described in the Applicability clause.
tags) containing the quality model associated to the problem domain. The
quality model follows the ISO 9126-1 standard definition [ISO/IEC 2001].