By Topic

Software, IEE Proceedings -

Issue 4 • Date 6 Aug. 2004

Filter Results

Displaying Results 1 - 5 of 5
  • Full text access may be available. Click article title to sign in or learn about subscription options.
  • First class feature abstractions for product derivation

    Page(s): 187 - 197
    Save to Project icon | Click to expandQuick Abstract | PDF file iconPDF (319 KB)  

    The authors have observed that large software systems are increasingly defined in terms of the features they implement. Consequently, there is a need to express the commonalities and variability between products of a product family in terms of features. Unfortunately, technology support for the early aspect of a feature is currently limited to the requirements level. There is a need to extend this support to the design and implementation level as well. Existing separation of concerns technologies, such as AOP and SOP, may be of use here. However, features are not first class citizens in these paradigms. To address this and to explore the problems and issues with respect to features and feature composition, the authors have formalised the notion of features in a feature model. The feature model relates features to a component role model. Using our model and a composition algorithm, a number of base components and a number of features may be selected from a software product family and a product derived. As a proof of concept, the authors have experimented extensively with a prototype Java implementation of their approach. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Building fully customisable middleware using an aspect-oriented approach

    Page(s): 199 - 216
    Save to Project icon | Click to expandQuick Abstract | PDF file iconPDF (415 KB)  

    Applications accrue features in response to the needs of all users, yet the associated code bloating and performance loss often render an application unsuitable for some other users whose needs differ. As a result, developers are often faced with either reinventing pieces of an application, custom tailored to their needs, or they are faced with the daunting task of refactoring an existing application to obtain an appropriate subset of that application's functionality. In either case, subsequent development, maintenance and testing of the application becomes more complex, due to the effects of future revisions on all of the derived subsets. In the paper, the authors report their experience of using aspect-oriented programming in building a CORBA event channel using a compositional approach to building software. Instead of refactoring a large, feature-rich application, a feature can be added by including that feature's aspect in the set provided to an aspect compiler. In addition to generic feature management, a study of the effect of the transport layer (CORBA) on overall performance of the event channel is conducted. Finally, experimental results on how such an approach gives fine control over footprint and throughput performance is presented. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Scenario modelling with aspects

    Page(s): 157 - 171
    Save to Project icon | Click to expandQuick Abstract | PDF file iconPDF (345 KB)  

    There has been significant recent interest, within the aspect-oriented software development (AOSD) community, in representing crosscutting concerns at various stages of the software lifecycle. However, most of these efforts have concentrated on the design and implementation phases. The focus of this paper is on representing aspects during requirements modelling. In particular, the issue of how to model aspects as part of scenario-based modelling is addressed. The use of scenarios is common in requirements development and analysis. The authors describe how to represent and compose aspects at the scenario level. Aspectual scenarios are modelled as interaction pattern specifications (IPSs) and are composed with nonaspectual scenarios using instantiation and special composition operators. The composed collection of scenarios can then be translated automatically into a set of state machines using an existing state machine synthesis algorithm. The resulting set of state machines is an executable form of the scenarios and can be used for simulation and analysis of the requirements. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Aspect-oriented approach to early design modelling

    Page(s): 173 - 185
    Save to Project icon | Click to expandQuick Abstract | PDF file iconPDF (309 KB)  

    Developers of modern software systems are often required to build software that addresses security, fault-tolerance and other dependability concerns. A decision to address a dependability concern in a particular manner can make it difficult or impossible to address other concerns in software. Proper attention to balancing key dependability and other concerns in the early phases of development can help developers better manage product risks through early identification and resolution of conflicts and undesirable emergent behaviours that arise as a result of 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 addressing concerns during software modelling. The paper focuses on use of the AOM approach to produce logical, aspect-oriented architecture models (AAMs) that describe how concerns are addressed in technology-independent terms. An AAM consists of a set of aspect models and a base architecture model called the primary model. An aspect model describes how a dependability concern 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 the logical architecture described by the AAM. Composition can reveal conflicts and undesirable emergent properties. Resolving these problems can involve developing and analysing alternative ways of addressing concerns. Localising the parts of an architecture that address pervasive and nonorthogonal dependability concerns in aspect models allows developers to more easily evolve and replace the parts as they explore alternative ways of balancing concerns in the early stages of development. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.