Component behavior prediction and monitoring through built-in test

Real-time systems or safety-critical applications require high-confidence software components. Component behavior prediction refers to the ability to check, even certify, component specification conformance at development time. Complementarily, odd and varied execution contexts linked to the idea of deployment impose extra checking when components are deployed. This paper proposes incorporation of the test into components. Component states and complex dependencies between these states are methodically specified using UML statechart diagrams. Code is next derived in order to verify at development time component functioning in relation to specification. At deployment time, facilities are offered for (re-)configuring components to carefully fit specific runtime environments. Built-in test (BIT) material may thus be optionally generated in components to capture execution conditions and to make possible component behavior adjustments. All of these principles are powered by means of the BIT/J dedicated Java library that is presented and illustrated in the paper.

[1]  Sandra Heiler,et al.  Semantic interoperability , 1995, CSUR.

[2]  Franck Barbier Composability for software components: an approach based on the Whole-Part theory , 2002, Eighth IEEE International Conference on Engineering of Complex Computer Systems, 2002. Proceedings..

[3]  Grace A. Lewis,et al.  Building systems from commercial components , 2002, ICSE '02.

[4]  John Eargle,et al.  Business Component-Based Software Engineering , 2002 .

[5]  Gabriel A. Moreno,et al.  Packaging Predictable Assembly with Prediction-Enabled Component Technology , 2001 .

[6]  Claude Caci,et al.  Testing object-oriented systems , 2000, SOEN.

[7]  簡聰富,et al.  物件導向軟體之架構(Object-Oriented Software Construction)探討 , 1989 .

[8]  하수철,et al.  [서평]「Component Software」 - Beyond Object-Oriented Programming - , 2000 .

[9]  Ivica Crnkovic,et al.  Specification, implementation, and deployment of components , 2002, CACM.

[10]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[11]  Yingxu Wang,et al.  On built-in test reuse in object-oriented framework design , 2000, CSUR.

[12]  Jean-Marc Jézéquel,et al.  Reliable Objects : Lightweight Testing for OO Languages , 2001 .

[13]  S.A. Hissam,et al.  Building systems from commercial components , 2002, Proceedings of the 24th International Conference on Software Engineering. ICSE 2002.

[14]  Yingxu Wang,et al.  On built-in tests and reuse in object-oriented programming , 1998, SOEN.

[15]  Jerry Zeyu Gao,et al.  On Building Testable Software Components , 2002, ICCBSS.

[16]  Robert V. Binder,et al.  Testing Object-Oriented Systems: Models, Patterns, and Tools , 1999 .

[17]  Bertrand Meyer,et al.  Object-Oriented Software Construction, 2nd Edition , 1997 .

[18]  David Harel,et al.  Executable object modeling with statecharts , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.