ReqSpecOnto: Investigating Explicit Software Requirements Specification

  • Usman Ahmed Foundation University Islamabad
  • Amjad Farooq University of Engineering and Technology, Lahore, Pakistan
  • Tayyaba Farhat The Superior University Lahore
Keywords: software requirements, requirements specification ontology, upper ontology, ontology engineering, semantic relations

Abstract

Abstract Views: 187

Specification of customer's need as software requirements in natural language create ambiguities in requirements and may also lead to failure of the software project. Generally, customers are unable to define their needs due to lack of domain understanding, technological constraints and knowledge gap between stakeholders and requirements analysts. One of the most effective approaches to minimize these gaps and ambiguities is the usage of ontologies for requirements specification and validation. However, the current approaches are mostly limited only to the translation of ambiguous software requirements. In this paper, we have discussed, analyzed and compared the current usage of these ontologies and found that these approaches are time-consuming and create complexities in the overall development process. We have presented a requirements specification ontology (ReqSpecOnto), bypassing the need for creating an ambiguous Software Requirement Specification (SRS). The upper software requirements ontology is defined in Ontology Web Language (OWL) that can be applied in different software scenarios. A case study of budget and planning system for a state physics lab is selected to specify its requirements as derived ontology from the upper ontology created. Results are validated through HermiT and Pellet reasoners to verify defined relationships and constraints. Finally, SPARQL queries are used to obtain the necessary requirements.

Downloads

Download data is not yet available.

Author Biographies

Usman Ahmed, Foundation University Islamabad

Usman is currently working as Lecturer in the Department of Software Engineering at Foundation University Islamabad, Sialkot Campus having hands-on experience in both software industry and academia. He is the co-founder of DreamXoft Solutions. His research interests include Software Requirements Engineering, Web Semantics and Knowledge Management

Amjad Farooq, University of Engineering and Technology, Lahore, Pakistan

Dr. Amjad Farooq received the Ph.D. degree in computer science from the University of Engineering and Technology (UET) at Lahore, where he is currently an Associate Professor with the Department of Computer Science and Engineering. He has a vast experience of teaching undergraduate and postgraduate courses at various national universities. He has several national and international publications. His research interests include web engineering, semantic web, machine learning, usability evaluation, and HCI.

References

Sayed Mehdi Hejazi Dehaghani and N. Hajrahimi, “Which factors affect software projects maintenancecost more?,” Acta Informatica Medica, vol. 21, no. 1, p. 63, 2013.

D. M. Fernández et al., “Naming the pain in requirements engineering,” Empir Software Eng, vol. 22, no. 5, pp. 2298–2338, Oct. 2017, doi: 10.1007/s10664-016-9451-7.

J.-C. Chen and S.-J. Huang, “An empirical analysis of the impact of software development problem factors on software maintainability,” Journal of Systems and Software, vol. 82, no. 6, pp. 981–992, Jun. 2009, doi: 10.1016/j.jss.2008.12.036.

U. Ahmed, “A review on knowledge management in requirements engineering,” in 2018 International Conference on Engineering and Emerging Technologies (ICEET), Feb. 2018, pp. 1–5. doi: 10.1109/ICEET1.2018.8338650.

L. Zhao et al., “Natural Language Processing (NLP) for Requirements Engineering: A Systematic Mapping Study,” arXiv e-prints, vol. 2004, p. arXiv:2004.01099, Apr. 2020.

A. Ferrari et al., “Detecting requirements defects with NLP patterns: an industrial experience in the railway domain,” Empir Software Eng, vol. 23, no. 6, pp. 3684–3733, Dec. 2018, doi: 10.1007/s10664-018-9596-7.

H. Femmer, D. Méndez Fernández, S. Wagner, and S. Eder, “Rapid quality assurance with Requirements Smells,” Journal of Systems and Software, vol. 123, pp. 190–213, Jan. 2017, doi: 10.1016/j.jss.2016.02.047.

D. Popescu, S. Rugaber, N. Medvidovic, and D. M. Berry, “Reducing Ambiguities in Requirements Specifications Via Automatically Created Object-Oriented Models,” in Innovations for Requirement Analysis. From Stakeholders’ Needs to Formal Designs, Sep. 2007, pp. 103–124. doi: 10.1007/978-3-540-89778-1_10.

