skip to main content
10.1145/2134254.2134256acmotherconferencesArticle/Chapter ViewAbstractPublication PagesisecConference Proceedingsconference-collections
research-article

Creating design from requirements and use cases: bridging the gap between requirement and detailed design

Published: 22 February 2012 Publication History

Abstract

High-level design from requirements continues to follow a manual, process centric approach, with heavy dependence on experts. In this paper we propose "Design Assistant Tool" (DAT) that combines natural language processing techniques and common design heuristics to create a functional design from a set of relatively structured textual requirements and use cases. To create a functional design, DAT processes a set of structured requirements and use cases using a set of heuristics and identifies a set of coarse grained modules, classes, and data entities as UML models. In this process, DAT produces two important design artifacts, namely a set of functional modules and classes and a set of entity classes. The functional modules form the basis of application logic and entity classes form the basis of data model. Our early investigations have shown that the resulting design is a good starting point for the detailed design and implementation.

References

[1]
IEEE Recommended Practice for Architectural Description of Software-Intensive Systems, 2000.
[2]
IEEE Draft Standard for Information Technology--Systems Design--Software Design Descriptions, 2008.
[3]
E. Baniassad and S. Clarke. Theme: An Approach for Aspect-Oriented Analysis and Design. In Proc. of the 26th Intl Conf. on Software Engineering, pages 158--167. IEEE Computer Society, 2004.
[4]
M. Basler, S. Brydon, D. Nourie, and I. Singh. Introducing the Java Pet Store 2.0 Application. http://java.sun.com/developer/technicalArticles/J2EE/petstore/2007.
[5]
G. Booch, I. Jacobson, and J. Rambaugh. The Unified Modeling Language User Guide. Addison Wesley, 2005.
[6]
M. Brandozzi and D. Perry. Transforming goal oriented requirement specifications into architectural prescriptions. In Intl Workshop From Software Requirements to Architectures, pages 54--61, 2001.
[7]
F. P. Brooks. The Mythical Man Month. Addison-Wesley, 20th anniversary edition edition, 1995.
[8]
R. J. A. Buhr. Use case maps as architectural entities for complex systems. IEEE Transactions on Software Engineering, 24(12):1131--1155, 1998.
[9]
C. Duan, J. Cleland-Huang, and B. Mobasher. A Consensus Based Approach to Constrained Clustering of Software Requirements. In CIKM '08: Proceeding of the 17th ACM Conf. on Information and knowledge management, pages 1073--1082. ACM, 2008.
[10]
R. L. Glass. Facts and Fallacies of Software Engineering. Addison Wesley, 2003.
[11]
P. Grunbacher, A. Egyed, and N. Medvidovic. Reconciling Software Requirements and Architectures: The CBSP Approach. In Fifth IEEE Intl Symposium on Requirements Engineering, pages 202--211, 2001.
[12]
B. Hailpern and P. Tarr. Model-Driven Development: The Good, the Bad, and the Ugly. IBM Systems Journal, 45:451--461, 2006.
[13]
J. G. Hall, M. Jackson, R. C. Laney, B. Nuseibeh, and L. Rapanotti. Relating software requirements and architectures using problem frames. In Proc. of the 10th IEEE Intl Conf. on Requirements Engineering, pages 137--144, 2002.
[14]
M. Ilieva and O. Ormandjieva. Automatic transition of natural language software requirements specification into formal presentation. In LNCS, pages 392--397. Springer-Verlag, 2005.
[15]
P. Jain, K. Verma, A. Kass, and R. G. Vasquez. Automated review of natural language requirements documents: In ISEC 2009, pages 37--46. ACM.
[16]
A. Kleppe, J. Warmer, and W. Bast. MDA Explained: The Model Driven Architecture: Practice and Promise. 2003.
[17]
P. Kruchten. Architectural Blueprints-The "4+1" View Model of Software Architecture. IEEE Software, 12(6):42--50, 1995.
[18]
P. Kruchten. The Rational Unified Process: An Introduction. Object Technology Series. Addison-Wesley, 3 edition, 2003.
[19]
G. Lami. QuARS: A Tool for Analyzing Requirements. Tech Report CMU/SEI-2005-TR-014, ESC-TR-2005-014, CMU/SEI, 2005.
[20]
Z. Li. Progressing problems from requirements to specifications in problem frames. In Intl Conf. on Software Engineering, IWAAPF '08, pages 53--59, 2008.
[21]
D. Liu, K. Subramaniam, A. Eberlein, and B. H. Far. Natural language requirements analysis and class model generation using UCDA. In LNCS, pages 295--304. Springer-Verlag, 2004.
[22]
R. Lutz. Evolving good hierarchical decompositions of complex systems. Journal of Systems Architecture, 47(7):613--634, 2001.
[23]
G. A. Mala and G. Uma. Automatic Construction of Object-Oriented Design Models {UML Diagrams} from Natural Language Requirements Specification. In Proc 9th Pacific Rim Intl Conf. on. Artificial Intelligence, pages 1155--1159, 2006.
[24]
A. Mattsson, B. Lundell, and B. Lings. Modelling Architectural Design Rules in UML. In EMMSAD'08 Workshop, in conjunction with CAiSE'08, pages, 71--79, 2008.
[25]
A. Mattsson, B. Lundell, B. Lings, and B. Fitzgerald. Linking Model-Driven Development and Software Architecture: A Case Study. IEEE Transactions on Software Engineering, 35(1):83--93, 2009.
[26]
L. Mich and R. Garigliano. NL-OOPS: a Requirements Analysis Tool based on Natural Language Processing. In Proc 3rd Intl Conf. on Data Mining, pages 321--330, 2002.
[27]
S. P. Overmyer, B. Lavoie, and O. Rambow. Conceptual modeling through linguistic analysis using LIDA. In Proceedings of the 23rd Intl Conf. on Software Engineering, pages 401--410, 2001.
[28]
I. C. Parmee. Towards interactive evolutionary design systems. In Evolutionary and Adaptive Computing in Engineering Design. Springer-Verlag, 2001.
[29]
D. Pilone and N. Pitman. UML 2.0 in a nutshell. O'Reilly, 2005.
[30]
J. Rech, E. Ras, and B. Becker. Intelligent Assistance in German Software Development: a Survey. IEEE Software, 24(4):72--79, 2007.
[31]
S. Sarkar and S. Thonse. Eaml- architecture modeling language for enterprise applications. In Intl Conf. on E-Comm. Tech. CEC-East, 40--47. IEEE, 2004.
[32]
S. Sarkar and K. Verma. Accelerating Technical Design of Business Applications- A Knowledge Based Approach. In ISEC 2010. ACM.
[33]
D. K. Deeptimahanti and R. Sanyal Semi-automatic Generation of UML models from Natural Language Requirements. In ISEC 2011. ACM.
[34]
D. Schmidt. Model-Driven Engineering. Computer, 39(2):25--31, 2006.
[35]
R. Seater and D. Jackson. Problem frame transformations: deriving specifications from requirements. In Intl Conf. on Software Engineering, IWAAPF '06, 71--80. ACM, 2006.
[36]
B. Selic. The Pragmatics of Model-Driven Development. IEEE Software, 20(5):19--25, 2003.
[37]
V. S. Sharma, S. Sarkar, K. Verma, A. Panayappan, and A. Kass. Extracting high-level functional design from software requirements. In 16th Asia-Pacific Software Engineering Conf., pages 35--42. IEEE, 2009.
[38]
C. L. Simons, I. C. Parmee, and R. Gwynllyw. Interactive, Evolutionary Search in Upstream Object-oriented Class Design. IEEE Transactions on Software Engineering, 2010.
[39]
G. C. Simsion and G. C. Witt. Data Modeling Essentials. Morgan Kaufmann, 2004.
[40]
D. Steinberg, F. Budinsky, M. Paternostro, and E. Merks. EMF: Eclipse Modeling Framework. Eclipse. Addison Wesley, 2nd edition, 2008.
[41]
D. Svetinovic, D. Barry, and M. Godfrey. Concept Identification in Object-Oriented Domain Analysis: Why Some Students Just Don't Get It. In 13th IEEE Conf. on Requirements Engineeering (RE 05), pages 189--198, 2005.
[42]
J. Tolvanen and S. Kelly. Defining Domain-Specific Modeling Languages to Automate Product Derivation: Collected Experiences. In Proc. 9th Intl Conf. Software Product Lines, pages 198--209. 2005.
[43]
P. Wegner and D. Goldin. Interactive Computation: The New Paradigm. Springer-Verlag, 2006.
[44]
C. Zannier, M. Chiasson, and F. Maurer. A Model of Design Decision Making Based on Empirical Results of Interviews with Software Designers. Information and Software Technology, 49(6):637--653, 2007.

