Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
3Activity
0 of .
Results for:
No results containing your search query
P. 1
A Tropos Based Requirement Engineering Frameworks for Self Adaptive Systems

A Tropos Based Requirement Engineering Frameworks for Self Adaptive Systems

Ratings: (0)|Views: 82 |Likes:
Published by ijcsis
The applications developed during the current era are deployed in environments which change over the course of time. These changes if occur in a normal application would require re-work so that design and architectural level updates should be implemented to cater to the newly changed application environment. This is turns results in wasted effort and increased cost for the system maintenance. Hence there arise a need for systems that are able to alter their functioning so as to adapt to the changing environmental needs and to heal themselves automatically from likely errors and system failures without the need of human intervention. Such systems are known as Self Healing, Self Adaptive or Autonomic Systems. The approaches and frameworks used for gathering, analyzing and specifying requirements for Self Adaptive system are quite different from the traditional life cycle and require a different line of action from the processes which are followed when capturing requirements for a normal system whose environments are relatively stable and all the system states are known before hand. This research focuses on analyzing the various methods, techniques and frameworks for gathering requirements for Self Adaptive systems. A Tropos based approach has also been proposed for requirements engineering for self adaptive system.
The applications developed during the current era are deployed in environments which change over the course of time. These changes if occur in a normal application would require re-work so that design and architectural level updates should be implemented to cater to the newly changed application environment. This is turns results in wasted effort and increased cost for the system maintenance. Hence there arise a need for systems that are able to alter their functioning so as to adapt to the changing environmental needs and to heal themselves automatically from likely errors and system failures without the need of human intervention. Such systems are known as Self Healing, Self Adaptive or Autonomic Systems. The approaches and frameworks used for gathering, analyzing and specifying requirements for Self Adaptive system are quite different from the traditional life cycle and require a different line of action from the processes which are followed when capturing requirements for a normal system whose environments are relatively stable and all the system states are known before hand. This research focuses on analyzing the various methods, techniques and frameworks for gathering requirements for Self Adaptive systems. A Tropos based approach has also been proposed for requirements engineering for self adaptive system.

More info:

Published by: ijcsis on Aug 12, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

01/21/2012

pdf

text

original

 
(IJCSIS) International Journal of Computer Science and Information Security,Vol. 08, No. 04, July 2010
A Tropos Based Requirement EngineeringFrameworks for Self Adaptive Systems
Farah Noman
Department of Computer ScienceNational University of Computer and Emerging SciencesKarachi, Pakistanfarah.nomansaghir@gmail.com
Zafar Nasir
Department of Computer ScienceNational University of Computer and Emerging SciencesKarachi, Pakistanzafar.nasir@nu.edu.pk  
 Abstract
 — 
The applications developed during the current eraare deployed in environments which change over the course of time. These changes if occur in a normal application wouldrequire re-work so that design and architectural level updatesshould be implemented to cater to the newly changed applicationenvironment. This is turns results in wasted effort and increasedcost for the system maintenance. Hence there arise a need forsystems that are able to alter their functioning so as to adapt tothe changing environmental needs and to heal themselvesautomatically from likely errors and system failures without theneed of human intervention. Such systems are known as Self Healing, Self Adaptive or Autonomic Systems.The approaches and frameworks used for gathering, analyzingand specifying requirements for Self Adaptive system are quitedifferent from the traditional life cycle and require a differentline of action from the processes which are followed whencapturing requirements for a normal system whose environmentsare relatively stable and all the system states are known beforehand.This research focuses on analyzing the various methods,techniques and frameworks for gathering requirements for Self Adaptive systems. A Tropos based approach has also beenproposed for requirements engineering for self adaptive system.
 Keyword-component; Self-adaptive Systems; Requirement Engineering; Autonomic Systems; Agent oriented Methodologies
I.
 
I
NTRODUCTION
 The changing needs of the modern era have led forward toan application domain where the underlying environment of the system often changes. Such changes occur as part of thenormal working course of the system and are considered aspart of the common working environment. Thus if suchchanges are catered to so as to ensure the smooth functioningof the systems, the system should also be designed in a way sothat effective decision making can be performed by the systemto alter and adapt their behaviours to the changingenvironmental needs [1].Although most of the self healing systems developmentapproaches are in infancy but many industry leaders such asMicrosoft, IBM and SUN and performing extensive researchfor the development of autonomic systems. Thus such systemsare meant to extend their capabilities to restore to a normalfunctioning state from an error state. Thus if such an ability isincorporated in the current systems then unlimitedenvironmental changes can be effectively catered and thesystems can be made available for infinite periods thusreducing the system maintenance cost and in turn savingorganizational budgets [2] [3].The paper presents a Tropos based framework whichfocuses on the requirements engineering perspective for self adaptive systems. The Tropos methodology is incorporatedwith the RELAX language specification constructs to cater allthe uncertainty factors ingrained in the self adaptive systemsexecution environment.II.
 
