Skip to main content
Log in

A novel requirement analysis approach for periodic control systems

  • Research Article
  • Published:
Frontiers of Computer Science Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Alur R, Dill D L. A theory of timed automata. Theoretical Computer Science, 1994, 126: 183–235

    Article  MathSciNet  MATH  Google Scholar 

  2. Ouaknine J, Schneider S. Timed csp: a retrospective. Electronics Notes in Theoretical Computer Science, 2006, 162: 273–276

    Article  Google Scholar 

  3. Baresi L, Pezzè M. An introduction to software testing. Electronics Notes in Theoretical Computer Science, 2006, 148(1): 89–111

    Article  Google Scholar 

  4. 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

    Chapter  Google Scholar 

  5. 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

    Google Scholar 

  6. 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

    Article  Google Scholar 

  7. Chen M, Mishra P. Property learning techniques for efficient generation of directed tests. IEEE Trans. Computers, 2011, 60(6): 852–864

    Article  MathSciNet  Google Scholar 

  8. 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

    Google Scholar 

  9. Plotkin G D. A structural approach to operational semantics. Journal of Logic and Algebra Programming, 2004, 60–61: 17–139

    MathSciNet  Google Scholar 

  10. 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

    Google Scholar 

  11. 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

    Google Scholar 

  12. Nielson F, Nielson H R, Hankin C. Principles of program analysis. Secaucus, NJ, USA: Springer-Verlag New York, Inc., 1999

    Book  MATH  Google Scholar 

  13. 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

    Chapter  Google Scholar 

  14. 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

    Google Scholar 

  15. 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

    Chapter  Google Scholar 

  16. Jahanian F, Mok A K. Modechart: a specification language for realtime systems. IEEE Transactions on Software Engineering, 1994, 20: 933–947

    Article  Google Scholar 

  17. 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

    Chapter  Google Scholar 

  18. 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

    Article  Google Scholar 

  19. Harel D. Statecharts: a visual formalism for complex systems. Science of Computer Programming, 1987, 8(3): 231–274

    Article  MathSciNet  MATH  Google Scholar 

  20. Architecture analysis & design language (AADL). http://http://www.aadl.info/

  21. 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

    Chapter  Google Scholar 

  22. 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

    Article  Google Scholar 

  23. 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

    Article  Google Scholar 

  24. Chen M, Qin X, Koo H M, Mishra P. System-level validation: high-level modeling and directed test generation techniques. Springer, 2012

    Google Scholar 

  25. Smith M, Havelund K. Requirements capture with rcat. In: Proceedings of the International Requirements Engineering Conference (RE). 2008, 183–192

    Google Scholar 

  26. Spin model checker. http://spinroot.com/

  27. 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

    Article  Google Scholar 

  28. Havelund K. Runtime verification of c programs. In: Proceedings of the International conference on Testing of Software and Communicating Systems (TestCom). 2008, 7–22

    Chapter  Google Scholar 

  29. Stolz V, Bodden E. Temporal assertions using aspectj. Electronics Notes on Theoretical Computer Science, 2006, 144: 109–124

    Article  Google Scholar 

  30. 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

    Google Scholar 

  31. 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

    Google Scholar 

  32. The mathworks: stateflow and stateflow coder, user’s guide. www.mathworks.com/help/releases/R13sp2/pdf_doc/stateflow/sf_ug.pdf

  33. Hamon G, Rushby J. An operational semantics for stateflow. International Journal on Software Tools for Technology Transfer, 2007, 9: 447–456

    Article  Google Scholar 

  34. 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

    Google Scholar 

  35. Sagiv M, Reps T, Horwitz S. Precise interprocedural dataflow analysis with applications to constant propagation. Theoretical Computer Science, 1996, 167(1–2): 131–170

    Article  MathSciNet  MATH  Google Scholar 

  36. 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

    Google Scholar 

  37. 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

    Google Scholar 

  38. Ball T, Levin V, Rajamani S K. A decade of software model checking with slam. Communications of ACM, 2011, 54(7): 68–76

    Article  Google Scholar 

  39. Godefroid P. Compositional dynamic test generation. In: Proceedings of the 34th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL). 2007, 47–54

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Geguang Pu.

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

Reprints 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

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11704-013-2008-1

Keywords

Navigation