A Domain Ontology Building Process for Guiding Requirements

advertisement
A Domain Ontology Building Process for Guiding Requirements Elicitation
(2010)
By Inah Omoronyia1, Guttorm Sindre1, Tor Stålhane1, Stefan Biffl2, Thomas Moser2, and Wikan Sunindyo2
1 Department
2 Institute
of Computer and Information Science, Norwegian University of Science and Technology, Trondheim, Norway
of Software Technology and Interactive Systems, Vienna University of Technology, Vienna, Austria
Redo - Assignment 1
Bernadette Budhawara
0335924
INFOME-2013
1|P a g e
Introduction
Requirements elicitation is one main activity of requirements engineering. It has objective to understand
the business process in the application domain, generate list of activities within the process and discovers
restriction, regulation and boundaries within the process (Kaiya & Saeki, 2006). Requirements engineering
defines as a discipline that elaborate customer’s needs through communication, documentation and
implementation (Farfeleder et al., 2011). In this research, the researchers used ontology in eliciting the
requirement in order to map and remove gaps between assumptions and decisions during the process
(Omoronyia et al., 2010). Ontologies are schemes for reading the meta-data. It controlled the vocabulary
concept of the given texts, provides the match definition for each word and processes it semantically
(Maedche & Staab, 2001) and it based on the real world communication structures concept (Gruber, 1993).
The procedure continued by clustered the output from requirement elicitation and map it into one specific
knowledge domain (Gruninger & Lee, 2002).
The research goal is proposed a new method as guidance to perform requirements elicitation based on
ontology in a semi-automated way, which not yet covered by the preceding ontology based requirements
elicitations methods proposed by Lee & Zhao (2006) and Shibaoka et al. (2007). The last two proposed
methods need some manual ontology processing steps before some statements can be processed in
requirements elicitation, which might increases chance of input inconsistencies for requirement elicitations.
For example if the requirements statement analyzed by two ontology analysts, both fluent in English but
originally come from two different countries – for instance one from India while the others from
Macedonia. The ontology analytic results might be differs as their understanding toward the topics as each
vocabularies and its semantic relationship translated differently. Thus, from industry perspective, the
deliverable of this research might be useful in decreasing the chance of input inconsistency and the amount
of tasks needed in processing the documents that need to be interpreted by domain experts/ ontology
analyst.
The proposed method called Rule-based ontology for requirements elicitation. It provides some
possibilities for capturing the initial or baseline concepts-relations and map it to a specific domain ontology
based on some existing texts. Their rule-based ontology for requirements elicitation method which consists
of the following steps: (1) Prepare the text documents manually by removing symbols and/ or edit the text
format; (2) Trail brackets; automatically map brackets or dashes and change it into punctuation marks and
generate supplementary texts. For example in the given sentence: ‘mobile-phone makers (Nokia, Samsung,
Apple, Blackberry and many others)’. Bracket trailing will extract the “Nokia”, “Samsung”, “Apple”,
“Blackberry” and “many others” and related with the concept “makers”; (3) Complete bridged-term; locate
and correcting bridge-term in the text. Given the phrase “inhale and exhale respiration methods”, with
bridged-term completion it should suggest the combine terms “inhale respiration methods” and “exhale
respiration methods” as concepts than just “inhale”; (4) Extract SPO (subject-predicate-object);
automatically identify subjects, predicates and objects, continue with categorize them as concepts and
relations between concepts; (5) Mine association; automatically identifies head and link it to the origin
subjects/ objects from the previous step; and (6) Cluster the (finding) concepts-relations. The output will be
used by requirement analyst or product manager to start the requirements analysis and negotiation phase.
The authors were six academic researchers from Department of Computer and Information Science in
Norwegian University of Science and Technology and Institute of Software Technology and Interactive
Systems in Vienna University of Technology. All of them have a software engineering academic
background and specialize in semantic programming and interactive systems.
2|P a g e
Example
This section discusses the use case of the method in processing the following texts as part of requirement.
The given requirement text is a part of project requirement for creating management report called
Overview OU.
Requirement texts:
The Overview OU report is a management report that shows the availability hours from each resource. The report
must shows conflict between direct and indirect hours from each resource. The conflicts should be visible. The
manager should be able to access this report and exportable into a spreadsheet format file (excel and csv). This
report updated every days and the manager will receive a notification if the report is not ready or corrupted.
The following are the steps the reviewer took to adapt the Rule-based ontology for requirements elicitation
method in processing the requirement texts.
(1) Prepare the text documents manually by removing symbols and/ or edit the text format;
The text does not contain any symbols, continue with step 2.
(2) Trailing any brackets;
Locate some texts within the brackets, which are “excel” and “csv” and link it to concept “file”.
No other brackets found.
(3) Complete bridged-term;
Locate some texts that consider as bridge-term. Those are “..direct and indirect hours”. After the correction
the concepts are “direct hours” and “indirect hours”
(4) Extract SPO (subject-predicate-object) into concept – relations.
The extraction starts with the first text. In this example it first extract “The” addressing title of the report,
continue with “Overview”, “OU”, “report” and so on.
(5) Mine association.
Identified the associations between concepts with head – parent-child relationships, based on the given text
the parent-child captured are “management report”, “report”, “availability hours”, hours”, “management”,
“manager”, “access”, and “format file”
(6) Finalize the finding concepts and relations into clusters.
Cluster the finding concepts and relation. Explicit concepts/ relations are collected directly from the
requirements text, while assumed concepts/ relations are results of reasoned based to cluster concepts.
The results of extractions summarize into concepts and relations displayed in table and graph as follow
(light yellow marked is the parent-child):
Concept
Relations
Assumed
Explicit Assumed Explicit Parent-Child
8
23
6
8
9
3|P a g e
Related Literatures
The following sections discuss the reference techniques and researches used as basic in developing the
Rule-based ontology for requirements elicitation method.
Natural Language Processing (NLP) techniques use as research basic concept in extracting relations and
concepts from requirements statement to specific domain ontologies as its adapts the human processing the
language, which gives the correct support reasoning in processing the given tasks (Liddy, 2001). NLP part-of-speech (POS) tagging and sentences parsers tools developed by Stanford parser/tagger and
OpenNLP used. It marks the corresponding relation between a text to one specific part of statement or
speech based on its definition and context (Choi, 2000).
In completing this research, the team also conducted some preliminary research on requirements
engineering (Falbo, 2002) and conceptual structures (Sowa, 1994). The objective of this preliminary
research is to understand the steps that requirements analyst takes in order to elicit the requirement with
ontology method and the Artificial Intelligence mechanism that based on synthesis of logic and linguistics.
A model developed by Kof (2005) used as case reference in adapting the natural language processing in
modeling the method. The three extraction steps (extract terms, cluster term and locate associations
between terms) expanded in the designed method.
This method evaluated in one industrial case and it concludes as one feasible approach for requirement
elicitation with ontology in semi-automatic way, as it explained by the authors. Further, this method used
by other scholars as reference in constructs and explores a new domain ontologies based on requirement
elicitation (Farfeleder et al., 2011), requirement specification (Bures et al., 2012), and defining a shared
understanding between engineers and client (Zhang, 2011).
4|P a g e
References
Bures, T., Hnetynka, P., Kroha, P., & Simko, V. (2012). Requirement Specifications Using Natural
Language. Technical Report D3S-TR-2012-05. Czechoslovakia: Charles University in Prague.
Choi, F.Y.Y., (2000). Advances in domain independent linear text segmentation. Proceedings of the 1st
North American Chapter of the Association for Computational Linguistics Conference, (pp. 26-33).
Falbo, R.d.A., Guizzardi, G., & Duarte, K.C. (2002). An ontological approach to domain engineering.
Proceedings of the 14th International Conference on Software Engineering and Knowledge Engineering,
(pp. 351-358).
Farfeleder, S., Moser, T., Krall, A., Stålhane, T., Omoronyia, I., & Zojer, H. (2011). Ontology-Driven
Guidance for Requirements Elicitation. Lecture Notes in Computer Science Volume 6644 (pp. 212-226),
Berlin, Germany, Springer Berlin Heidelberg. 0302-9743.
Gruber, T.R. (1993). A translation approach to portable ontology specifications. Knowledge Acquisition
5(2), (pp.199-220).
Gruninger, M. & Lee, J., (2002) Ontology: Applications and Design. Communication of the ACM, 45(2),
(pp. 39-41).
Kaiya, H. & Saeki, M., (2006). Using Domain Ontology as Domain Knowledge for Requirements
Elicitation. Requirements Engineering, 14th IEEE International Conference, (pp. 189-198).
Kof, L. (2005). An Application of Natural Language Processing to Domain Modelling - Two Case
Studies. International Journal on Computer Systems Science Engineering 20, (pp. 37–52).
Lee, Y. & Zhao, W., (2006). Domain Requirements Elicitation and Analysis – An Ontology-Based
Approach. Proceedings of the First International Multi-Symposiums on Computer and Computational
Science, (pp. 805-813).
Liddy, E.D. (2001). Natural Language Processing. Encyclopedia of Library and Information Science, 2nd
edn. Marcel Decker, Inc., New York, USA.
Maedche, A. & Staab, S., (2001). Ontology Learning for the Semantic Seb. Intelligent Systems, IEEE, (pp.
72-79).
Omoronyia, I., Sindre, G., Stålhane, T., Biffl, S., Moser, T., & Sunindyo, W. (2010). A Domain Ontology
Building Process for Guiding Requirements Elicitation. In R. Wieringa and A. Persson (Eds.): REFSQ
2010, LNCS 6182, (pp.188–202).Springer-Verlag Berlin Heidelberg.
Shibaoka, M., Kaiya, H. & Saeki, M., (2007). GOORE: Goal-Oriented and Ontology Driven Requirements
Elicitation Method. ER Workshops 2007, (pp. 225-234)
Zhang, X. (2011). An Interactive Approach of Ontology-based Requirement Elicitation for Software
Customization. Electronic Theses and Dissertations, University of Windsor, Windsor, Canada.
5|P a g e
Download