Designing Specification Languages for Process Control Systems: Lessons Learned and Steps to the Future?

  • Nancy G. Leveson
  • Mats P. E. Heimdahl
  • Jon Damon Reese
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1687)


Previously, we defined a blackbox formal system modeling language called RSML (Requirements State Machine Language). The language was developed over several years while specifying the system requirements for a collision avoidance system for commercial passenger aircraft. During the language development, we received continual feed- back and evaluation by FAA employees and industry representatives, which helped us to produce a specification language that is easily learned and used by application experts.

Since the completion of the RSML project, we have continued our re- search on specification languages. This research is part of a larger effort to investigate the more general problem of providing tools to assist in developing embedded systems. Our latest experimental toolset is called SpecTRM (Specification Tools and Requirements Methodology), and the formal specification language is SpecTRM-RL (SpecTRM Requirements Language).

This paper describes what we have learned from our use of RSML and how those lessons were applied to the design of SpecTRM-RL.We discuss our goals for SpecTRM-RL and the design features that support each of these goals.


State Machine Modeling Language Internal Model Software Requirement Semantic Distance 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    D. Harel. Statecharts: A visual formalism for complex systems. Science of Computer Programming, pages 231–274, 1987.Google Scholar
  2. 2.
    Mats P. E. Heimdahl and Nancy G. Leveson. Completeness and consistency in hierarchical state-base requirements. IEEE Transactions on Software Engineering, pages 363–377, June 1996.Google Scholar
  3. 3.
    C.L. Heitmeyer, R.D. Jeffords, and B.G. Labaw. Automated consistency checking of requirements specifications. ACM Transactions of Software Engineering and Methodology, 5(3):231–261, July 1996.CrossRefGoogle Scholar
  4. 4.
    K.L. Heninger. Specifying software requirements for complex systems: New techniques and their application. IEEE Transactions on Software Engineering, 6(1):2–13, Januaray 1980.CrossRefGoogle Scholar
  5. 5.
    Edwin L. Hutchins, James D. Hollan, and Donald A. Norman. Direct manipulation interfaces. Human-Computer Interaction, 1:311–338, 1985.CrossRefGoogle Scholar
  6. 6.
    Matthew S. Jaffe, Nancy G. Leveson, Mats P.E. Heimdahl, and Bonnie E. Melhart. Software requirements analysis for real-time process-control systems. IEEE Transactions on Software Engineering, 17(3):241–258, March 1991.CrossRefGoogle Scholar
  7. 7.
    D.J. Keenan and M.P.E. Heimdahl. Code generation from hierarchical state machines. In Proceedings of the International Symposium on Requirements Engineering, 1997.Google Scholar
  8. 8.
    N.G. Leveson. Safeware: System Safety and Computers. Addison Wesley, 1995.Google Scholar
  9. 9.
    N.G. Leveson, M.P.E. Heimdahl, H. Hildreth, and J.D. Reese. Requirements specification for process-control systems. IEEE Transactions on Software Engineering, pages 684–706, September 1994.Google Scholar
  10. 10.
    N.G. Leveson, J.D. Reese, S. Koga, L.D. Pinnel, and S.D. Sandys. Analyzing requirements specifications for mode confusion errors. In Proceedings of the Workshop on Human Error and System Development, 1997.Google Scholar
  11. 11.
    E.I. Lowe. Computer Control in Process Industries. Peregrinus, 1971.Google Scholar
  12. 12.
    Robyn R. Lutz. Targeting safety related errors during software requirements analysis. Journal of Systems Software, 34(3):223–230, September 1996.CrossRefGoogle Scholar
  13. 13.
    David L. Parnas. Tabular representations of relations. Technical Report CLR report No. 260, McMaster University, Hamilton, Ontario, October 1992.Google Scholar
  14. 14.
    David L. Parnas and Jan Madey. Functional documentation for computer systems engineering (volume 2). Technical Report CRL 237, McMaster University, Hamilton, Ontario, September 1991.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1999

Authors and Affiliations

  • Nancy G. Leveson
    • 1
  • Mats P. E. Heimdahl
    • 2
  • Jon Damon Reese
    • 1
    • 2
  1. 1.Aeronautics and Astronautics Dept.MITCambridgeUSA
  2. 2.Computer Science and Engineering DepartmentUniversity of MinnesotaMinneapolisUSA

Personalised recommendations