S. Ghosh, D. Elenius, W. Li, P. Lincoln, N. Shankar, and W. Steiner, “ARSENAL: Automatic Requirements Specification Extraction from Natural Language,” in NASA Formal Methods, Jun. 2016, pp. 41–46. doi: 10.1007/978-3-319-40648-0_4.

V. Castaneda, L. Ballejos, M. L. Caliusco, and M. R. Galli, “The Use of Ontologies in Requirements Engineering,” Global Journal of Research In Engineering, vol. 10, no. 6, Nov. 2010, Accessed: Jan. 27, 2018. [Online]. Available: https://www.engineeringresearch.org/index.php/GJRE/article/view/76

F. Ruiz and J. R. Hilera, “Using Ontologies in Software Engineering and Technology,” in Ontologies for Software Engineering and Software Technology, Springer, Berlin, Heidelberg, 2006, pp. 49–102. doi: 10.1007/3-540-34518-3_2.

G. Kotonya and I. Sommerville, Requirements Engineering: Processes and Techniques, 1st ed. Wiley Publishing, 1998.

V. Gervasi et al., “Unpacking Tacit Knowledge for Requirements Engineering,” in Managing Requirements Knowledge, Springer, Berlin, Heidelberg, 2013, pp. 23–47. doi: 10.1007/978-3-642-34419-0_2.

K. Pohl, Requirements Engineering: Fundamentals, Principles, and Techniques, 1st ed. Springer Publishing Company, Incorporated, 2010.

D. Fensel, “Ontologies,” in Ontologies, Springer, Berlin, Heidelberg, 2001, pp. 11–18. doi: 10.1007/978-3-662-04396-7_2.

T. R. Gruber, “A translation approach to portable ontology specifications,” Knowledge Acquisition, vol. 5, no. 2, pp. 199–220, Jun. 1993, doi: 10.1006/knac.1993.1008.

V. Tarasov, H. Tan, M. Ismail, A. Adlemo, and M. Johansson, “Application of Inference Rules to a Software Requirements Ontology to Generate Software Test Cases,” in OWL: Experiences and Directions –Reasoner Evaluation, Springer, Cham, 2016, pp. 82–94. doi: 10.1007/978-3-319-54627-8_7.

I. Dubielewicz, B. Hnatkowska, Z. Huzar, and L. Tuzinkiewicz, “Domain Modeling Based on Requirements Specification and Ontology,” in Software Engineering: Challenges and Solutions, Springer, Cham, 2017, pp. 31–45. doi: 10.1007/978-3-319-43606-7_3.

A. Abran, J. J. Cuadrado, E. García-Barriocanal, O. Mendes, S. Sánchez-Alonso, and M. A. Sicilia, “Engineering the Ontology for the SWEBOK: Issues and Techniques,” in Ontologies for Software Engineering and Software Technology, Springer, Berlin, Heidelberg, 2006, pp. 103–121. doi: 10.1007/3-540-34518-3_3.

C. Calero and M. Piattini, “An Ontological Approach to SQL:2003,” in Ontologies for Software Engineering and Software Technology, Springer, Berlin, Heidelberg, 2006, pp. 197–215. doi: 10.1007/3-540-34518-3_7.

D. Dermeval et al., “Applications of ontologies in requirements engineering: a systematic review of the literature,” Requirements Eng, vol. 21, no. 4, pp. 405–437, Nov. 2016, doi: 10.1007/s00766-015-0222-6.

Y. Odeh and M. Odeh, “A NEW CLASSIFICATION OF NON-FUNCTIONAL REQUIREMENTS FOR SERVICE-ORIENTED SOFTWARE ENINEERING,” May 2018.

H. Kaiya and M. Saeki, “Using Domain Ontology as Domain Knowledge for Requirements Elicitation,” in 14th IEEE International Requirements Engineering Conference (RE’06), Sep. 2006, pp. 189–198. doi: 10.1109/RE.2006.72.

M. Ismail, “Ontology Learning from Software Requirements Specification (SRS),” in Knowledge Engineering and Knowledge Management, Nov. 2016, pp.251–255. doi: 10.1007/978-3-319-58694-6_39.

T. Avdeenko and N. Pustovalova, “The ontology-based approach to support the completeness and consistency of the requirements specification,” in 2015 International Siberian Conference on Control and Communications (SIBCON), May 2015, pp. 1–4. doi: 10.1109/SIBCON.2015.7147184.

