Tags: Assembly Methodology, Distributed Development, Integrated Assembly Environment, Application Stategy
Related posts:
Many of our clients complain that IT is holding back their business growth. This is a harsh indictment, but one that is all too true. Most IT departments struggle to provide the business agility required to support rapidly changing business requirements. IT organizations are frustrated with broken promises from their vendors because the vendors are not helping them become more agile. Maintenance fees are growing, but only seem to add to rigidity. Even seemingly simple projects take longer than they should. The question is, what can IT do about it?
New development methodologies that label themselves Agile and Extreme are appealing, but often require adherence to their own sets of rules - yet another way to be locked in. The Agile guys even have their own manifesto!
Instead of getting caught up in labels, consider some smaller, less disruptive changes that are easier to adopt and present an opportunity to really see what does and does not work in a given corporate structure. Here are 7 lessons learned from our clients that are successfully enabling business agility:
1. Engage business stakeholders in interactive cross-functional design (requirements gathering) sessions and use visual representations (such as wireframes) of the proposed application to gather end-user feedback. This approach works much better than relying on just stakeholder interviews. In many cases, end-users may not really know what they want until they have something to react to. While the business may balk at committing time to these sessions, we have found that this approach actually requires less time than traditional approaches to requirements gathering.
2. Iterate until you get it right. Refine the design based on user feedback. Discussions with end-users and stakeholders often lead to innovation and process improvements as the users begin to really "see" the future.
3. Consider making technology decisions at the component level - not at the all or nothing platform level. Seek components in favor of custom developed code and open source components over off the shelf packages. By investing at the component level it is easier, less disruptive and faster to make changes down the road by swapping out specific components, without the need to touch other technology.
4. Make use of Open Source Software and save on long term maintenance and upgrade costs. Reserve custom coding for only those features/functions that are unique and provide competitive advantage to your business.
5. Develop software (assemble components) in short cycles. Frequent releases that are focused on delivering specific functionality facilitate speed and agility.
6. Consider service-oriented architectures (SOA) to promote your ability to make changes without having to revisit your platforms and legacy systems.
7. Utilize an architecture that separates the user experience from the business logic. This will allow the business stakeholders to use scripting languages such as PHP to make changes on their own, without the need to be proficient in technologies such as Java.
This is a just the barest outline of how to begin the process to greater business agility through new IT approaches. Please reach out to me to have a deeper conversation.







