Using Concept Lattices for Requirements Reconciliation
We have developed a requirements engineering process model based on viewpoint development. Our goal is to capture and reconcile a set of requirements in the form of use case descriptions so that a more complete and representative set of requirements will provide the basis for system design and development. Our technique converts the natural language sentences in each individual use case viewpoint into a formal context. We then apply Formal Concept Analysis to generate a concept lattice of the requirements. Our process model and tool allow viewpoints, use cases, sentences and phrases to be selected for comparison, tagging and reconciliation. The final product is a shared used case description that has been agreed upon by the project group. In this paper we provide an example developed by final year software engineering students who used the approach as a means to gain experience in the specification of use cases and the sometimes painful task of arriving at a shared view of the requirements before system design and development commenced. Our next step is evaluation with requirements engineers to develop a full-strength industrial product and process.
KeywordsCase Description Concept Lattice Requirement Engineer Formal Context Formal Concept Analysis
Unable to display preview. Download preview PDF.
- 1.Darke, P., Shanks, G.: Managing user viewpoints in requirement definition. In: 8th Australasian Conference on Information Systems (1995)Google Scholar
- 2.Düwel, S.: Enhancing System Analysis by means of Formal Concept Analysi. In: Conference on Advanced Information Systems Engineering 6th Doctoral Consortium, Heidelberg, Germany (1999)Google Scholar
- 3.Düwel, S., Hesse, W.: Bridging the gap between Use Case Analysis and Class Structure Design by Formal Concept Analysis. In: Ebert, J., Frank, U. (eds.) Modelle und Modellierunssprachen in Informatik and Wirtschaftsinformatik. Proceedings ”Modellierung 2000”, Koblenz, pp. 27–40. Foelbach-Verlag (2000)Google Scholar
- 4.Easterbrook, S., Nuseibeh, B.: Using Viewpoints for Inconsistency Management. BCSEEE Software Engineering Journal, 31–43 (January 1996)Google Scholar
- 5.Finkelstein, A.C.W., Goedicke, M., Kramer, J., Niskier, C.: Viewpoint Oriented Software Development: Methods and Viewpoints in Requirements Engineering. In: Proc. of the 2nd Meteor Workshop on Methods for Formal Specification. LNCS, Springer, Heidelberg (1989)Google Scholar
- 7.Kotonya, G., Sommerville, I.: Requirements Engineering: Process and Techniques. Wiley and Sons, Chichester (1998)Google Scholar
- 8.Mullery, G.P.: CORE - a method for controlled requirements expression. In: Proceedings of the 4th Int. Conf. on Software Engineering (ICSE-4), pp. 126–135. IEEE Computer Society Press, Los Alamitos (1979)Google Scholar
- 9.Richards, D.: Merging Individual Conceptual Models of Requirements. Spec. issue on Model-Based Requirements Engineering for the International Journal of Requirements Engineering (2003)Google Scholar
- 10.Richards, D., Böttger, K., Aguilera, O.: A Controlled Language to Assist Conversion of Use Case Descriptions. In: 15th Australian Joint Conference on Artificial Intelligence, Canberra, Australia, December 2 - 6 (2002)Google Scholar
- 11.Richards, D., Böttger, K.: Representing Requirements in Natural Language as Concept Lattices. In: Proc. 22nd Annual Int. Conference of the British Computer Society’s Specialist Group on Artificial Intelligence (SGES) (ES 2002), Cambridge, UK, December 10-12 (2002)Google Scholar
- 12.Tilley, T., Cole, R., Becker, P., Eklund, P.: A Survey of Formal Concept Analysis Support for software engineering activities. In: Stumme, G., Ganter, G. (eds.) Proceedings of the First International Conference on Formal Concept Analysis - ICFCA 2003, February 2003, Springer, Heidelberg (2003) (to appear)Google Scholar
- 13.Wille, R.: Restructuring lattice theory: an approach based on hierarchies of concepts. In: Ordered Sets, pp. 445–470. Reidel, D, Dordrecht (1982)Google Scholar