Abstract
A common practice to capture functional requirements of a software system is to utilize use-cases, which are textual descriptions of system usage scenarios written in a natural language. Since the substantial information about the system is captured by the use-cases, it comes as a natural idea to generate from these descriptions the implementation of the system (at least partially). However, the fact that the use-cases are in a natural language makes this task extremely difficult. In this paper, we describe a model-driven tool allowing code of a system to be generated from use-cases in plain English. The tool is based on the model-driven development paradigm, which makes it modular and extensible, so as to allow for use-cases in multiple language styles and generation for different component frameworks.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Ambriola, V., Gervasi, V.: On the systematic analysis of natural language requirements with circe. Automated Software Engineering (2006)
Becker, S., Koziolek, H., Reussner, R.: The Palladio component model for model-driven performance prediction. Journal of Systems and Software 82, 3–22 (2009)
Breaux, T., Anton, A.: Analyzing goal semantics for rights, permissions and obligations. In: RE 2005: Proceedings of the 13th IEEE International Conference on Requirements Engineering, pp. 177–188. IEEE Computer Society, Washington (2005), http://dx.doi.org/10.1109/RE.2005.12
Breaux, T., Anton, A.: Deriving semantic models from privacy policies. In: POLICY 2005: Proceedings of the Sixth IEEE International Workshop on Policies for Distributed Systems and Networks, pp. 67–76. IEEE Computer Society, Washington (2005), http://dx.doi.org/10.1109/POLICY.2005.12
Bruneton, E., Coupaye, T., Stefani, J.B.: The Fractal Component Model, http://fractal.ow2.org/specification/
Bures, T., Carlson, J., Crnkovic, I., Sentilles, S., Vulgarakis, A.: ProCom - the Progress Component Model Reference Manual, version 1.0. Technical Report, Mälardalen University (2008), http://www.mrtc.mdh.se/index.php?choice=publications&id=1508
Bures, T., Hnetynka, P., Plasil, F.: SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model. In: Proceedings of SERA 2006, Seattle, USA, pp. 40–48 (2006)
Open SOA Collaboration: SCA Service Component Architecture: Assembly Model Specification (2007), http://www.osoa.org/download/attachments/35/SCA_AssemblyModel_V100.pdf?version=1
Cregan, A., Schwitter, R., Meyer, T.: Sydney OWL syntax-towards a controlled natural language syntax for OWL 1.1. In: Proceedings of the OWLED 2007 Workshop on OWL: Experiences and Directions, Innsbruck, Austria, vol. 258 (2007)
Denger, C., Berry, D., Kamsties, E.: Higher quality requirements specifications through natural language patterns. In: Proceedings IEEE International Conference on Software - Science, Technology and Engineering, pp. 80–91. IEEE Computer Society, Los Alamitos (2003)
Drazan, J., Vladimir, M.: Improved processing of textual use cases: Deriving behavior specifications. In: van Leeuwen, J., Italiano, G.F., van der Hoek, W., Meinel, C., Sack, H., Plášil, F. (eds.) SOFSEM 2007. LNCS, vol. 4362, pp. 856–868. Springer, Heidelberg (2007)
Eclipse.org: Eclipse Modelling Framework, http://www.eclipse.org/emf
Francu, J., Hnetynka, P.: Automated Code Generation from System Requirements in Natural Language. e-Informatica Software Engineering Journal 3(1), 72–88 (2009)
Object Management Group: CORBA Component Model Specification, Version 4.0 (2006)
Object Management Group: Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification (2008)
Jouault, F., Allilaire, F., Bezivin, J., Kurtev, I., Valduriez, P.: ATL: a QVT-like transformation language. In: OOPSLA Companion, pp. 719–720 (2006)
Kaljurand, K., Fuchs, N.E.: Verbalizing Owl in Attempto Controlled English. In: Proceedings of the OWLED 2007 Workshop on OWL: Experiences and Directions, Innsbruck, Austria, vol. 258 (2007)
Konrad, S., Cheng, B.: Real-time specification patterns. In: ICSE 2005: Proceedings of the 27th international conference on Software engineering, pp. 372–381. ACM, New York (2005), http://doi.acm.org/10.1145/1062455.1062526
Larman, C.: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, 3rd edn. Prentice Hall PTR, Upper Saddle River (2004)
MacDonell, S.G., Min, K., Connor, A.M.: Autonomous requirements specification processing using natural language processing. In: Proceedings of the ISCA 14th International Conference on Intelligent and Adaptive Systems and Software Engineering (IASSE 2005), pp. 266–270. ISCA, Toronto (2005)
Mencl, V.: Deriving behavior specifications from textual use cases. In: Proceedings of Workshop on Intelligent Technologies for Software Engineering (2004)
Mencl, V., Francu, J., Ondrusek, J., Fiedler, M., Plsek, A.: Procasor environment: Interactive environment for requirement specification (2005), http://dsrg.mff.cuni.cz/~mencl/procasor-env/
Oracle (Sun Microsystems): Java Platform, Enterprise Edition (Java EE): Enterprise JavaBeans Technology, http://java.sun.com/products/ejb/
Obeo: Acceleo: Open source plugin for model to text transformation based on templates, http://www.acceleo.org
van Ommering, R., van der Linden, F., Kramer, J., Magee, J.: The Koala Component Model for Consumer Electronics Software. Computer 33(3), 78–85 (2000), http://dx.doi.org/10.1109/2.825699
Plasil, F., Mencl, V.: Getting ‘whole picture’ behavior in a use case model. Journal of Integrated Design and Process Science 7(4), 63–79 (2003)
Plasil, F., Visnovsky, S.: Behavior protocols for software components. IEEE Transactions on Software Engineering 28(11), 1056–1076 (2002), http://doi.ieeecomputersociety.org/10.1109/TSE.2002.1049404
Rash, J.L., Hinchey, M.G., Rouff, C.A., Gracanin, D., Erickson, J.: A requirements-based programming approach to developing a NASA autonomous ground control system. Artif. Intell. Rev. 25(4), 285–297 (2007), http://dx.doi.org/10.1007/s10462-007-9029-2
Seresh, S.M., Ormandjieva, O.: Automated assistance for use cases elicitation from user requirements text. In: Proceedings of the 11th Workshop on Requirements Engineering (WER 2008), 16, Barcelona, Spain, pp. 128–139 (2008)
Smith, R., Avrunin, G., Clarke, L., Osterweil, L.: Propel: An approach supporting property elucidation. In: 24th Intl. Conf. on Software Engineering, pp. 11–21. ACM Press, New York (2002)
Stahl, T., Voelter, M., Czarnecki, K.: Model-Driven Software Development: Technology, Engineering, Management. John Wiley & Sons, Chichester (2006)
Szyperski, C.: Component Software: Beyond Object-Oriented Programming, 2nd edn. Addison-Wesley Professional, Reading (2002) (Hardcover)
Zeng, Y.: Recursive object model (ROM)-Modelling of linguistic information in engineering design. Comput. Ind. 59(6), 612–625 (2008), http://dx.doi.org/10.1016/j.compind.2008.03.002
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Šimko, V., Hnětynka, P., Bureš, T. (2010). From Textual Use-Cases to Component-Based Applications. In: Lee, R., Ma, J., Bacon, L., Du, W., Petridis, M. (eds) Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing 2010. Studies in Computational Intelligence, vol 295. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13265-0_3
Download citation
DOI: https://doi.org/10.1007/978-3-642-13265-0_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-13264-3
Online ISBN: 978-3-642-13265-0
eBook Packages: EngineeringEngineering (R0)