The application backlogs in nearly every organization are expanding exponentially as companies try to keep pace with competitors and their own internal needs. How can you improve the time-to-market of your applications so they can be inserted into production quicker? Here are some suggestions.
Agile development methodologies, like scrum, encourage ongoing collaboration in application requirements definition and development between end users and IT. The more you can keep end users actively engaged in the application development process, the less you will have to worry about the application drifting from what the business expected. When you meet business expectations dead-on the first time, your applications can be placed into production without delay.
2: Prototype often
3: Virtualize development and test environments
It takes time to configure physical hardware and software for application testing and development. A better approach is to use a cloud service or to virtualize your own development and test environments so that your developers can have dedicated test and development systems. With virtualization, the strain on your DBA and system programmers will also be reduced, since configuration and deployment of virtual systems is quicker.
4: Hold users accountable
Users get busy, too—so there is always a tendency for them to walk away from the development and testing process after they feel they have given IT all their app requirements. Don't let this happen. Ensuring that applications stay on course with requirements during development should be as much of an end-business responsibility as it is an IT responsibility.
5: Work on usability as much as you work on features and functions
You'd be surprised at how many data errors and end user trouble reports are generated because of poor navigation and screen or report design. Giving equal time to usability as well as to technical design can go a long way toward ensuring that apps are accepted and placed into production the first time.
6: Implement a standard library of routines you can reuse
The easiest way to ensure app compatibility with other software you use is to standardize routines (e.g., a date routine) so that they can be pulled from a common library and used over and over again.
7: Don't forget quality assurance
It is important to thoroughly QA an application—from both a usability and a technical performance standpoint. Organizations are still seeing 50% of IT's programming time being committed to software maintenance—which happens because apps fail or don't do what they are supposed to do. You can help prevent this by designing apps that work correctly the first time and every time, thereby freeing up maintenance staff so you can redirect those resources into more new development.
8: Regression test for performance
Organizations continue to unit test applications and then try to rush them into production without performing a full regression test to ensure that the new app will handle the transaction load it is supposed to be able to handle—or that it is compatible with all the other software it must run with. When an app breakdown occurs in production because regression testing wasn't done, it can become a major embarrassment for a company.
9: Train your support staff and your users
User training should be a project task for any new application. If business users aren't trained in how to use an app, they will get frustrated and end up calling your support staff. Before any app goes live, the IT support staff should also be thoroughly trained. If they're not knowledgeable and can't respond to user questions quickly, it could reflect negatively on an application to the point where it must be pulled from production.
10: Design for simplicity
Applications should always use a modular design structure. This enables developers to test and debug individual routines without having to read through an entire program.
- 10 things you should know about Fast IT
- 8 foolproof stakeholder management tips for agile projects
- Do we need 'industrial-strength' Agile computing?
- DevOps enters the mainstream: Here's how to make it work for you
What other suggestions do you have for speeding up time-to-market? Share your advice with fellow TechRepublic members.
Mary E. Shacklett is president of Transworld Data, a technology research and market development firm. Prior to founding the company, Mary was Senior Vice President of Marketing and Technology at TCCU, Inc., a financial services firm; Vice President of Product Research and Software Development for Summit Information Systems, a computer software company; and Vice President of Strategic Planning and Technology at FSI International, a multinational manufacturing company in the semiconductor industry. Mary is a keynote speaker and has more than 1,000 articles, research studies, and technology publications in print.