Srikanth Kondam, MS PMP MCPM IT Delivery Manager, PamTen Software Solutions, Hyderabad, India
What is Rapid Development?
One approach to truly deliver software faster is to reduce the duration of all processes in the software development lifecycle. Some who seek faster software delivery have adopted an agile method called Rapid Development.
Rapid development is a highly iterative software project development methodology that is more innovative, more agile, with less documentation, and a higher level of collaboration. Following a rapid development approach, the project team looks for tasks that can be done in parallel and completed quickly. For example – grouping modules together based on their functionality and developing them in parallel instead of sequentially across several Sprint cycles.
To successfully implement Rapid Development, the project team must concentrate on several critical areas:
Innovation – The project team must look to innovative and discover unorthodox ways to perform tasks and take a more creative proactive approach to code development. This includes exploring and implementing new coding techniques and standards. By constantly challenging traditional methods (and each other), the team will adopt a more innovative approach when faced with complex problems. The team will become smarter, less risk adverse, and more eager to accept technical challenges.
More Agile – When time to market is critical to the success of the project, the team must follow the mantra of Agile: work quickly and fail fast. This means moving rapidly from concept to development. Once the concept is validated by the architect or SME, the development team begins development. The concept is tweaked and modified as needed throughout the process. Feedback and recommendations are quickly assessed and, if accepted, they are implemented. The goal is to quickly develop a working prototype that can be demonstrated. By being more agile, the team can validate the proof of concept quickly to determine whether or not the solution will work. This approach enables the team to rapidly develop and validate the proof of concept and prevents them from spending time and effort on a solution that may not address the needs of the business.
Collaboration – For a few hours each day, the project team comes together for the daily team working session. This can be accomplished by using one of the many online collaboration tools that exist for teams that are not co-located. A meeting of minds helps to inspire innovation and increase collaboration to resolve complex problems. This level of direct interaction helps to speed up the development process. During this intense period of collaboration, the project team will brainstorm on the best way to complete current tasks, overcome obstacles and issues, and discuss alternatives and options for future tasks. The team will begin each day’s collaborative session with a review of the status of activities that are in progress and upcoming tasks. In addition to level setting, this approach helps to flush out new risks and potential issues.
Less Documentation – “Less documentation” means creating only the documents that are considered essential by the development team and the business. The level of detail and type of documents will vary depending on the size and complexity of the solution and the level of technical knowledge and expertise of the team. The goal is to only create documents that are absolutely required to develop and use the solution. Document needs are discussed throughout the project.
The benefits of Rapid Development
Three simple rules to make Rapid Development Successful at your organization
Rule 1 – Take the concept and do thorough Research & Development and review the findings with the team. R&D is key here.
Rule 2 – After R&D is complete, put together a project team with the right people and start brainstorming to create the wireframes (aka UI design). Review the wireframes with the stakeholders and incorporate the feedback into the next iteration. Feedback is the key here.
Rule 3 – Once the wireframes are accepted, quickly create a working prototype to showcase the solution to appropriate stakeholders. Once the proof of concept is validated follow a Rapid Development methodology to build, test, and deploy the solution. Customer feedback and following the rapid development methodology is key here.
1. By using Rapid Development, PamTen was successful in creating a working prototype of an online subscription management system in less than one week for one of our existing clients in the US. Our US sales team was able to demo the prototype to the client and win the business to develop the complete system.
2. By using Rapid Development, PamTen created a prototype for an Enterprise Suite of productivity enhancing tools within two weeks. Our US sales team was able to demo solution to prospective clients in both the US and India who are interested in this product.