Cited By

View all
  • (2024)A scoping review of auto-generating transformation between software development artifactsFrontiers in Computer Science10.3389/fcomp.2023.13060645Online publication date: 8-Jan-2024
  • (2021)Database Access Layer Code Generation Directly from Use Case ScenariosInternational Journal of Systems Applications, Engineering & Development10.46300/91015.2021.15.715(41-63)Online publication date: 1-Apr-2021
  • (2019)A Virtual Reality Enhanced Cyber-Human Framework for Orthopedic Surgical TrainingIEEE Systems Journal10.1109/JSYST.2019.289606113:3(3501-3512)Online publication date: Sep-2019
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
ISEC '12: Proceedings of the 5th India Software Engineering Conference
February 2012
174 pages
ISBN:9781450311427
DOI:10.1145/2134254
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

  • IITK: Indian Institute of Technology Kanpur

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 February 2012

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. UML
  2. functional design
  3. high-level design
  4. requirements to design

Qualifiers

  • Research-article

Conference

ISEC '12
Sponsor:
  • IITK
ISEC '12: India Software Engineering Conference 2012
February 22 - 25, 2012
Kanpur, India

Acceptance Rates

ISEC '12 Paper Acceptance Rate 26 of 107 submissions, 24%;
Overall Acceptance Rate 76 of 315 submissions, 24%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)10
  • Downloads (Last 6 weeks)0