R
ELATED
W
ORK
 / 
 
L
ITERATURE
R
EVIEW
During the recent years the area of software engineeringhave witnessed tremendous amount of research and analysis inthe field of self adaptive systems which is conducted in almostall the verticals of software development of self adaptivesystem right from their inception to modelling to engineeringand quality assurance [5]. This has resulted in the onset of avast number of techniques for each of the system developmentdomain. A brief discussion of these techniques is as follows:The core concepts of most of the requirement engineeringtechniques for self adaptive systems are derived from theconcept of goal models where a requirements model isdeveloped through the usage of specific environmentalconditions and goal states. Agents are allocated to goaltraversal graphs where alternative conditions are to beconsidered or negotiated with respect to the specific systemvariables [6]. One of the earliest goal modelling notations suchas KAOS (Knowledge Acquisition in Automated Specification)[7] and i* [8] presents a comprehensive overview of goalmodels however in such approaches there is no scope forcatering to uncertainty or adaptively of the system. Henceresearchers have proposed extensions of the goal directedrequirement acquisition techniques for self adaptive systems.
60http://sites.google.com/site/ijcsis/ISSN 1947-5500
 
(IJCSIS) International Journal of Computer Science and Information Security,Vol. 08, No. 04, July 2010
Amongst the many extended approaches, one of theprominent one is that of the KAOS specification language
incorporated with the “Adapt
-
Operator” [9]. Another approach
focuses on formal methods such as the RELAX specificationlanguage for converting traditional requirements statements tothe ones that are able to cater to the uncertainty of the self managing systems [10] [11]. Extension to this approachprovides an amalgamated view of the goal graphs and RELAXby placing specific language constructs in goal graphs nodeswhere adaptation is specifically required [12].An extended approach defines the pathway of transformingthe requirement specification to the software architecture. Thisapproach derives the self adaptive component model from theKAOS goal model [13]. Another similar approach focuses onthe development of a formalized notation in terms of UnifiedModelling Language (UML) for the requirements specificationof self adaptive systems [14].A different framework focuses on the classification of goalsinto soft goals and hard goals thus defining a road map forconverting the goal models to architectural level diagrams byproviding the concept of Autonomic Elements (AEs) [15].Also focusing on the system architecture, a research paperproposes a high level approach to facilitate the smoothtransition from the system requirements specifications to thesystem architecture [16].Utilizing the strengths of the i* modelling language forrepresenting goals models, a different approach focuses on therequirements specifications for embedded self adaptivesystems [17]. Focused on the distributed software systems, onemore approach defines a framework to develop self adaptivesystems by adopting a Belief-Desire-Intention (BDI) [4].Extension to the Tropos methodology is provided in thisapproach by modelling environmental variables, goalprecedence and priority and goal correlations for catering tothe flexibility required in all self managing systems.A similar approach specifically focus on modelling therequirements specifications for self adaptive systems by usingthe advanced version of TROPOS and BDI agents i.e.Tropos4AS [18]. A related technique illustrates a tool(TAOM4E) that based on the Tropos4AS [19]. An additionalTropos related approach has been proposed for requirementsspecification of self managing systems that provides aframework to translate traditionally captured requirements toadaptive requirements through the combination of Tropos goaloriented methodology and the domain [20].III.
 
A
 
P
ROPOSED
R
EQUIREMENTS
S
PECIFICATION
F
RAMEWORKFOR
S
ELF
A
DAPTIVE
S
YSTEM
 A.
 
Framework Introduction
The study of the various techniques proposed by variousresearchers have led to the conclusion that all the proposedrequirement specification and engineering techniquesproposed for self adaptive systems lack some aspect or theother. Some techniques make use of the goal models bydefining system alternatives and environmental constraintswhile completely ignoring the system environmentaluncertainty factors whilst the other which caters to thisuncertainty factors does not provide a systematic mechanismfor transforming the developed specifications into formalarchitectures, and design.Although some of the work has been performed in definingan amalgamated view of the goals models with formalspecifications language for self adaptive systems [12] however,they take into consideration the general goal models withoutfocusing on specific ones which can expedite the requirementsengineering process and which are flexible enough to cater tothe requirements change during the system executionenvironment.Thus we propose a consolidated framework forrequirements engineering for self adaptive system byincorporating the TROPOS requirements specificationmethodology with the RELAX specifications to cater to theenvironmental uncertainty factors and to reap the benefits of TROPOS for easy requirements modelling and catering to theearly and late stage of the requirements engineering life cycle.The subsequent section briefly presents the main rationalebehind the proposition of the requirements specificationframework. The next sections explain the TROPOSrequirements engineering framework followed by theintroduction of the RELAX specifications. The next sectionwill shed light on the actual process and various steps of theextended proposed framework followed by a case study thatillustrates the practical implementation of the framework.
 B.
 
 Rationale for the Proposition of the Extended ModellingFramework 
