LEVERAGING LIGHT-WEIGHT FORMAL METHODS WITH FUNCTIONAL PROGRAMMING APPROACH ON CLOUD

Shigeru Kusakabe, Yoichi Ohmori, Keijiro Araki

2009

Abstract

We discuss the features of functional programming related to formal methods and an emerging paradigm, Cloud Computing. Formal methods are useful in developing highly reliable mission-critical software. However, in light-weight formal methods, we do not rely on very rigorous means, such as theorem proofs. Instead, we use adequately less rigorous means, such as evaluation of pre/post conditions and testing specifications, to increase confidence in our specifications. Millions of tests may be conducted in developing highly reliable mission-critical software in a light-weight formal approach. We consider an approach to leveraging lightweight formal methods by using ”Cloud.” Given a formal specification language which has the features of functional programming, such as referential transparency, we can expect advantages of parallel processing. One of the basic foundations of VDM specification languages is Set Theory. The pre/post conditions and proof-obligations may be expressed in terms of set expressions. We can evaluate this kind of expression in a data-parallel style by using MapReduce framework for a huge set of test cases over cloud computing environments. Thus, we expect we can greatly reduce the cost of testing specifications in light-weight formal methods.

References

  1. Armbrust, M., Fox, A., Griffith, R., Joseph, A. D., Katz, R., Konwinski, A., Lee, G., Patterson, D., Rabkin, A., Stoica, I., and Zaharia, M. (2009). Above the clouds: A berkeley view of cloud computing. Technical report, UCB/EECS-2009-28, Reliable Adaptive Distributed Systems Laboratory.
  2. Borba, P. and Meira, S. (1993). From vdm specifications to functional prototypes. J. Syst. Softw., 21(3):267-278.
  3. Claessen, K. and Hughes, J. (2000). Quickcheck: a lightweight tool for random testing of haskell programs. ACM SIGPLAN Notices, 35(9):268-279.
  4. Dean, J. and Ghemawat, S. (2008). Mapreduce: simplified data processing on large clusters. Commun. ACM, 51(1):107-113.
  5. Fitzgerald, J. and Larsen, P. G. (1998). Modelling Systems: Practical Tools and Techniques in Software Development. Cambridge University Press.
  6. Hadoop. As of Jun.1, 09. http://hadoop.apache.org/core/.
  7. Hughes, J. (1989). Why functional programming matters. Computer Journal, 32(2):98-107.
  8. Kurita, T., Chiba, M., and Nakatsugawa, Y. (2008). Application of a formal specification language in the development of the ”mobile felica” ic chip firmware for embedding in mobile phone. In FM, pages 425-429.
  9. Larsen, P. G., Mukherjee, P., Plat, N., Verhoef, M., and Fitzgerald, J. (1998). Validated Designs For Objectoriented Systems. Springer Verlag.
  10. Visser, J., Oliveira, J. N., Barbosa, L. S., Ferreira, J. a. F., and Mendes, A. S. (2005). Camila revival: Vdm meets haskell. In First Overture Workshop.
Download


Paper Citation


in Harvard Style

Kusakabe S., Ohmori Y. and Araki K. (2009). LEVERAGING LIGHT-WEIGHT FORMAL METHODS WITH FUNCTIONAL PROGRAMMING APPROACH ON CLOUD . In Proceedings of the 4th International Conference on Software and Data Technologies - Volume 1: ICSOFT, ISBN 978-989-674-009-2, pages 263-268. DOI: 10.5220/0002281802630268


in Bibtex Style

@conference{icsoft09,
author={Shigeru Kusakabe and Yoichi Ohmori and Keijiro Araki},
title={LEVERAGING LIGHT-WEIGHT FORMAL METHODS WITH FUNCTIONAL PROGRAMMING APPROACH ON CLOUD},
booktitle={Proceedings of the 4th International Conference on Software and Data Technologies - Volume 1: ICSOFT,},
year={2009},
pages={263-268},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0002281802630268},
isbn={978-989-674-009-2},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 4th International Conference on Software and Data Technologies - Volume 1: ICSOFT,
TI - LEVERAGING LIGHT-WEIGHT FORMAL METHODS WITH FUNCTIONAL PROGRAMMING APPROACH ON CLOUD
SN - 978-989-674-009-2
AU - Kusakabe S.
AU - Ohmori Y.
AU - Araki K.
PY - 2009
SP - 263
EP - 268
DO - 10.5220/0002281802630268