Engineering SOA with reusable assets.