It is a well argued fact that specifying the requirements forself managing system is a testing task due to the level of uncertainty in the underlying system environment where thevalues of the various quantities are unpredictable beforehand.Also the techniques for requirements specification be it a goalmodelling framework or a formal specification language, theyfail to cover all the aspects of catering to this flexibility in therequirements set. An idea has been proposed as a prospectivefuture work for catering to this problem which suggestcombining the strengths of the RELAX specification languagewith the contemporary goal models for proposing a processmodel through which thorough requirements specification canbe performed by the analysts [11]. Thus based on the idea wepropose a process model for specifying the requirements forself managing system by combing the strengths of the TroposModelling Framework and the RELAX Specification languageso that a robust requirements set can be developed.The main advantages of this approach are multi-fold. TheTropos Modelling approach presents a well known and stable
61http://sites.google.com/site/ijcsis/ISSN 1947-5500
 
(IJCSIS) International Journal of Computer Science and Information Security,Vol. 08, No. 04, July 2010
process for requirements specification right from the inceptionphase of the Early Requirements gathering to the systemArchitectural design and Implementation. On the other handthe RELAX specification presents specific language constructsas well as formal notations and semantics descriptions forincorporating flexibility in the requirements set for self adaptive systems.However, if Tropos alone is applied to gatheringrequirements for self adaptive systems, it cannot fulfil theprerequisite for an adaptive set where specific environmentalvariables can be quantified so that partial fulfilment of goalscan be taken as satisfactory for iterating a goal path. TheRELAX specification alone lacks a formal process of gathering the early requirements and then iteratively workingupon that set to transform the requirements to the architecturaldesign and the implemented system.Also there are a number of agent oriented methodologiespresented in literature for system modelling. However theirapplication and span of usage is restricted to their level of maturity. Studying a number of research literature related tothe comparison of agent oriented methodologies [21] [22], it isalso concluded that the Tropos is one single methodology thatis not only stable and relatively mature but it also lays a strongfocus on the early requirements analysis where the domainstakeholders and their intentions are identified so that the mainreason for the system development can be acknowledged atthe initial stages.Hence this proposed framework presents a process of identifying the initial set of the requirements and workingupon them for refining them to cater to the underlyingnecessities for self adaptive systems. A case study is alsopresented for applying the framework for modellingrequirements of a self adaptive system such as SmartHome forproving the practicality of the approach.
C.
 
 Requirements Engineering in Tropos
The Tropos is an agent oriented software developmentmethodology which is developed by a group of authors fromvarious universities in Canada and Italy. The Tropos is aunique agent oriented software engineering methodology thatdrives its strengths from three basic factors such as it keenlyfocuses on the activities that precede the prospectiverequirement engineering practice by collecting informationabout how and why the intended system is envisioned toachieve the organizational goals. Hence firstly, it focuses onthe broad picture of the system so that a perspective isestablished and ground is set for detailed requirementsanalysis [23].Secondly, it provides means of specifying and designing thesystem right from the requirements analysis to the systemarchitecture, design and implementation phases in a systematicmanner. It drives its strength from the notions of actors, hardgoals, soft goals, plans, resources, mean-end links andintentional dependencies.Lastly, the methodology is built on the novel idea that thesystem to be should be modelled in an incremental fashion,refining it at every subsequent stage from the conceptual levelto the executable artefacts through the usage of a sequence of transformational steps. Hence the major advantage of thismethodology over the other modelling notations is derivedfrom the fact that it not only concentrates of the what or howperspectives of the system but also on the why aspect of thesystem [24] [25] [26].The Tropos model is extensively inspired by the Eric and
Yu’s framework for requirements engineering which presents
the idea of actor, goals and actor dependency links asprimitive concepts [27]. The Tropos model propose a goalbased requirements modelling technique to capture andanalyse both the business and system requirements, risk andsecurity and location requirements [26].1)
Phases of Tropos:
The Tropos methodology is dividedinto the following four major phases of the softwaredevelopment lifecycle [28][29][30]:
Early Requirement AnalysisLate Requirement AnalysisArchitectural DesignDetailed DesignImplementation
 
Fig. 1. Tropos Iterative and Incremental Approach
 D.
 
 RELAX: A Specification Language
RELAX is a requirements specification language developedexplicitly for self adaptive system by the researchers at theuniversities of England, USA and France. The languageconstructs explicitly support the expression of theenvironmental uncertainty in the requirements [11]. Thisenvironmental uncertainty is the core of the self adaptivesystems where flexible requirements needs to be specified sothat changes to the environment and other conditions shouldnot affect the normal functioning of the system and the systemshould gracefully alter its execution path to cater to suchchanges.The RELAX vocabulary is specified in a set of its operatorswhich are organized into modal, temporal and ordinaloperators and uncertainty factors [11]. The following tabledescribes the RELAX vocabulary constructs.
62http://sites.google.com/site/ijcsis/ISSN 1947-5500

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->