Today, application development teams typically need hundreds of hours to develop an application or to fully integrate a new platform. A prototype and proof of concept can also take many weeks or even months to develop. If you could significantly reduce these time frames, you would accelerate time to market and expedite proofs of concept and rollouts. This advantage saves money and reduces the risk of missing features, late deliveries or inadequate testing. Here, Knowledge Center contributor Sid Probstein explains how to accelerate innovation and productivity with rapid prototyping and development.
Not only is application development an expensive undertaking, but the amount of time invested also limits the amount of innovation. With shorter development cycles, you gain the time and flexibility to experiment, to model new ideas, to consider adding new customer-requested features that weren't in the original plan, and to continuously improve your applications through rapid prototyping.
Over the past decade, development teams have adopted new programming methods to try to reduce development time. Today, a new generation of platforms in the application stack is designed to both deliver a specific layer of functionality and enable rapid prototyping, which allows development teams to focus their efforts on the value they add and gain time for more innovation.
Rapid development not only lowers overall costs and speeds time to market (TTM), but also decreases risk because you can quickly see a robust prototype of what your solution will do-before you actually make a purchase commitment. Rapid prototyping and developing offer significant advantages such as more time and flexibility for innovation and lower cost for development. The following are eight examples of how to take advantage of these benefits:
Tip No. 1:
The quest for faster prototyping and development should include as many aspects of the development process as possible: project planning, development model, data standards, and the design of acquired platforms and components.
Tip No. 2:
When you select platforms and components, you can ensure faster coding experiences when you look for features that support rapid prototyping and development. These features can also contribute important factors in decisions about whether to buy or build functionality and in assessing the true costs of implementing open source alternatives.
Tip No. 3:
Object-oriented design (OOD), service-oriented architecture (SOA) and data standards such as XML and its derivatives can reduce the complexity and time spent intregating systems and data and allow for reusability. Many companies lag behind in adoption of these standards. SOA, in particular, can be difficult to implement while maintaining older architectures and avoiding distributions. Therefore, to succeed with these models and cut development time, these technologies should be adopted in combination with a rapid or agile programming process.
Tip No. 4:
One of the drags against innovation and growth is the time it takes to develop software applications and custom solutions. Software development is complex anyway, and the many different systems and data sources that have to be considered serve to compound the challenges. The time frames required to deliver software not only limit the creativity of software teams, but also inhibits the agility of nearly everyone who relies on software. If development teams could significantly shrink schedules, they could contribute to both the effectiveness and efficiency of their companies and customers.
Tip No. 5:
The cost of any platform that is not designed for rapid development will ripple across every project that relies on the platform as long as it is in place. Overlooking this aspect of platforms during a selection process ultimately means unnecessary costs and delays in innovation.
Tip No. 6:
Whether you are comparing commercial platforms, evaluating build-or-buy options or considering open source alternatives, you should be sure to include rapid development as a key consideration.
Tip No. 7:
Platforms that enable rapid development also provide the opportunity to rapidly produce prototypes and proofs of concept (PoC). This capability offers cost benefits to both software development teams and system integrators.
Tip No. 8:
For developers in software companies or IT departments, rapid prototyping allows for more experimentation and demonstrations of ideas. Teams can not only introduce more innovation more quickly, but each new capability costs less to produce than with legacy platforms that simply can't support rapid prototyping.
Sid Probstein is currently Chief Technology Officer at Attivio, responsible for technology strategy and innovation. Sid brings to Attivio more than 15 years experience leading successful engineering organizations and building complex, high-performance systems. Previously, he was CTO at GCi, where he headed up development of the company's next-generation commerce platform. He also served as vice president of technology at Fast Search & Transfer, where he developed next-generation search, text mining and multimedia capabilities.
Sid also served as vice president of engineering at Northern Light Technology, where he produced the very first enterprise version of the award-winning search engine; director of software engineering at Freemark Communications, where he helped implement the first "free" e-mail service; and principal architect/system manager at John Hancock Financial Services, where the integrated sales illustration and client management system he designed was featured as a Microsoft Solution-in-Action case study. He can be reached at firstname.lastname@example.org.