Component-Based Software Engineering

Service components include database access, access to messaging and transaction services, and system integration services. They all use additional infrastructure or systems to perform their functions. For example, you may wrap an existing system to create a service component for other applications. Another common use of service components is to facilitate Enterprise Application Integration (EAI).

BUSINESS CASE
Complexity cost = middleware cost + operational support cost
                          + hardware + organizational readiness cost
Impovement in productivity factor for service components = 1.5
Your application reuse savings = ((1.5 x cost to build) x (number of applications - 1))
                           - Complexity cost
Your cost per user = (Component cost + Complexity cost)/ sum of users across applications
                      (ignoring overlap in users)