Reflects downloads up to 16 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)A scoping review of auto-generating transformation between software development artifactsFrontiers in Computer Science10.3389/fcomp.2023.13060645Online publication date: 8-Jan-2024
  • (2021)Database Access Layer Code Generation Directly from Use Case ScenariosInternational Journal of Systems Applications, Engineering & Development10.46300/91015.2021.15.715(41-63)Online publication date: 1-Apr-2021
  • (2019)A Virtual Reality Enhanced Cyber-Human Framework for Orthopedic Surgical TrainingIEEE Systems Journal10.1109/JSYST.2019.289606113:3(3501-3512)Online publication date: Sep-2019
  • (2018)Formalising natural language specifications using a cognitive linguistic/configuration based approachInformation Systems10.1016/j.is.2015.04.00354:C(191-208)Online publication date: 30-Dec-2018
  • (2016)UCFrameACM SIGSOFT Software Engineering Notes10.1145/2894784.289479541:2(1-13)Online publication date: 11-May-2016
  • (2016)Automated transformation of design text ROM diagram into SysML modelsAdvanced Engineering Informatics10.1016/j.aei.2016.07.00330:3(585-603)Online publication date: 1-Aug-2016
  • (2014)Investigating the use of controlled natural language as problem definition input for computer-aided designProceedings of the 2014 International Conference on Innovative Design and Manufacturing (ICIDM)10.1109/IDAM.2014.6912672(65-70)Online publication date: Aug-2014
  • (2014)Conceptual Modeling of Non-Functional Requirements from Natural Language TextComputational Intelligence in Data Mining - Volume 310.1007/978-81-322-2202-6_1(1-11)Online publication date: 12-Dec-2014

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media