DOC PREVIEW
MSU CSE 870 - AOM-france-etal

This preview shows page 1-2-3-4 out of 13 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 13 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 13 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 13 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 13 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 13 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Aspect-oriented approach to early design modellingR. France, I. Ray, G. Georg and S. GhoshAbstract: Developers of modern software systems are often required to build software thataddresses security, fault-tolerance and other dependability concerns. A decision to address adependability concern in a particular manner can make it difficult or impossible to address otherconcerns in software. Proper attention to balancing key dependability and other concerns in theearly phases of development can help developers better manage product risks through earlyidentification and resolution of conflicts and undesirable emergent behaviours that arise as a resultof interactions across behaviours that address different concerns. The authors describe an aspect-oriented modelling (AOM) approach that eases the task of exploring alternative ways of addressingconcerns during software modelling. The paper focuses on use of the AOM approach to producelogical, aspect-oriented architecture models (AAMs) that describe how concerns are addressedin technology-independent terms. An AAM consists of a set of aspect models and a basearchitecture model called the primary model. An aspect model describes how a dependabilityconcern is addressed, and a primary model describes how other concerns are addressed.Composition of the aspect and primary models in an AAM produces an integrated view of thelogical architecture described by the AAM. Composition can reveal conflicts and undesirableemergent properties. Resolving these problems can involve developing and analysing alternativeways of addressing concerns. Localising the parts of an architecture that address pervasive andnonorthogonal dependability concerns in aspect models allows developers to more easily evolveand replace the parts as they explore alternative ways of balancing concerns in the early stages ofdevelopment.1 IntroductionThe pervasiveness of computer systems highlights the needto engineer software that delivers services in a dependablemanner. Designs of dependable software must addressmultiple, possibly interdependent, dependability concernssuch as access control, confidentiality and data integrity.The manner in which a dependability concern is addressedcan affect how other concerns are addressed. Balancingconcerns during software development can involve devel-oping and analysing alternative ways of addressing theconcerns. Lack of attention to balancing dependability andother concerns in the early software development phases canlead to major rearchitecting of the design in later stages ofdevelopment.In this paper, a concern is a problem coupled with adesired goal [1, 2], where the goal determines acceptablesolutions to the problem. For example, the problem ofprohibiting unauthorised access to protected resources in abanking system is a dependability concern that must beaddressed by banking software that manipulates theprotected resources. A model that describes how a concernis addressed is called a concern solution model.Inparticular, a model that describes how a dependabilityconcern is addressed is called a dependability solutionmodel. For example, a role based access control (RBAC)model [3] can be used to describe a solution to the bankingsystem’s access control concern. A decision to address aconcern in a particular manner can give rise to otherconcerns. For example, the RBAC solution to the accesscontrol problem gives rise to new concerns pertaining to themanagement of roles and permissions.This paper focuses on addressing dependability concernsduring logical architecture modelling of software.The concern solution models are expressed in high-level, technology-independent terms. Current softwaredevelopment techniques allow developers to structurelogical architectures in terms of modules that can becomposite classes (i.e. classes that have an internal classstructure), subsystems or interfaces. These modules typi-cally localise solutions that address key functional concerns.Addressing nonorthogonal dependability concerns results independability solutions that are spread across the modulesof the architecture and tangled with functionality describedin the modules. These solutions are said to crosscut theprimary structure of the architecture model.Balancing concerns that are addressed by crosscuttingsolutions in the early phases of development can bechallenging, primarily because of the difficulty of consist-ently changing or replacing the crosscutting solutions in anarchitecture model. A modelling approach that supportslocalising the descriptions of crosscutting dependabilitysolutions can significantly ease the task of evolving andreplacing the solution descriptions in an architecture model.In this paper we describe an aspect-oriented modelling(AOM) approach that allows developers to conceptualise,describe and communicate logical dependability solutionsin isolation. The dependability solution models are calledaspect models. An aspect-oriented architecture model(AAM) produced by the AOM approach consists of a setq IEE, 2004IEE Proceedings online no. 20040920doi: 10.1049/ip-sen:20040920The authors are with the Department of Computer Science, Colorado StateUniversity, Fort Collins, CO 80523, USAPaper first received 13th June 2003 and in revised form 12th May 2004IEE Proc.-Softw., Vol. 151, No. 4, August 2004 173of aspect models and a base architecture model called theprimary model. The primary model describes concernsolutions that determine the base structure of the architec-ture model. Each aspect model describes a dependabilitysolution that crosscuts the primary model. An integratedview of the architecture is obtained by composing aspect andprimary models to produce a composed AAM. Conflictsand undesirable emergent properties can be identified duringcomposition of aspect and primary models andduring analysis of the composed AAM. Addressingthese deficiencies can lead to consideration ofalternative ways of addressing concerns. Use of the AOMapproach in the early stages of software development canhelp reduce software product risks through earlyidentification and resolution of conflicts and undesirablebehaviours that emerge as a result of integrating concernsolutions.2 Aspect-oriented modellingIn the aspect-oriented programming (AOP) languageAspectJ, an aspect is a type that crosscuts a programstructure [4]. An aspect contains information typicallyfound in a class (i.e. data members and methods) in additionto behaviour that is executed at a specified


View Full Document

MSU CSE 870 - AOM-france-etal

Documents in this Course
HW2

HW2

3 pages

splc1

splc1

21 pages

Lessons

Lessons

3 pages

revision

revision

13 pages

ft1

ft1

12 pages

john.dsn

john.dsn

21 pages

Survey

Survey

2 pages

revision

revision

38 pages

Load more
Download AOM-france-etal
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view AOM-france-etal and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view AOM-france-etal 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?