Abstract
Structured Object-Oriented Formal Language (SOFL) is a representative formal engineering method for software development. It offers a three-step specification approach to constructing formal specifications, and specification-based inspection and testing for verification and validation. In this paper, we describe a novel approach to applying the SOFL method to achieve agile development process. This approach results from our experience in several collaboration projects with industry, and aims to strike a balance between the fast delivery of software product and the assurance of its quality. We have tested the approach in developing a prototype test support tool.
Similar content being viewed by others
References
Miller T, Strooper P (2002) Model-based specification animation using testgraphs. In: Proceedings of 4th international conference on formal engineering methods. LNCS, Springer, Shanghai, pp 192–203
Liu S (1999) Verifying consistency and validity of formal specifications by testing. In: Proceedings of the world congress on formal methods in the development of computing systems. LNCS. Springer, Toulouse, pp 896–914
Woodcock J, Larsen PG, Bicarregui J, Fitzgerald J (2009) Formal methods: practice and experience. ACM Comput Surv 41(4): 1–39
Kurita T, Nakatsugawa Y, Ohta Y (2005) Applying formal specification method in the development of an embedded mobile FeliCa IC Chip (in Japanese). In: Proceedings of the 2005 software symposium. Toyama, Japan, pp 73–80
Sahara S (2004) An experience of applying formal method on a large business application (in Japanese). In: Proceedings of 2004 symposium of science and technology on system verification, AIST, Osaka, Japan, pp 93–100
Liu S, Offutt AJ, Ho-Stuart C, Sun Y, Ohba M (1998) SOFL: a formal engineering methodology for industrial applications. IEEE Trans Softw Eng 24(1):337–344
Liu S (2004) Formal engineering for industrial software development using the SOFL method. Springer, Berlin
Abrahamsson P, Salo O, Ronkainen J, Warsta J (2002) Agile software development methods: review and analysis. Espoo 2002, VTT Publications 478
Beck K (1999) Embracing change with extreme programming. IEEE Comput 32(10):70–77
Liu S (2007) Integrating specification-based review and testing for detecting errors in programs. In: 9th international conference on formal engineering methods. LNCS, vol 4789. Springer, Boca Raton, pp 136–150
Schwaber K, Beedle M (2002) Agile software development with scrum. Prentice-Hall, Upper Saddle River
Stapleton J (1997) Dynamic systems development method—the method in practice. Addison Wesley, Reading
Black S, Boca PP, Bowen JP, Gorman J, Hinchey M (2009) Formal versus agile: survival of the fitest? IEEE Comput 42(9):37–45
Suhaib SM, Mathaikutty DA, Shukla SK, Berner D (2005) XFM: an incremental methodology for developing formal models. ACM Trans Des Autom Electron Syst 10(4): 589–609
Eleftherakis G, Cowling AJ (2003) An agile formal development methodology. In: Proceedings of 1st South East European workshop on formal methods (SEEFM03), Hawaii, November 2003
Liu S, Takahashi K, Hayashi T, Nakayama T (2009) Teaching formal methods in the context of software engineering. Inroads SIGCSE Bull 41(2): 17–23
Author information
Authors and Affiliations
Corresponding author
Additional information
This work is supported in part by NII Collaborative Research Program and the NSFC Grant (No. 60910004).
Rights and permissions
About this article
Cite this article
Liu, S. An approach to applying SOFL for agile process and its application in developing a test support tool. Innovations Syst Softw Eng 6, 137–143 (2010). https://doi.org/10.1007/s11334-009-0114-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11334-009-0114-3