27.03.2014 Views

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

the requirement or design phases should reduce integration<br />

and testing times significantly.<br />

This work introduced a new approach, complemented<br />

with a tool, to automatically check for consistency among<br />

multiple formal specifications in LTL. The tool will help the<br />

users discover inconsistencies among their specifications at<br />

early stages. While the current tool is a stand-alone tool<br />

that has been developed separately from Prospec, it is our<br />

goal to integrate this tool with the latest release of Prospec<br />

in order to encourage the use of Prospec.<br />

Figure 8: Screen shot for Example 3<br />

Example3 Figure 8 shows the screen shot of the LTL consistency<br />

tool showing an inconsistency between the following<br />

four LTL formulas:<br />

• G(p → Fq)<br />

• Fp<br />

• G¬p<br />

• (G¬r) ∨ ((¬r) Uq)<br />

This latest example shows that the tool will distinguish<br />

between the inconsistent formulas and others that do not<br />

pose any inconsistency with other formulas. As such, the<br />

tool reports that the first three formulas are inconsistent (as<br />

described in Example 2) while the last formulas has no consistency<br />

issues with other formulas and itself is a valid formula<br />

(does accept certain execution traces).<br />

6 Summary and Future Work<br />

Formal verification techniques such as model checking<br />

and theorem proving have been shown to increase system<br />

dependability. These techniques verify system models<br />

against formal specifications. As such, the success of<br />

these techniques depends on the quality of developed systems<br />

properties. Tools that assist in the generation of formal<br />

specifications in LTL are important to the formal verification<br />

community as they relieve the user from the burden<br />

of writing specifications in a language that is hard to read<br />

and write. Without the help of tools such as Prospec, the<br />

user might create faulty specifications. These tools must<br />

generate specifications that correspond to the intent of the<br />

user. Prospec has demonstrated to provide such support<br />

[15]. However, it is also important that tools like Prospec<br />

generate specifications that are consistent with each other.<br />

Discovering inconsistencies among specifications early in<br />

References<br />

[1] Cimatti, A., Clarke, E., Giunchiglia, F., and Roveri, M., “NuSMV:<br />

anewSymbolic Model Verifer” International Conference on Computer<br />

Aided Verifcation CAV, July 1999.<br />

[2] Clarke, E., Grumberg, O., and D. Peled. “Model Checking”. MIT<br />

Publishers, 1999.<br />

[3] Dwyer, M. B., Avrunin, G. S., and Corbett, J. C., “Patterns in Property<br />

Specification for Finite-State Verification,” <strong>Proceedings</strong> of the<br />

21st Intl. Conference on Software Engineering, Los Angeles, CA,<br />

USA, 1999, 411-420.<br />

[4] Fritz, C., ”Constructing Büchi Automata from Linear Temporal<br />

Logic Using Simulation Relations for Alternating Büuchi Automata,”<br />

Eighth Conference on Implementation and Application of<br />

Automata 2003.<br />

[5] Gallegos, I., Ochoa, O., Gates, A., Roach, S., Salamah, S., and Vela,<br />

C., “A Property Specification Tool for Generating Formal Specifications:<br />

Prospec 2.0”. In the Proceeding of the Conference of Software<br />

Engineering and <strong>Knowledge</strong> Engineering (<strong>SEKE</strong>), Los Angelos,<br />

CA, July 2008.<br />

[6] Hall, A., ”Seven Myths of Formal Methods,” IEEE Software,<br />

September 1990, pp. 11-19.<br />

[7] Holloway, M., and Butler, R., “Impediments to Industrial Use of<br />

Formal Methods,” IEEE Computer, April 1996, pp. 25-26.<br />

[8] Holzmann, G, J., “The SPIN Model Checker: Primer and Reference<br />

Manual”, Addison-Wesley Professional, Boston, Mass,USA, 2004.<br />

[9] Laroussinie, F. and Ph. Schnoebelen, “Specification in CTL+Past<br />

for verification in CTL,” Information and Computation, 2000, 236-<br />

263.<br />

[10] Manna, Z. and Pnueli, A., “Completing the Temporal Picture,” Theoretical<br />

Computer Science, 83(1), 1991, 97–130.<br />

[11] Mondragon, O. and Gates, A., “Supporting Elicitation and Specification<br />

of Software Properties through Patterns and Composite<br />

Propositions,” Intl. Journal Software Engineering and <strong>Knowledge</strong><br />

Engineering, XS 14(1), Feb. 2004.<br />

[12] Mondragon, O., Gates, A., and Roach, S., “Prospec: Support for<br />

Elicitation and Formal Specification of Software Properties,” in <strong>Proceedings</strong><br />

of Runtime Verification Workshop, ENTCS, 89(2), 2004.<br />

[13] National <strong>Institute</strong> of Standards and Technology (NIST), June 02,<br />

http://www.nist.gov/public-affairs/releases/n02-10.htm<br />

[14] Salamah, S., Gates, A., Roach, S., and M. Engskow, ”Towards Support<br />

for Software Model Checking: Improving the Efficiency of Formal<br />

Specifications,” Advances in Software Engineering, vol. 2011,<br />

Article ID 869182, 13 pages, 2011. doi:10.1155/2011/869182.<br />

[15] Salamah, S., Gates, A., Roach , S., and Mondragon, O., “Verifying<br />

Pattern-Generated LTL Formulas: A Case Study. <strong>Proceedings</strong> of the<br />

12th SPIN Workshop on Model Checking Software. San Francisco,<br />

California, August, 2005, 200-220<br />

[16] Stolz, V., and Bodden, E., “Temporal Assertions using AspectJ”,<br />

Fifth Workshop on Runtime Verification Jul. 2005.”,<br />

44

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!