Much of the work from the past 10 years into Component Based Software Engineering (CBSE) and Component Based Development (CBD) has dealt with Functional Composability (FC). FC is concerned with whether F(A) ξ F(B) = F(A ξ B) is true (where ξ is some mathematical operator), i.e., whether a composite system results that has the desired functionality given that the system is created solely by joining A and B. But increasingly, our community is discovering that FC, even if it were a solved problem (using formal methods, architectural design approaches, model checking, etc.), is still not mature enough for other serious concerns that arise in CBSE and CBD. These concerns stem from the problem of composing "ilities". "Ilities" are non-functional properties of software components and define characteristics such as security, reliability, fault-tolerance, performance, availability, safety, etc.
展开▼