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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Repeat this step for every keyword in KY.<br />

• Case 2: Let Gi ∈ G0 be mapped on concept-set gi,and<br />

to achieve Gi set of tasks T i will be performed.i.e. gi<br />

concept is associated with T i by consists-of relationship.<br />

Let Gi have some happened before relationship with other<br />

subgoals of set G0. Let Gj → Gi → Gk i.e. Gj is<br />

predecessor and Gk is successor of Gi. Then requirement<br />

analysis will be considered as correct if same happenedbefore<br />

relationship exists between corresponding task sets<br />

in ontology. i.e. there exists T j → T i → T k. If ∃<br />

Gi for which uppper condition is not satisf ed then it<br />

can be considered as redundant subgoal in goal graph<br />

after requirment analysis and can be discarded from goal<br />

graph. In this case, add the keywords of goal Gi to the<br />

set US.<br />

• Case 3: Let there is a goal Gi ∈ G0 which has no<br />

happened before relationshiop with other goals of G0.<br />

Similarly in ontology, its corresponding task set T i also<br />

has no happened-before relationship with other corresponding<br />

task set of goals of G0 in ontology. Then<br />

subgoal Gi can be added to the suggestion-list of our<br />

proposed system for requirement analysis stating that it<br />

may be incorrect/irrelevant subgoal in goal graph after requirement<br />

analysis. So analyst is recommended to verify<br />

whether this subgoal should be included in requirement<br />

specif cation.<br />

Correctness can be measured by,<br />

n2=total number of keywords in correctly mapped leaf<br />

level subgoals.<br />

m2=total number of keywords in leaf level subgoals in<br />

goal graph.<br />

Mathematically n2=| (Ky(Gi) ∪ Ky(Gj) ∪ ...∪ Ky(Gk))|<br />

- | US |<br />

m2= | (Ky(Gi) ∪ Ky(Gj) ∪ ...∪ Ky(Gk))|<br />

So, Measure of Correctness, MCOR = n2/m2<br />

3) Conflict: Let from user side requirement R come to our<br />

proposed system. After requirement analysis of requirement R,<br />

we get a goal graph with a set of leaf level indivisible subgoals<br />

represented as a set G0= {G1 , G2,..., Gp }The necessary<br />

condition to occur conf ict is,<br />

For any two Gi, Gj ∈ G0 f(Ky(Gi)) ∩ f(Ky(Gj)) ≠ ∅ where<br />

i ≠ j.<br />

If necessary condition is true then evaluate<br />

A = f(Ky(Gi)) - f(Ky(Gj)) B = f(Ky(Gj)) - f(Ky(Gi))<br />

• Case 1: If both sets A and B each contain single numerical<br />

value then both Gi and Gj are conf icting if<br />

both numerical values are different.i.e. these two subgoals<br />

represent one same fact but by different numerical values.<br />

• Case 2: Now check whether for some (ai, aj) ∈ A× B,<br />

conf ict(ai)=aj or conf ict(aj)=ai. Ifyes,goalGi and aj<br />

are in conf ict, i.e. conf ict(Gi, Gj)=true<br />

• Case 3: Let after mapping of subgoals of G0 to the<br />

ontology the set of tasks required to perform to achieve<br />

all subgoals of G0 can be represented by the set T 0 =<br />

{T 1 , T 2,..., T q }. Now if for any pair (T i, T j) ∈<br />

T 0 X T 0, conf ict(T i)=T or conf ict(T )=T i,then those<br />

Leaf level sub goals of<br />

Goal Graph provided as input<br />

(output)<br />

1. Completeness<br />

2. Correctness<br />

3. Conflict<br />

GUI<br />

OWL Application Programming<br />

Interface (OWL API)<br />

OWL Ontology created in<br />

Protege 4.1<br />

Fig. 2: Architecture of the tool for Automated Requirements<br />

System<br />

Fig. 3: Snapshot of the Ontology created in Protege 4.1<br />

two subgoals associated to corrosponding two tasks are<br />

conf icting. Let n3= total number of (Gi, Gj), Gi ≠Gj,<br />

Gi, Gj ∈G0 for which conf ict(Gi,Gj)=true.<br />

Let m3= total number of (Gi, Gj), Gi ≠Gj, Gi, Gj ∈G0<br />

So, Measure of Conf ict, MCON = n3/m3<br />

V. TOOL DEVELOPMENT<br />

We have shown the architecture of the tool that has been<br />

developed in Figure 2.<br />

A. OWL Ontology of Library Management Systemin Protege<br />

4.1<br />

The ontology for Library Management System(LMS) is<br />

built in Protege 4.1. Protege [15] is an open source tool<br />

to build OWL ontologies. An owl ontology consists of individuals,<br />

Properties and classes. Individuals represent objects<br />

in the domain of interest. Properties are binary relations<br />

on individuals i.e. properties link two individuals together.<br />

OWL classes are interpreted as sets that contain individuals.<br />

They are described formally stating the requirements for the<br />

membership of the class. A snapshot of the ontology for LMS<br />

created in Protege 4.1 is shown in Figure 3.<br />

B. OWL Application Programming Interface(OWL API)<br />

The OWL API [16] is a java Interface and implementation<br />

for the W3C Web Ontology Language(OWL), used to repre-<br />

53

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

Saved successfully!

Ooh no, something went wrong!