possible execution path – when cond = true and
when cond = false.
5 CONCLUSIONS
A model checking mechanism will complete the
ASSL framework by allowing for automated system
analysis and evaluation of any ASSL-generated
autonomic system, and thus, it will help to validate
liveness and safety properties of the same.
As a part of our long-term research on model
checking with ASSL, we are currently investigating
post-implementation model checking with NASA’s
Java PathFinder tool. In this paper, we have justified
and presented our approach to applying Java
PathFinder on ASSL-generated autonomic systems.
We propose automatic generation of special
PathFinder choice points in the generated Java
applications. These choice points, together with the
provided backtracking and state matching
PathFinder mechanisms, will allow for possibly
efficient post-implementation model checking.
Future research is concerned with further
development of this approach and experimental
results. Moreover, it is our intention to build an
animation tool for ASSL, which will help to
visualize counterexamples and trace erroneous
execution paths. It is our belief that a model
checking mechanism for ASSL will enable broad-
scale formal verification of ASs. Therefore, it will
make ASSL a better and more powerful framework
for AS specification, validation and code generation.
REFERENCES
Clarke, E., Grumberg, O., and Peled, D., 2002. Model
Checking. MIT Press.
Baier, C., Katoen, J.-P., 2008. Principles of Model
Checking. MIT Press.
Bakera, M., Wagner, C., Margaria, T., Vassev, E.,
Hinchey, M., Steffen, B., 2009. Component-Oriented
Behavior Extraction for Autonomic System Design.
In Proceedings of the First NASA Formal Methods
Symposium (NFM 2009). NASA.
Ball, T., Podelski. A., Rajamani, S., 2001. Boolean and
Cartesian Abstractions for Model Checking C
Programs. In Proceedings of TACAS01: Tools and
Algorithms for the Construction and Analysis of
Systems. Genova, Italy.
Ball, T., Rajamani, S., 2000. Bebop: A symbolic Model
Checker for Boolean Programs. In Proceedings of the
7th International SPIN Workshop. Vol. 1885 of
LNCS, Springer-Verlag.
Ben-Ari, M., 2008. Principles of the Spin Model Checker
(Paperback), Springer.
Holzmann, G., Smith, M. H., 2000. Automating Software
Feature Verification. Bell Labs Technical Journal,
Vol. 5(2), Issue on Software Complexity.
Iosif, R., 1998. The PROMELA Language,
http://www.dai-arc.polito.it/dai-arc/manual/tools/jcat/
main/node168.html, last visited on April 25, 2009.
Java PathFinder, 2008. http://javapathfinder.sourceforge
.net/, last visited on April 25, 2009.
Parashar, M. and Hariri, S. (editors), 2006. Autonomic
Computing: Concepts, Infrastructure and
Applications. CRC Press.
Murch, R., 2004. Autonomic Computing: On Demand
Series. IBM Press, Prentice Hall.
Sycara, K. P., 1998. Multiagent Systems. In AI Magazine,
vol. 19(2). Association for the Advancement of
Artificial Intelligence.
Vassev, E., 2008. Towards a Framework for Specification
and Code Generation of Autonomic Systems. A PhD
Thesis in the Department of Computer Science and
Software Engineering, Concordia University,
Montreal, Canada.
Vassev, E., Hinchey, M., Paquet, J., 2008. Towards an
ASSL Specification Model for NASA Swarm-Based
Exploration Missions. In Proceedings of 23rd Annual
ACM Symposium on Applied Computing (SAC2008) -
AC Track. ACM.
Vassev, E., Hinchey, M., 2009. Modeling the Image-
processing Behavior of the NASA Voyager Mission
with ASSL. In Proceedings of the Third IEEE
International Conference on Space Mission
Challenges for Information Technology (SMC-IT’09).
IEEE Computer Society.
Vassev, E., Hinchey, M., Quigley, A., 2009. Model
Checking for Autonomic Systems Specified with
ASSL. In Proceedings of the First NASA Formal
Methods Symposium (NFM 2009), NASA.
Visser, W., Havelund, K., Brat, G., Park, S.-J., 2000.
Model Checking Programs, In Proceedings of the 15th
IEEE International Conference on Automated
Software Engineering (ASE’00). IEEE Computer
Society.
ICSOFT 2009 - 4th International Conference on Software and Data Technologies
256