Skip to main content
Log in

Automatic semantic analysis of software requirements through machine learning and ontology approach

  • Published:
Journal of Shanghai Jiaotong University (Science) Aims and scope Submit manuscript

Abstract

Nowadays, software requirements are still mainly analyzed manually, which has many drawbacks (such as a large amount of labor consumption, inefficiency, and even inaccuracy of the results). The problems are even worse in domain analysis scenarios because a large number of requirements from many users need to be analyzed. In this sense, automatic analysis of software requirements can bring benefits to software companies. For this purpose, we proposed an approach to automatically analyze software requirement specifications (SRSs) and extract the semantic information. In this approach, a machine learning and ontology based semantic role labeling (SRL) method was used. First of all, some common verbs were calculated from SRS documents in the E-commerce domain, and then semantic frames were designed for those verbs. Based on the frames, sentences from SRSs were selected and labeled manually, and the labeled sentences were used as training examples in the machine learning stage. Besides the training examples labeled with semantic roles, external ontology knowledge was used to relieve the data sparsity problem and obtain reliable results. Based on the SemCor and WordNet corpus, the senses of nouns and verbs were identified in a sequential manner through the K-nearest neighbor approach. Then the senses of the verbs were used to identify the frame types. After that, we trained the SRL labeling classifier with the maximum entropy method, in which we added some new features based on word sense, such as the hypernyms and hyponyms of the word senses in the ontology. Experimental results show that this new approach for automatic functional requirements analysis is effective.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. ANTOVSKI L, IMERI F. Review of software reuse processes [J]. IJCSI International Journal of Computer Science Issues, 2013, 10(6): 83–88.

    Google Scholar 

  2. WEISS D M, LAI C T R. Software product-line engineering: A family-based software development process [M]. Boston, MA, USA: Addison-Wesley Longman Publishing Co., Inc., 1999.

    Google Scholar 

  3. TSAI W T, BAI X Y, HUANG Y. Software-as-aservice (SaaS): Perspectives and challenges [J]. Science China Information Sciences, 2014, 57(5): 1–15.

    Article  Google Scholar 

  4. GUO J M, ZHANG Z Y, WANG Y L. Model-driven derivation of domain functional requirements from use cases [J]. Journal of Software Engineering and Applications, 2010, 3(9): 875–881.

    Article  MathSciNet  Google Scholar 

  5. IBRAHIM M, AHMAD R. Class diagram extraction from textual requirements using natural language processing (NLP) techniques [C]//Proceedings of 2nd International Conference on Computer Research and Development. Kuala Lumpur, Malaysia: IEEE, 2010: 200–204.

    Google Scholar 

  6. KOTHARI P R. Processing natural language requirement to extract basic elements of a class [J]. International Journal of Applied Information Systems, 2012, 3(7): 39–42.

    Google Scholar 

  7. MU Y H, WANG Y L, GUO J M. Extracting software functional requirements from free text documents [C]//Proceedings of 2009 International Conference on Information and Multimedia Technology. Jeju Islands, Korea: IEEE, 2009: 194–198.

    Chapter  Google Scholar 

  8. NAVIGLI R. Word sense disambiguation: A survey [J]. ACM Computing Surveys, 2009, 41(2): 1–69.

    Article  Google Scholar 

  9. GRUBER T R. A translation approach to portable ontology specifications [J]. Knowledge Acquisition, 1993, 5(2): 199–220.

    Article  Google Scholar 

  10. PRADHAN S, HACIOGLU K, KRUGLER V, et al. Support vector learning for semantic argument classification [J]. Machine Learning, 2005, 60(1): 11–39.

    Article  Google Scholar 

  11. LIU T, CHE W X, LI S. Semantic role labeling with maximum entropy classifier [J]. Journal of Software, 2007, 18(3): 565–573 (in Chinese).

    Article  Google Scholar 

  12. Collins M. Head-driven statistical models for natural language parsing [J]. Computational Linguistics, 2003: 29(4): 589–637.

    Article  MathSciNet  MATH  Google Scholar 

  13. SURDEANU M, MàRQUEZ L, CARRERAS X, et al. Combination strategies for semantic role labeling [J]. Journal of Artificial Intelligence Research, 2007, 29: 105–151.

    MATH  Google Scholar 

  14. XUE N W, PALMER M. Automatic semantic role labeling for Chinese verbs [C]//Proceedings of 19th International Joint Conference on Artificial Intelligence (IJCAI 2005). Edinburgh, Scotland, UK: Morgan Kaufmann Publishers Inc., 2005: 1160–1165.

    Google Scholar 

  15. XUE N W, PALMER M. Calibrating features for semantic role labeling [C]//Proceedings of the 2004 Conference on Empirical Methods in Natural Language Processing (EMNLP 2004). Barcelona, Spain: Association for Computational Linguistics, 2004: 88–94.

    Google Scholar 

  16. GILDEA D, JURAFSKY D. Automatic labeling of semantic roles [J]. Computational Linguistics, 2002, 28(3): 245–288.

    Article  Google Scholar 

  17. BOUZEGHOUB M, GARDARIN G, METAIS E. Database design tools: An expert system approach [C]//Proceedings of 11th International Conference on Very Large Data Bases (VLDB’85). Stockholm, Sweden: Morgan Kaufmann Publishers, 1985: 82–95.

    Google Scholar 

  18. BLACK W J. Acquisition of conceptual data models from natural language descriptions [C]//Proceedings of the 3rd Conference on European Chapter of the Association for Computational Linguistics (EACL’87). Copenhagen, Denmark: Association for Computational Linguistics, 1987: 241–248.

    Chapter  Google Scholar 

  19. SAWYER P, RAYSON P, COSH K. Shallow knowledge as an aid to deep understanding in early phase requirements engineering [J]. IEEE Transactions on Software Engineering, 2005, 31(11): 969–981.

    Article  Google Scholar 

  20. NIU N, EASTERBROOK S. Extracting and modeling product line functional requirements [C]//Proceedings of 16th IEEE International Requirements Engineering Conference (RE2008). Barcelona, Spain: IEEE, 2008: 155–164.

    Chapter  Google Scholar 

  21. ARELLANO A, CARNEY E, AUSTIN M A. Natural language processing of textual requirements [C]//Proceedings of the 10th International Conference on Systems (ICONS 2015). Barcelona, Spain: IARIA XPS Press, 2005: 93–97.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yinglin Wang  (王英林).

Additional information

Foundation item: the National Natural Science Foundation of China (No. 61375053)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Wang, Y. Automatic semantic analysis of software requirements through machine learning and ontology approach. J. Shanghai Jiaotong Univ. (Sci.) 21, 692–701 (2016). https://doi.org/10.1007/s12204-016-1783-3

Download citation

  • Received:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12204-016-1783-3

Key words

CLC number

Navigation