SMS: Formal aspects of component software