Abstract
A design specification is the artifact intermediate between implemented code and the customer requirements. In this paper we argue that customer requirements and design specifications should be testable and testable early in the design cycle leading to early detection of requirement and specification errors. The core idea behind early testable requirements is that the problem is described before we search for a solution that can be tested against the problem description. We also want the problem description to drive the design. We provide a method for describing early testable requirements and specifications and a support tool called ESpec. ESpec allows for the description of testable requirements via Fit tables as well as testable design specifications via contracts written in Eiffel using mathematical models following the single model principle. The tool can mechanically check the requirements and specifications.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Ambler, S.: Agile Model Driven Development is Good Enough. IEEE Software 20(5), 71–73 (2003)
Andronache, T.: The english language as an effective it tool. Computerworld, 18 (February 2007)
Barnett, M., DeLine, R., Jacobs, B., Fhndrich, M., Rustan, K., Leino, M., Schulte, W., Venter, H.: The Spec# Programming System: Challenges and Directions. Position paper at VSTTE (2005)
Chalin, P., Kiniry, J.R., Leavens, G.T., Poll, E.: Beyond Assertions: Advanced Specification and Verification with JML and ESC/Java2. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2005. LNCS, vol. 4111, Springer, Heidelberg (2006)
Standish Group. Project management: The criteria for success. Software Magazine (February 2001)
Hoare, C.A.R.: Proof of correctness of data representations. Acta Inf. 1, 271–281 (1972)
Jackson, M.: Problem frames: analyzing and structuring software development problems. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA (2001)
Mugridge, R., Cunningham, W.: Fit for Developing Software: Framework for Integrated Tests. Prentice-Hall, Englewood Cliffs (2005)
Ostroff, J., Wang, C.-W., Kerfoot, E., Torshizi, F.A.: Automated model-based verification of object oriented code. In: Verified Theories: Theories, Tools, Experiments (VSTTE Workshop, Floc 2006). Microsoft Research MSR-TR-2006-117 (2006)
Ostroff, J.S., Paige, R.F.: The Logic of Software Design. Proc. IEE - Software 147(3), 72–80 (2000)
Ostroff, J.S., Paige, R.F., Makalsky, D., Brooke, P.J.: E-tester: a contract-aware and agent-based unit testing framework for eiffel. Journal of Object Technology 4(7) (September-October 2005)
Paige, R., Ostroff, J.S.: The Single Model Principle. Journal of Object Oriented Technology 1(5) (2002)
Paige, R.F., Ostroff, J.S.: Developing BON as an Industrial-Strength Formal Method (Developing BON as an Industrial-Strength Formal Method). In: Wing, J.M., Woodcock, J.C.P., Davies, J. (eds.) FM 1999. LNCS, vol. 1708, Springer, Heidelberg (1999)
Torshizi, F.A., Ostroff, J.S.: ESpec – a Tool for Agile Development via Early Testable Specifications. Technical Report CS-2006-04, York University, Toronto (2006)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ostroff, J.S., Torshizi, F.A. (2007). Testable Requirements and Specifications. In: Gurevich, Y., Meyer, B. (eds) Tests and Proofs. TAP 2007. Lecture Notes in Computer Science, vol 4454. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73770-4_2
Download citation
DOI: https://doi.org/10.1007/978-3-540-73770-4_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-73769-8
Online ISBN: 978-3-540-73770-4
eBook Packages: Computer ScienceComputer Science (R0)