Your software development efforts don’t operate in a vacuum – they are sponsored by business stakeholders who have a vision or at the least a direction towards which they would like to proceed. As much as software reuse involves technical discipline and design excellence it is prudent to align with your business’ objectives. Before embarking on the systematic reuse journey – get at least high level answers to the following:
- How is the business viewing their investments in your application till date? (ideally, they see a ton of value!)
- Is the business strategy to drive growth organically or through acquisitions?
- How often do the requirements change? what is the expected turnaround time for these changes?
- What drives business to change, enhance functionality? is it regulatory? competitors? industry trends?
- How does the business foresee the current business model – do they plan on radical changes? incremental changes? they don’t know?
All these questions at a high level will provide some sense of where your application is within the context of where your business sponsors want to go. Even if you don’t get much clarity it will help you realize your application’s business environment – may be you discover that it is a dynamic frequently changing environment or one that is steady and changes gradually. With this initial knoweldge you can now focus on how to best create a reuse strategy. This is just the tip of the ice berg – the benefit of this exercise is that it will force both you and your business sponsor to really think about what the game plan is for a domain. This may show you that what you think is an application is really a product line. Or it could tell you that you are working on the wrong application. Either case, this will get you started!