27.03.2014 Views

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Requirement Analysis and Automated Verif cation:<br />

A semantic approach<br />

Animesh Dutta<br />

Department of Information technology<br />

National <strong>Institute</strong> of Technology<br />

Durgapur<br />

India<br />

Email:animeshrec@gmail.com<br />

Prajna Devi upadhyay<br />

Department of Information technology<br />

National <strong>Institute</strong> of Technology<br />

Durgapur<br />

India<br />

Email: kirtu26@gmail.com<br />

Sudipta Acharya<br />

Department of Information technology<br />

National <strong>Institute</strong> of Technology<br />

Durgapur<br />

India<br />

Email: sonaacharya.2009@gmail.com<br />

Abstract—In this paper, we propose an automated software<br />

development methodology. The methodology is conceptualized<br />

with the notion of agents, which are autonomous goal-driven<br />

software entities. Initially, the requirements of the newly proposed<br />

system are captured from stakeholders which are then analyzed<br />

in goal oriented model and represented as goal graph. The<br />

leaf level atomic sub goals of the goal graph are taken as<br />

input to our automated system. These atomic sub goals are<br />

mapped to concepts in Domain Ontology and are verified with<br />

the help of three verification metrics- Completeness, Correctness,<br />

and Conflict. We also develop a software tool for the proposed<br />

automated system.<br />

I. INTRODUCTION<br />

Requirements engineering is an important phase of the<br />

software development methodology. Requiremets should be<br />

documented as the SRS(Software Requirement Specif cation),<br />

which is the input to the design phase. To ensure that the<br />

requirements are in correct form, requirement analysis and<br />

verf cation process should detect incomplete, incorrect and<br />

ambiguous requirements. Nowadays, requirement verf cation<br />

techniques supported by domain knowledge are in use which<br />

check the specif ed requirements against the domain knowledge<br />

for inconsistencies and help the system analyst to remove<br />

them. Ontology [1] is the most suitable representation of<br />

domain knowledge because concepts, relationships and their<br />

categorizations in a real world can be represented with them.<br />

It also allows for semantic processing of requirements. The<br />

automation of the requirement verif cation process complements<br />

transformation systems utilised for Agent Oriented<br />

Software Engineering(AOSE) methodologies [2], [3], [4].<br />

Transformation systems generate system architecture from<br />

the specif ed requirements automatically by consulting with<br />

Domain Ontology.<br />

II. RELATED WORK<br />

There have been a signif cant number of contributions in the<br />

area of Ontology based requirement verif cation. In [5], [6],<br />

[7] authors have used Domain Ontology to express domain<br />

knowledge and have used it for the semantic verif cation<br />

of requirements using metrics. The tool development for<br />

the proposed methodologies is not shown. [8] This paper<br />

proposes a novel user-driven requirements elicitation process<br />

UDREP. Based on users individualities and context, support<br />

for users to present requirements is provided, including the<br />

recommendation of domain assets and advice about multiuser<br />

cooperation. It lacks of verif cation metrics to measure<br />

the quality of requirement specif cation. In [9], authors<br />

have proposed AGORA, a method for requirements elicitation<br />

which is an extended version of a goal-oriented method by<br />

attaching preference and contribution attributes to an AND-<br />

OR graph. They have also def ned some metrics to measure the<br />

quality of requirement specif cation. In [10], authors propose<br />

a method called GOORE where a domain ontology is utilized<br />

to support goal decomposition as domain knowledge. A tool<br />

has also been developed to facilitate the same. Some more<br />

tools to facilitate verif cation have been developed in [11],<br />

[12]. These tools are not the part of any automated system.<br />

III. SCOPE OF WORK<br />

There have been a lot of contributions in the area of Ontology<br />

based requirements verif cation techniques. But, most of<br />

them are a part of traditional software development methodologies.<br />

Also, very few contributions have elicited requirements<br />

verif cation approach for automated systems. Although<br />

automated software development methodologies reduce the<br />

gap between requirements specif cation and system design,<br />

there is a need to incorporate a requirements verif cation<br />

module to determine whether user requirements have been<br />

fully expressed or not in such systems. The lack of verif cation<br />

in traditional as well as automated software development<br />

methodologies lead to inconsistent systems which may not<br />

adhere completely to user’s requirements.<br />

This paper presents requirements verif cation approach<br />

for the automated software development methodology using<br />

agents which we proposed in [13]. The proposed methodology<br />

takes the requirement represented as goal graph, the<br />

domain knowledge represented as Ontology and determines<br />

whether the requirements have been expressed properly. The<br />

verif cation is performed against domain Ontology and the<br />

result is expressed in the form of three metrics-Completeness,<br />

Correctness, and Conf ict. A software tool is also developed to<br />

facilitate automation of the verif cation procedure of the input<br />

requirements.<br />

51

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!