The transition from requirements analysis to design has always been a difficult task in the software development process. Natural Language (NL) requirements descriptions of the problem domain, captured from the stakeholder, are commonly unclear and open to misinterpretation. To date, automated Natural Language Processing (NLP) tools for requirements elicitation and modelling have only limited exploration. This research aims to improve software development efficiency based on an automated transition from a textual to a dynamic software model. This research work covers the Rational Unified Process (RUP), and Unified Software Development Process (USDP) as their processes relate to how the textual requirement is modelled into Unified Modelling Language (UML) diagrams. This means that Natural Language Understanding (NLU) techniques will be used on the textual input to generate interaction diagrams. The approach to this research is to look at existing related work and previous solutions. The finding is that object-oriented models are typically generated semi-automatically from textual requirements and then verified by human experts in the problem domain. The results often fail to define accurate candidate classes, attributes, and the relationship between objects. This lack of satisfaction is contributed by the limited or non-existent use of an expert domain ontology and the use of largely unrestricted input text, making the task more difficult than it needs to be. Following that, an approach has been developed that provides a framework for developing Unified Modelling Language (UML) software designs from Natural Language (NL). A technique and supporting tool have been created where grammatical rules are utilised to assign event flows resulting from a Use Case Model. In the method, a domain-oriented ontology is built, mapping to the Natural Language (NL) input and modelled domain, and this is used to help assure that the customer and analyst have a shared understanding of the problem domain. The ontology(s) provides the necessary semantic information system on which further design models can be built. The research makes use of the domain model from Business Management Ontology (BMO) and the Role Playing Game (RPG) ontology. These have been enhanced and extended to suit two case studies: a Point of Sale (PoS) system and a CLUEDO game. In both cases, responsibilities are assigned to software objects automatically using the General Responsibility Assignment Software Principles (GRASP) guidelines along with encoded using the Drools Planner. Drools Planner helps to solve the planning problem using a meta-heuristic algorithm that deals with each pattern constraint's complexity with score rules. This is the construction of UML sequence diagrams, representing the realisation of the use case model. The outcomes show that the high-quality sequence diagrams can be generated, and the analysis also significantly improves the quality analysis model in terms of completeness, redundancy, understandability and correctness. The development of this approach for automated natural language to object-oriented analysis and design will help to assist software development teams by helping to produce a clearer specification and more reliable synthesised software model.
Date of Award | Jul 2022 |
---|
Original language | English |
---|
Awarding Institution | - Queen's University Belfast
|
---|
Sponsors | Malaysia Ministry of Education |
---|
Supervisor | Desmond Greer (Supervisor) & Philip Hanna (Supervisor) |
---|
- Requirement engineering
- natural language processing
- software models
- ontology
Visual semi-automation of requirements specification to dynamic models
Jali, N. (Author). Jul 2022
Student thesis: Masters Thesis › Master of Philosophy