Constructing Open Systems via Consistent Components
- 353 Downloads
Open systems capable of handling unanticipated future changes are very desirable. A common approach towards open systems is based on components. There are some essential issues of the component-based software paradigm. First, the most challenging analysis issue is about component consistency – namely a component does not violate some property in another when composed. The paper presents a formal approach to the issue by including consistency semantic to component specification. Based on this semantic information, components can be efficiently cross-checked for the consistency among components. The second issue is on how components are realized from the formal specification. The layered architecture is recommended for component-based system design in which component specifications are separated into layers. Subsequently, each layer can be then respectively implemented by a corresponding module via aspect-oriented programming. The target system simply involves composing those modules together in a well-defined order.
KeywordsModel Check Interface State Atomic Proposition Layered Architecture Exit State
Unable to display preview. Download preview PDF.
- 1.Han, J.: An approach to software component specification. In: Proceedings of International Workshop on Component Based Software Engineering (1999)Google Scholar
- 2.Liu, Y., Cunningham, H.C.: Software component specification using design by contract. In: Proceedings of the SouthEast Software Engineering Conference (April 2002)Google Scholar
- 3.Tarr, P., Ossher, H., Harrison, W., Sutton, S.M.: N-degrees of separation: Multi-dimensional separation of concerns. In: Proc. ICSE, pp. 109–117 (1999)Google Scholar
- 4.Warmer, J., Kleppe, A.: The Objects Constraint Language: Precise Modeling with UML. Addison-Wesley, Reading (1999)Google Scholar
- 5.Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. MIT Press, Cambridge (1999)Google Scholar
- 6.Nguyen, T.T., Katayama, T.: Handling consistency of software evolution in an efficient way. In: Proc. IWPSE, pp. 121–130 (2004)Google Scholar
- 8.Batory, D., Johnson, C., MacDonald, B., Heeder, D.V.: Achieving extensibility through product-lines and domain-specific languages: A case study. In: Proc. International Conference on Software Reuse (2000)Google Scholar
- 10.Tarr, P., Ossher, H.: Hyper/J(TM) User and Installation Manual. IBM Research, IBM Corp. (2000)Google Scholar
- 12.The AspectJ Team: The AspectJ(TM) Programming Guide. Xerox Corporation (2001)Google Scholar
- 15.Grumberg, O., Long, D.E.: Model checking and modular verification. In: Groote, J.F., Baeten, J.C.M. (eds.) CONCUR 1991. LNCS, vol. 527. Springer, Heidelberg (1991)Google Scholar