working on the shopping cart system’s specification that one also needs a "Quantity"
property that was previously lacking. This was therefore added to the initial ontology.
Among future issues to be investigated is to what extent ROM can be made fully
automatic, or it will remain a useful, but quasi-automatic tool. A more extensive
response should deal with each of the ROM modules in separate.
Concerning implementation, ROM will be configured to produce code using other
languages\libraries, e.g. Ruby which is more concise than, e.g., C#/Java. The tool can
also use a specific language to improve the produced scripts, e.g., using partial classes
in C# to separate expectations from the test script.
The main contribution of this work is the usage of mock objects as a fast
implementation means to check system design still in the Runnable Knowledge
abstraction level.
References
1. Adzic, G., Test Driven .NET Development with FitNesse, Neuri, London, UK, 2008.
2. Adzic, G., Bridging the Communication Gap: Specification by Example and Agile
Acceptance Testing, Neuri, London, UK, 2009.
3. Adzic, G., Specification by Example – How Successful Teams Deliver the Right Software,
Manning, New York, USA, 2011.
4. Beck, K., Test Driven Development: By Example, Addison-Wesley, Boston, MA, USA,
2002.
5. Brown, K., Taking executable specs to the next level: Executable Documentation, Blog
post, (see: http://keithps.wordpress.com/2011/06/26/taking-executable-specs-to-the-next-
level-executable-documentation/), 2011.
6. Calero, C., Ruiz, F. and Piattini, M. (eds.): Ontologies in Software Engineering and
Software Technology, Springer, Heidelberg, Germany, 2006.
7. Chelimsky, D., Astels, D., Dennis, Z., Hellesoy, A., Helmkamp, B., and North, D,: The
RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends,
Pragmatic Programmer, New York, USA, 2010.
8. Exman, I, Llorens, J. and Fraga, A.: "Software Knowledge", pp. 9-12, in Exman, I.,
Llorens, J. and Fraga, A. (eds.), Proc. SKY'2010 Int. Workshop on Software Engineering,
2010.
9. Freeman, S., and Pryce N.: Growing Object-Oriented Software, Guided by Tests, Addison-
Wesley, Boston, MA, USA, 2009.
10. Mellor, S. J. and Balcer, M. J.: Executable UML – A Foundation for Model-Driven
Architecture, Addison-Wesley, Boston, MA, USA, 2002.
11. Moq – the simplest mocking library for .NET and Silverlight: (see
http://code.google.com/p/moq/), 2012.
12. North, D.: "Introducing Behaviour Driven Development", Better Software Magazine, (see
http://dannorth.net/introducing-bdd/), 2006.
13. NUnit: (see http://www.nunit.org), 2012.
14. SpecFlow – Pragmatic BDD for .NET: (see http://specflow.org), 2010.
15. Wynne, M. and Hellesoy, A.: The Cucumber Book: Behaviour Driven Development for
Testers and Developers, Pragmatic Programmer, New York, USA, 2012.
16. Yagel, R.: "Can Executable Specifications Close the Gap between Software Requirements
and Implementation?", pp. 87-91, in Exman, I., Llorens, J. and Fraga, A. (eds.), Proc.
SKY'2011 Int. Workshop on Software Engineering, SciTePress, Portugal, 2011.
30