Abstract
Periodic control systems (PCSs) are widely used in real-time embedded system domain. However, traditional manual requirement analysis assumes the expert knowledge, which is laborious and error-prone. This paper proposes a novel requirement analysis approach, which supports the automated validation of the informal requirement specifications. Based on the normalized initial requirement documents, our approach can construct an intermediate SPARDL model with both formal syntax and semantics. To check the overall system behaviors, our approach can transform the SPARDL models into executable code for simulation. The derived prototype simulator from SPARDL models enables the testing-based system behavior validation. Moreover, our approach enables the analysis of the dataflow relations in SPARDL models. By revealing input/output and affecting relations, our dataflow analysis techniques can help software engineers to figure out the potential data dependencies between SPARDL modules. This is very useful for the module reuse when a new version of the system is developed. A study of our approach using an industry design demonstrates the practicality and effectiveness of our approach.
Similar content being viewed by others
References
Alur R, Dill D L. A theory of timed automata. Theoretical Computer Science, 1994, 126: 183–235
Ouaknine J, Schneider S. Timed csp: a retrospective. Electronics Notes in Theoretical Computer Science, 2006, 162: 273–276
Baresi L, Pezzè M. An introduction to software testing. Electronics Notes in Theoretical Computer Science, 2006, 148(1): 89–111
Zhang J. Specification analysis and test data generation by solving Boolean combinations of numeric constraints. In: Proceedings of Asia-Pacific Conference on Quality Software (APAQS). 2000, 267–274
Staats M, Whalen M W, Heimdahl M P. Programs, tests, and oracles: the foundations of testing revisited. In: Proceedings of the International Conference on Software Engineering (ICSE). 2011, 391–400
Chen M, Mishra P, Kalita D. Efficient test case generation for validation of UML activity diagrams. Design Automation for Embedded Systems, 2010, 14: 105–130
Chen M, Mishra P. Property learning techniques for efficient generation of directed tests. IEEE Trans. Computers, 2011, 60(6): 852–864
Wang Z, Yu X, Sun T, Pu G, Ding Z, Hu J. Test data generation for derived types in c program. In: Proceedings of the 3rd IEEE International Symposium on Theoretical Aspects of Software Engineering. 2009, 155–162
Plotkin G D. A structural approach to operational semantics. Journal of Logic and Algebra Programming, 2004, 60–61: 17–139
Wang Z, Li J, Zhao Y, Qi Y, Pu G, He J, Gu B. SPARDL: a requirement modeling language for periodic control system. In: Proceedings of International Symposium on Leveraging Applications (ISoLA). 2010, 594–608
Li J, Wang Z, Zhao Y, Pu G, Qi Y, Gu B. An event-b interpretation for spardl model. In: Proceedings of the 13th International Symposium on High-Assurance System Engineering. 2011, 41–48
Nielson F, Nielson H R, Hankin C. Principles of program analysis. Secaucus, NJ, USA: Springer-Verlag New York, Inc., 1999
Hammond K, Michaelson G. Hume: a domain-specific language for real-time embedded systems. In: Proceedings of Conference on Generative Programming and Component Engineering (GPCE). 2003, 37–56
Heitmeyer C. Using the scr toolset to specify software requirements. In: Proceedings of the IEEE Workshop on Industrial Strength Formal Specification Techniques (WIFT). 1998, 12–13
Clements P C. A survey of architecture description languages. In: Proceedings of the 8th International Workshop on Software Specification and Design (IWSSD). 1996, 16–25
Jahanian F, Mok A K. Modechart: a specification language for realtime systems. IEEE Transactions on Software Engineering, 1994, 20: 933–947
Oh H, Ha S. Hardware-software cosynthesis of multi-mode multi-task embedded systems with real-time constraints. In: Proceedings of the International Symposium on Hardware/Software Codesign (CODES). 2002, 133–138
Schmitz M T, Al-Hashimi B M, Eles P. Cosynthesis of energy-efficient multimode embedded systems with consideration of mode-execution probabilities. IEEE Transactions on CAD of Integrated Circuits and Systems, 2005, 24(2): 153–169
Harel D. Statecharts: a visual formalism for complex systems. Science of Computer Programming, 1987, 8(3): 231–274
Architecture analysis & design language (AADL). http://http://www.aadl.info/
Liu N, Grundy J, Hosking J. A visual language and environment for composing web services. In: Proceedings of the IEEE/ACM international Conference on Automated Software Engineering (ASE). 2005, 321–324
Luna E R, Rossi G, Garrigós I. Webspec: a visual language for specifying interaction and navigation requirements in web applications. Requirements Engineering, 2011, 16(4): 297–321
Cornelissen B, Zaidman A, Deursen V A. A controlled experiment for program comprehension through trace visualization. IEEE Transactions on Software Engineering, 2011, 37: 341–355
Chen M, Qin X, Koo H M, Mishra P. System-level validation: high-level modeling and directed test generation techniques. Springer, 2012
Smith M, Havelund K. Requirements capture with rcat. In: Proceedings of the International Requirements Engineering Conference (RE). 2008, 183–192
Spin model checker. http://spinroot.com/
Alur R, Ivancic F, Kim J, Lee I, Sokolsky O. Generating embedded software from hierarchical hybrid models. ACM SIGPLAN Notice, 2003, 38(7): 171–182
Havelund K. Runtime verification of c programs. In: Proceedings of the International conference on Testing of Software and Communicating Systems (TestCom). 2008, 7–22
Stolz V, Bodden E. Temporal assertions using aspectj. Electronics Notes on Theoretical Computer Science, 2006, 144: 109–124
Henzinger T A, Horowitz B, Kirsch C M. Giotto: a time-triggered language for embedded programming. Technical Report, Department of Electronic Engineering and Computer Science, University of California, Berkeley, 2001
Liu X, Xiong Y, Lee E A. The ptolemy ii framework for visual languages. In: Proceedings of the IEEE Symposia on Human Centric Computing Languages and Environments (HCC). 2001, 50–51
The mathworks: stateflow and stateflow coder, user’s guide. www.mathworks.com/help/releases/R13sp2/pdf_doc/stateflow/sf_ug.pdf
Hamon G, Rushby J. An operational semantics for stateflow. International Journal on Software Tools for Technology Transfer, 2007, 9: 447–456
Reps T, Horwitz S, Sagiv M. Precise interprocedural dataflow analysis via graph reachability. In: Proceedings of the ACM SIGPLANSIGACT Symposium on Principles of Programming Languages (POPL). 1995, 49–61
Sagiv M, Reps T, Horwitz S. Precise interprocedural dataflow analysis with applications to constant propagation. Theoretical Computer Science, 1996, 167(1–2): 131–170
Goodwin D W. Interprocedural dataflow analysis in an executable optimizer. In: Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI). 1997, 122–133
Ball T, Rajamani S K. Bebop: a path-sensitive interprocedural dataflow engine. In: Proceedings of ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering (PASTE). 2001, 97–103
Ball T, Levin V, Rajamani S K. A decade of software model checking with slam. Communications of ACM, 2011, 54(7): 68–76
Godefroid P. Compositional dynamic test generation. In: Proceedings of the 34th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL). 2007, 47–54
Author information
Authors and Affiliations
Corresponding author
Additional information
Zheng WANG received his BS in Software Engineering and PhD in Computer applied technique from East China Normal University. Now he is a software requirement engineer in the Software Development Department at Beijing Institute of Control Engineering, China Academy of Space Technology. His main research topic focuses on the automatization and formalization of requirement analysis for embedded control software. His work also relates with automatic test case generation.
Geguang PU holds a PhD in mathematics from Peking University, Beijing, China. Currently, he works as an associate professor at Software Engineering Institute of East China Normal University, Shanghai, China. His research interests include program analysis, formal modeling of business processes, automated testing, and verification. From 2006, he served as PC members in a number of international academic conferences, including ICFEM10/11, UTP10/11/12, ICTAC12 etc. Recently Dr. Pu uses the lightweight formal model to analyze timed-driven control software, including requirement analysis and automated test data generation.
Jianwen LI is a PhD graduate student supervised by Jifeng HE and Geguang PU in East China Normal University. Now he is in University Rice as a visiting student. His research topics are LTL model checking, automata theory, and data flow analysis.
Yuxiang CHEN is a MS graduate student supervised by Jifeng HE and Geguang PU in East China Normal University. His research topics are requirement analysis and automatic testing.
Yongxin ZHAO holds a PhD in technology of computer application from East China Normal University. He is a research fellow at School of Computing of National University of Singapore, Singapore. His research interests include program analysis and verification, semantics theory, web services and formal methods and he owns more than 15 referred publications.
Mingsong CHEN received the BS and ME from Department of Computer Science and Technology, Nanjing University, Nanjing, China, in 2003 and 2006 respectively, and the PhD in Computer Engineering from the University of Florida, in 2010. He is currently an associate professor with the Software Engineering Institute of East China Normal University. His research interests are in the area of design automation of embedded systems, formal verification techniques, and software engineering.
Bin GU received the BS and MS from Department of Computer Science and Technology, Harbin Institute of Technology, China, in 1991 and 1994 respectively. He is a senior research fellow in Beijing Institute of Control Engineering. His research interests are in the area of development of embedded systems and cybernation.
Mengfei YANG received the BS from Northwestern Polytechnical University in 1982, the MS from Beijing Institute of Control Engineering in 1985, and the PhD from Tsinghua University in 2005. He is a principle research fellow in China Academy of Space Technology. His research interests are in the area of spacecraft design, cybernation, and trustable embedded systems.
Jifeng HE is currently a professor of computer science at East China Normal University (ECNU). He is also the Dean of Software Engineering Institute, ECNU. He is an Academician of Chinese Academy of sciences. He was appointed as the Chief Scientist for several projects of NSFC and 973 program. And he was also appointed as the leader of the creative research group of the National Natural Science Foundation of China. In recent years, he has also been working on the mathematical model about the co-design of software and hardware, his work focuses on design of real-time embedded systems and Cyber Physical system.
Rights and permissions
About this article
Cite this article
Wang, Z., Pu, G., Li, J. et al. A novel requirement analysis approach for periodic control systems. Front. Comput. Sci. 7, 214–235 (2013). https://doi.org/10.1007/s11704-013-2008-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11704-013-2008-1