Back to VSLive! San Francisco Show Daily Home
Top 5 Asset Reuse Best Practices For SOAs
Reuse is one of the most critical success factors of service-oriented architecture. Here are five best practices you can use.
by Brent Carlson
February 1, 2005
Note: Brent Carlson is presenting "Reuse Best Practices in Service-Oriented Architectures" at Software Architecture Summit in San Francisco, Wednesday, February 9. These tips are from that session.
1. Combine "top-down" and "bottom-up" techniques to pragmatically model and define your service interfaces. Lay out a coarse-grained business architecture (perhaps using UML constructs) and then populate services against that architecture based on business priorities. Let the bottom-up population of services then influence iterative definitions of the top-down business architecture over time.
2. Define key review points in your service production software development lifecycle (SDLC). Three key recommended review points are requirements review (when the core requirements are defined and a draft WSDL is completed), design review (when the WSDL is finalized and the underlying implementation approaches are defined), and implementation review (when the service is fully implemented and tested, as a final checkpoint before deploying the service into production).
3. Manage your produced services as software "products." Plan for new versions of your services to be delivered and deployed on a regular schedule so service consumers have the ability to predictively influence new capabilities. Preserve backwards compatibility between versions so that existing service consumers can migrate to new versions gracefully.
4. Deliver your produced services to potential consumers through an asset library. While UDDI registries are useful for operational dynamic binding to services, they are not suitable for development-level service management and discovery. Select a purpose-built asset library that supports multiple asset types, delivers assets to developers within their IDEs, and provides effective processes for governing asset production and consumption.
5. Track actual service consumption on a project basis to enable usage traceability, impact analysis, and calculation of ROI. Project-based consumption (with optional rollups at higher levels of the organization) gives your enterprise the ability to quantitatively calculate cost savings from service reuse, as well as determine downstream impacts of service versioning and redeployment plans.
About the Author
Brent Carlson is vice president of technology and co-founder of LogicLibrary Inc. Recently named in InfoWorld's list of "CTOs to Watch in 2004," he drives the development and delivery of LogicLibrary's products. He is the coauthor of two books: SanFrancisco Design Patterns: Blueprints for Business Software (with James Carey and Tim Graser) and Framework Process Patterns: Lessons Learned Developing Application Frameworks (with James Carey).
Back to top