Abstract
Open standardization seems to be very popular among software developers as it simplifies the standard’s adoption by the software engineering. Formal specification methods, while very promising, are being adopted slowly as the industry seems to have little motivation to move into this territory. In this paper the authors present (1) the idea of applying formal specification techniques to open standards’ specifications, and (2) an example of a formal specification of the Rich Site Summary (RSS) v2.0 open standard. The authors provide evidence for the advantages of the open standards formal specification over natural language documentations: formal specifications are more concise, less ambiguous, more complete with respect to the original documentation and, when using certain kinds of specification languages, executable and reusable as they support module inheritance. The merging of formal specification methods and open standards allows (1) a more concrete standard design; (2) an improved understanding of the environment under design; (3) an enforced certain level of precision into the specification, and also (4) provides software engineers with extended property checking/verification capabilities, especially if they opt to use any algebraic specification language. The authors showcase how the RSS standard can be formally specified using an algebraic specification language and demonstrate how can that be beneficial.
Similar content being viewed by others
References
Gödel’s incompleteness theorems. http://en.wikipedia.org/wiki/G%F6del_incompleteness_theorem. Accessed 30 June 2013
Rss 2.0 specification. http://www.rssboard.org/rss-specification (2009). Accessed 30 Jan 2014
Sample file for rss v2.0. http://www.rssboard.org/files/sample-rss-2.xml (2009)
Digital imaging and communications in medicine (dicom). http://dicom.nema.org/ (2014). Accessed 11 Aug 2014
Berki E (2001) Establishing a scientific discipline for capturing the entropy of systems process models: Cdm-filters—a computational and dynamic metamodel as a flexible and integrated language for the testing, expression and re-engineering of systems. Ph.D. thesis, Faculty of Science, Computing & Engineering, University of North London
Berki E (2003) Formal metamodelling and agile method engineering in metacase and came tool environments. In: Tigka P, Kefalas K (eds) The 1st South-East European Workshop on formal methods. Agile formal methods: practical, rigorous methods for a changing world (Satellite of the 1st Balkan Conference in Informatics), pp 170–188. South-Eastern European Research Center (SEERC): Thessaloniki
Berki E (2006) Examining the quality of evaluation frameworks and metamodeling paradigms of information systems development methodologies, chap. 15, pp 265–289. Idea Group Publishing, Hershey, PA, USA
Berki E, Valtanen J (2007) Critical and creative mathematical thinking with practical problem solving skills—a new old challenge. In: Dranidis D, Sakellariou I (eds) Proceedings of the 3rd SouthEast European Workshop on formal methods (SEEFM07), pp 154–170. South-East European Research Centre (SEERC)
Berry DM, Kamsties E, Krieger MM (2003) From contract drafting to software specification: linguistic sources of ambiguity, a handbook. Online. http://se.uwaterloo.ca/~dberry/handbook/ambiguityHandbook
Blake G, Bly R (1993) The elements of technical writing. Elements of Series. Longman. http://books.google.fi/books?id=ewsoAQAAMAAJ
Bowen JP, Breuer PT, Lano KC (1993) A compendium of formal techniques for software maintenance. BCS/IEE Softw Eng J 8:253–262
Bowen JP, Hinchey MG (1994) Ten commandments of formal methods. IEEE Comput 28:56–63
Diaconescu R, Futatsugi K (1998) CafeOBJ Report: the language, proof techniques, and methodologies for object-oriented algebraic specification. AMAST Series in Computing, vol 6. World Scientific, Singapore
Diaconescu R, Futatsugi K (2000) Behavioural coherence in object-oriented algebraic specification. J Univ Comput Sci 6(1):74–96
Diaconescu R, Futatsugi K, Iida S (1999) Component-based algebraic specification and verification in cafeobj. In: Proceedings of the Wold Congress on formal methods in the development of computing systems, vol II, FM ’99, pp 1644–1663. Springer-Verlag, London, UK. http://dl.acm.org/citation.cfm?id=647545.730763
Boyer RS, Moore JS (1981) The correctness problem in computer science. Academic Press, Orlando
Diller A (1990) Z—an introduction to formal methods. Wiley, Chichester
Goguen J (2014) The obj family. http://cseweb.ucsd.edu/~goguen/sys/obj.html. Accessed 30 Oct 2014
Goguen JA, Meseguer J (1992) Order-sorted algebra i: equational deduction for multiple inheritance, overloading, exceptions and partial operations. Theor Comput Sci 105:217–273. doi:10.1016/0304-3975(92)90302-V
Goguen JA, Winkler T, Meseguer J, Futatsugi K, Jouannaud JP (2000) Introducing obj. In: Goguen J, Malcom M (eds) Software engineering with OBJ: algebraic specification in action. Springer US, Boston, pp 3–167
Hierons RM, Bogdanov K, Bowen JP, Cleaveland R, Derrick J, Dick J, Gheorghe M, Harman M, Kapoor K, Krause P, Lüttgen G, Simons AJH, Vilkomir S, Woodward MR, Zedan H (2009) Using formal specifications to support testing. ACM Comput Surv 41(2):9:1–9:76. doi:10.1145/1459352.1459354
Hoe NS (2006) Free/open source software, open standards. Elsevier, New Delhi
Ionescu C, Berki E, Nummenmaa J (2009) Applying weighted finite state machines to protocol performance analysis. In: Proceedings of the 2009 Fourth South-East European Workshop on formal methods, SEEFM ’09, pp 40–45. IEEE Computer Society. doi:10.1109/SEEFM.2009.16
ISO/IEC: Information Processing Systems (1990) Open systems interconnection—guidelines for the application of Estelle, Lotos and SDL. ISO/IEC TR 10167. International Organization for Standardization, Geneva, Switzerland
ISO/IEC: Open Distributed Processing (1996) Basic reference model—part 4: architectural semantics. ISO/IEC 10746-4. International Organization for Standardization, Geneva, Switzerland
ISO/IEC: Information Technology (1997) Framework: formal methods in conformance testing. ISO/IEC 13245-1. International Organization for Standardization, Geneva, Switzerland
ISO/IEC: Information technology (2015) Open distributed processing—use of UML for ODP system specifications. ISO 19793:2015. International Organization for Standardization, Geneva, Switzerland
Jackson M (1995) Software requirements & specifications: a lexicon of practice, principles and prejudices. ACM Press/Addison-Wesley Publishing Co., New York
Karjalainen M (2010) Large-scale migration to an open source office suite: an innovation adoption study in Finland. Department of Computer Sciences, University of Tampere, Tampere
Lightfoot D (1991) Formal specification using Z. Macmillan Education UK, London
Malcolm G, Goguen JA (1996) An executable course in the algebraic semantics of imperative programs. In: Hinchey M, Nevill Dean C (eds) Teaching and learning formal methods. Academic Press, pp 161–179
Merruko M (2013) Utilising open source software development for effective electronic health records development. Master’s thesis, School of Information Sciences, University of Tampere. http://tutkielmat.uta.fi/pdf/gradu06632
Merruko M, Berki E, Nykänen P (2012) Open source software process: a potential catalyst for major changes in electronic health record systems. In: Shaikh S, Stamelos I, Cerone A (eds) OpenCert 2012 + SEFM 2012 Proceedings (2013). http://opencert.iist.unu.edu/Papers/2012-paper-1-D
Muhonen M, Berki E (2011) An open process for quality assurance in systems. In: Dawson R, Ross M, Staples G (eds) The conference proceedings of software quality management XIX (SQM 2011). Loughborough University, Leicestershire, pp 231–241
Newcombe C, Rath T, Zhang F, Munteanu B, Brooker M, Deardeuff M (2015) How Amazon web services uses formal methods. Commun ACM 58(4):66–73. doi:10.1145/2699417
Raymundo O (2015) Hands-on with news in ios 9: Apple’s response to facebook and snapchat’s content platforms. http://www.macworld.com/article/2947012/software-news/hands-on-with-news-in-ios-9-apples-response-to-facebook-and-snapchats-content-platforms.html
Shah R, Kesan J, Kennis A (2007) Lessons for open standard policies: a case study of the massachusetts experience. In: Proceedings of the 1st international conference on theory and practice of electronic governance, ICEGOV ’07, pp 141–150. ACM, New York, NY, USA. doi:10.1145/1328057.1328088
Sommerville I (2010) Software engineering, 9th edn. Addison-Wesley, Harlow
Spivey J (1989) An introduction to z and formal specifications. Softw Eng J 4(1):40–50
Turner KJ (1993) Using formal description techniques: an introduction to ESTELLE. LOTOS and SDL, Wiley, New York
Valtanen J, Berki E, Barlas K, Li L, Merruko M (2013) Problem-focused education and feedback mechanisms for re-designing a course on open source and software quality. In: Uhomoibhi J, Barikzai S, Ross M, Staples G (eds) The 18th INSPIRE—INternational conference on Software Process Improvement in Research, Education and Training. Southampton Solent University Press, London, pp 23–36
Veijalainen J, Berki E, Lehmonen J, Moisanen P (2006) Implementing a new international paper mill efficiency standard—using computational correctness criteria to model and verify timed events. In: Eleftherakis G (ed) 2nd South-East European Workshop on formal methods (SEEFM 05). Formal methods: challenges in the business world, Ohrid, 18–19 Nov 2005, pp 27–43. South-East European Research Centre (SEERC)
W3Schools (2014) Dtd tutorial. http://www.w3schools.com/dtd/
W3Schools (2014) Xml tutorial. http://www.w3schools.com/xml/
Winer D (2006) The rss “ttl” element and p2p networks. http://scripting.com/2006/09/07.html#theRssTtlElementAndP2pNetworks
Acknowledgments
The authors of this paper would also like to extend their thanks to Iulia Adomnita, Thrushna Nalam, Golnaz S. Nejad and Jari Veijalainen for the useful and fruitful collaboration.
Author information
Authors and Affiliations
Corresponding author
Additional information
This research has been co-financed by the European Union (European Social Fund ESF) and Greek national funds through the Operational Program ”Education and Lifelong Learning” of the National Strategic Reference Framework (NSRF)—Research Funding Program: THALIS.
Rights and permissions
About this article
Cite this article
Barlas, K., Berki, E., Stefaneas, P. et al. Towards formal open standards: formalizing a standard’s requirements. Innovations Syst Softw Eng 13, 51–66 (2017). https://doi.org/10.1007/s11334-016-0283-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11334-016-0283-9