As the result of the fast progress of computer and network technology, the appearance of large-scale, complex computer systems is becoming an inevitable phenomena. In order to harness the complexity of large-scale system, component-based software technologies, such as object-oriented programming, were invented to facilitate system design and construction.; Building systems from software components has many advantages: software components can be easily specified and verified due to their relative simplicity; component-based systems have the potential to modify their behaviors at runtime through reconfiguration, thus improving code reusability and reducing management cost.; However, this building-block approach also has drawbacks: the performance of a component-based system is not as good as that of a monolithic system and it is not clear what type of properties can be preserved by doing runtime reconfiguration.; The work described in this dissertation explores the usage of formal specification with the component-based systems. It shows that formal specification and verification can be used to achieve both efficient and reliable systems.
展开▼