Applying Practical Formal Methods to the Specification and Analysis of Security Properties

  • Constance Heitmeyer
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2052)


The SCR (Software Cost Reduction) toolset contains tools for specifying, debugging, and verifying system and software requirements. The utility of the SCR tools in detecting specification errors, many involving safety properties, has been demonstrated recently in projects involving practical systems, such as the International Space Station, a flight guidance system, and a U.S. weapons system. This paper briefly describes our experience in applying the tools in the development of two secure systems: a communications device and a biometrics standard for user authentication.


International Space Station Security Property Guidance System Software Requirement Weapon System 
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.
    Archer, M., Heitmeyer, C., and Riccobene, E.: Using TAME to prove invariants of automata models: Case studies. In Proc. 2000 ACM SIGSOFT Workshop on Formal Methods in Software Practice (FMSP’00) (August 2000)Google Scholar
  2. 2.
    Bharadwaj, R. and Sims, S.: Salsa: Combining constraint solvers with BDDs for automatic invariant checking. In Proc. Tools and Algorithms for the Construction and Analysis of Systems (TACAS’ 2000), Berlin (March 2000)Google Scholar
  3. 3.
    BioAPI Consortium. The BioAPI Specification. Version 1.00 (March 30, 2000)Google Scholar
  4. 4.
    Steve Easterbrook and John Callahan. Formal methods for verification and validation of partial specifications: A case study. Journal of Systems and Software (1997)Google Scholar
  5. 5.
    Faulk, S.R., Finneran, L., Kirby,Jr., Shah, S., and Sutton, J.: Experience applying the CoRE method to the Lockheed C-130J. In: Proc. 9th Annual Conf. on Computer Assurance (COMPASS’ 94). Gaithersburg, MD (June 1994)Google Scholar
  6. 6.
    Gargantini, A. and Heitmeyer, C.: Automatic generation of tests from requirements specifications. In: Proc. ACM 7th Eur. Software Eng. Conf. and 7th ACM SIGSOFT Symp. on the Foundations of Software Eng. (ESEC/FSE99), Toulouse, FR (September 1999)Google Scholar
  7. 7.
    Heitmeyer, C.L. and McLean J.: Abstract requirements specifications: A new approach and its application. IEEE Trans. Softw. Eng., SE-9(5) (September 1983) 580–589Google Scholar
  8. 8.
    Heitmeyer, C., Kirby,Jr. J., Labaw, B., and Bharadwaj, R.: SCR: A toolset for specifying and analyzing software requirements. In Proc. Computer-Aided Verification, 10th Annual Conf. (CAV’98), Vancouver, Canada (1998)Google Scholar
  9. 9.
    C. Heitmeyer, A. Bull, C. Gasarch, and B. Labaw. SCR: A toolset for specifying and analyzing requirements. In Proc. 10th Annual Conf. on Computer Assurance (COMPASS’ 95), Gaithersburg, MD (June 1995) 109–122Google Scholar
  10. 10.
    Constance Heitmeyer, James Kirby,Jr., and Bruce Labaw. Tools for formal specification, verification, and validation of requirements. In: Proc. 12th Annual Conf. on Computer Assurance (COMPASS’ 97). Gaithersburg, MD (June 1997)Google Scholar
  11. 11.
    C. L. Heitmeyer, R. D. Jeffords, and B. G. Labaw. Automated consistency checking of requirements specifications. ACM Transactions on Software Engineering and Methodology, 5(3) (April—June 1996) 231–261CrossRefGoogle Scholar
  12. 12.
    Heitmeyer, C., Kirby, J., Labaw, B., Archer, M., and Bharadwaj, R.: Using abstraction and model checking to detect safety violations in requirements specifications. IEEE Trans. on Softw. Eng., 24(11) (November 1998)Google Scholar
  13. 13.
    Heninger, K., Parnas, D.L., Shore, J.E., and Kallander, J.W.: Software requirements for the A-7E aircraft. Technical Report 3876, Naval Research Lab., Wash., DC (1978)Google Scholar
  14. 14.
    Heninger, K.L.: Specifying software requirements for complex systems: New techniques and their application. IEEE Trans. Softw. Eng., SE-6(1) (January 1980) 2–13CrossRefGoogle Scholar
  15. 15.
    Hester, S.D., Parnas, D.L., and Utter, D.F.: Using documentation as a software design medium. Bell System Tech. J., 60(8) (October 1981) 1941–1977Google Scholar
  16. 16.
    Holzmann, G.J.: The model checker SPIN. IEEE Transactions on Software Engineering, 23(5) (May 1997) 279–295CrossRefMathSciNetGoogle Scholar
  17. 17.
    Ralph Jeffords and Constance Heitmeyer. Automatic generation of state invariants from requirements specifications. In: Proc. Sixth ACM SIGSOFT Symp. on Foundations of Software Engineering. (November 1998)Google Scholar
  18. 18.
    Kirby,Jr. J., Archer, M., and Heitmeyer, C.: SCR: A practical approach to building a high assurance COMSEC system. In Proceedings of the 15th Annual Computer Security Applications Conference (ACSAC’ 99). IEEE Computer Society Press (December 1999)Google Scholar
  19. 19.
    Meyers, S. and White, S.: Software requirements methodology and tool study for A6-E technology transfer. Technical report, Grumman Aerospace Corp., Bethpage, NY (July 1983)Google Scholar
  20. 20.
    Miller, S.: Specifying the mode logic of a flight guidance system in CoRE and SCR. In: Proc. 2nd ACM Workshop on Formal Methods in Software Practice (FMSP’98) (1998)Google Scholar
  21. 21.
    Parnas, D.L., Asmis, G.J.K., and Madey, J.: Assessment of safety-critical software in nuclear power plants. Nuclear Safety, 32(2) (April—June 1991)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Constance Heitmeyer
    • 1
  1. 1.Naval Research Laboratory (Code 5546)WashingtonUSA

Personalised recommendations