Software development as a discipline is something of a minefield. Pressure is intense to deliver working applications as rapidly as possible, while the problems that code must address are often complex and difficult to articulate. These and other factors contribute to the reality that poor-performing and error-prone applications continue to make their way into production environments.
Combating this issue, Compuware`s OptimalJ development environment introduces several techniques and innovations designed to expedite the development process, ease the strain on software programmers and produce better software. One such innovation, says Ben van Niekerk, product manager at Compuware Corporation SA, is the compatibility of OptimalJ with the Unified Software Development Process (USDP).
He explains that the USDP is a detailed procedure used by development teams to produce applications. "The USDP has gained in popularity and has been widely adopted by organisations developing enterprise software. It serves as a guideline and reference system for software development to ensure that all the steps in the development process are accurately and rigorously followed."
Van Niekerk notes that OptimalJ has been designed to play a role in every step of the USDP process with the exception of the initial phase - that of determining the overall project plan and gathering requirements. The next steps in the software development process are analysis of requirements, architectural analysis and design, detailed design, coding and integration, moving to final testing and deployment.
Delving deeper into the USDP, Van Niekerk notes that iterative software development is among the core principles behind the concept. He explains: "Iterative development acknowledges that in every phase of software development, it is hard to get things right the first time. Requirements, underlying assumptions, business contexts, technology assumptions and other factors change constantly. Thus, if a software project was a ship being piloted through a narrow strait, iterative software development can be thought of as a process of continuous corrections to stay on course and avoid disaster."
Other principles of USDP include an active management of requirements to avoid endless scope creep, developing software as far as possible with re-usable components to capitalise upon what has already been developed - resulting in a higher quality product with greater efficiency - and the development of visual models of various relevant domains. "Visual models are powerful aids in grappling with underlying complexities," Van Niekerk notes.
Throughout the carefully defined steps of the USDP process, OptimalJ plays a supportive role by providing developers with the resources, tools and processes for better application development.
"OptimalJ falls within a new class of development products called model-driven, pattern-based (MDPB) tools. These tools capitalise on the widespread acceptance of the USDP by automatically transforming visual models created in the USDP into enterprise-class distributed applications. A MDPB tool accelerates USDP. Instead, they accelerate and improve the quality of the application that is produced," Van Niekerk concludes.
Compuware Corporation (NASDAQ: CPWR) is a world leader in delivering software and services that enable businesses to manage their enterprises and maximise the value of their IT assets. Compuware solutions accelerate the development, improve the quality and enhance the performance of business-driving applications. Founded in 1973, Compuware serves the world`s leading IT organisations, including more than 90% of the Fortune 100 companies. Learn more about Compuware at http://www.compuware.co.uk.
Editorial contacts