N. Mahmud, C. Seceleanu, and O. Ljungkrantz, “ReSA: An ontology-based requirement specification language tailored to automotive systems,” in 10th IEEE International Symposium on Industrial Embedded Systems (SIES), Jun. 2015, pp. 1–10. doi: 10.1109/SIES.2015.7185035.

L. Zong-yong, W. Zhi-xue, Y. Ying-ying, W. Yue, and L. Ying, “Towards a Multiple Ontology Framework for Requirements Elicitation and Reuse,” in 31st Annual International Computer Software and Applications Conference (COMPSAC 2007), Jul. 2007, vol. 1, pp. 189–195. doi: 10.1109/COMPSAC.2007.216.

A. P. Yanuarifiani, F.-F. Chua, and G.-Y. Chan, “Feasibility Analysis of a Rule-Based Ontology Framework (ROF) for Auto-Generation of Requirements Specification,” in 2020 IEEE 2nd International Conference on Artificial Intelligence in Engineering and Technology (IICAIET), Sep. 2020, pp. 1–6. doi: 10.1109/IICAIET49801.2020.9257838.

G. Loniewski, E. Insfran, and S. Abrahão, “A Systematic Review of the Use of Requirements Engineering Techniques in Model-Driven Development,” in Model Driven Engineering Languages and Systems, Oct. 2010, pp. 213–227. doi: 10.1007/978-3-642-16129-2_16.

L. van Rooijen, F. S. Bäumer, M. C. Platenius, M. Geierhos, H. Hamann, and G. Engels, “From User Demand to Software Service: Using Machine Learning to Automate the Requirements Specification Process,” in 2017 IEEE 25th International Requirements Engineering Conference Workshops (REW), Sep. 2017, pp. 379–385. doi: 10.1109/REW.2017.26.

M. Grüninger and M. S. Fox, “Methodology for the Design and Evaluation of Ontologies,” 1995.

J. D. Palmer, Y. Liang, and L. Want, “Classification as an Approach To Requirements Analysis,” Advances in Classification Research Online, vol. 1, no. 1, pp. 131–138, Oct. 1990, doi: 10.7152/acro.v1i1.12472.

B. Chen and Q. Dong, “A TaxonomySystem for Information System Requirements,” in Proceedings of the International Conference on Information Engineering and Applications (IEA) 2012, Springer, London, 2013, pp. 633–643. doi: 10.1007/978-1-4471-4847-0_78.

N. Afreen, A. Khatoon, and M. Sadiq, “A Taxonomy of Software’s Non-functional Requirements,” in Proceedings of the Second International Conference on Computer and Communication Technologies, Springer, New Delhi, 2016, pp. 47–53. doi: 10.1007/978-81-322-2517-1_6.

R. E. Al-Qutaish, “An Investigation of the Weaknesses of the ISO 9126 International Standard,” in 2009 Second International Conference on Computer and Electrical Engineering, Dec. 2009, vol. 1, pp. 275–279. doi: 10.1109/ICCEE.2009.83.

S. Pearson, “Privacy, Security andTrust in Cloud Computing,” in Privacy and Security for Cloud Computing, Springer, London, 2013, pp. 3–42. doi: 10.1007/978-1-4471-4189-1_1.

J. H. Gennari et al., “The evolution of Protégé: an environment for knowledge-based systems development,” International Journal of Human-Computer Studies, vol. 58, no. 1, pp. 89–123, Jan. 2003, doi: 10.1016/S1071-5819(02)00127-1.

H. Zhao, S. Zhang, and J. Zhao, “Research of Using Protégé to Build Ontology,” in 2012 IEEE/ACIS 11th International Conference on Computer and Information Science, May 2012, pp. 697–700. doi: 10.1109/ICIS.2012.126.

S. Abburu, “A survey on ontology reasoners and comparison,” International Journal of Computer Applications, vol. 57, no. 17, 2012.

Published
2021-12-26
How to Cite
Ahmed, U., Amjad Farooq, & Tayyaba Farhat. (2021). ReqSpecOnto: Investigating Explicit Software Requirements Specification. Innovative Computing Review, 1(2), 44-70. https://doi.org/10.32350/icr.0102.03