@inproceedings{f6e72184e9c74ea1a6214d06cdaeb49e,
title = "RM2PT: A tool for automated prototype generation from requirements model",
abstract = "Prototyping is an effective and efficient way of requirement validation to avoid introducing errors in the early stage of software development. However, manually developing a prototype of a software system requires additional efforts, which would increase the overall cost of software development. Based on our proposed approach, we develop RM2PT: a tool for generating prototypes from requirements models automatically. A requirements model consists of a use case diagram, a conceptual class diagram, system sequence diagrams for use cases, and the formal contracts of their system operations in OCL (Object Constraint Language). RM2PT can generate executable MVC (Model View Controller) prototypes from requirements models automatically. We evaluate the tool with four case studies. 93.65% of requirement specifications can be generated to the executable Java source code successfully, and only 6.35% are non-executable for our current provided generation algorithm such as sorting and event-call, which can be implemented by developers manually or invoking the APIs of advanced algorithms in Java library. The tool is efficient that the one second generated prototype of a case study requires approximate nine hours manual implementation by skilled programmers.",
keywords = "Code Generation, OCL, Prototype, Requirements Model, Requirements Validation, UML",
author = "Yilong Yang and Xiaoshan Li and Zhiming Liu and Wei Ke",
note = "Publisher Copyright: {\textcopyright} 2019 IEEE.; 41st IEEE/ACM International Conference on Software Engineering: Companion, ICSE-Companion 2019 ; Conference date: 25-05-2019 Through 31-05-2019",
year = "2019",
month = may,
doi = "10.1109/ICSE-Companion.2019.00038",
language = "English",
series = "Proceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering: Companion, ICSE-Companion 2019",
publisher = "Institute of Electrical and Electronics Engineers Inc.",
pages = "59--62",
booktitle = "Proceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering",
address = "United States",
}