OT2002 -- 8-10 April 2002 -- Oxford

Sponsor Presentation

Better Software Faster:

Four principles for improving quality and productivity

Andy Carmichael
TogetherSoft Corporation

In some projects quality and productivity are seen as variables to be traded off against each other. This is not a good strategy, nor is it reflected in the performance of the best teams, who not only deliver software faster - they deliver better software. To make software development faster you must ensure the process applied has fewer steps, especially fewer manual steps. To make better software, you must measure the quality and then ensure, build by build and release by release, the quality exceeds the currently achieved level until it always exceeds the required level.

This paper suggests four principles for developing better software faster:

Using a single model (with multiple diagrammatic or textual views) is the key simplification that reduces the workload through the project, opening the way to many automated steps (e.g. pattern and refactoring automation, deployment experts, document generation, test automation, etc.). The simple meta-model links requirements, design implementation and tests. Conforming to it ensures: every requirement has a corresponding design; the design references only valid classes and operations; every requirement and every operation has a valid test set; and that all the tests pass. The perturbation change model emphasizes the small steps from valid build to valid build that is implied by an iterative lifecycle. It also shows why building high quality software also improves productivity since every step in the process builds on the work of the team thus far. Continuous measurement of quality involves many traditional tools (testing, metrics, automated audits, generated documents and inspections), but their application in an iterative lifecycle means they must be modified for continuous application.

As well as discussing these principles and how they may be applied with any modern development process (e.g. FDD, UP, XP, DSDM) and in any development environment which supports a "single-source" approach, the presentation will be illustrated with TogetherSoft's Together ControlCenter™ model-build-deploy platform, (using Version 6.0, which is scheduled for release very shortly).

Dr Andy Carmichael, , Technical Services Director for TogetherSoft UK, is a leading expert in software development methods and processes with over 20 years experience in the industry. He was founder and Managing Director of the leading software consultancy firm, Object UK Ltd, recently purchased by TogetherSoft as the basis of its UK operations, and now heads the company's UK professional services work. Andy has edited two books for Cambridge University Press - "Object Development Methods" (1994) and "Developing Business Objects" (1998), and his latest book "Better Software Faster" co-authored with Dan Haywood is published this year (2002) by Prentice-Hall. He is a technical editor for "Application Development Advisor" magazine and a regular speaker at the OT conferences.

About TogetherSoft

Dedicated to improving the ways people work together, TogetherSoft Corporation provides software and services that enable enterprises to create high-quality applications quickly. TogetherSoft is the momentum leader among software development platform vendors– with strong revenue growth and significantly faster delivery of new product features to the market using its proprietary, patent-pending technologies. TogetherSoft solutions are used in some of the world’s most innovative companies including Home Depot, Cisco Systems, Bank of America, Nortel Networks, Sun Microsystems, Viant and Sapient.

About Together ControlCenter

Currently used at more than 4,000 organizations, TogetherSoft’s flagship product, Together ControlCenter, is the only comprehensive Model-Build-Deploy Platform for teams building enterprise software solutions. Together ControlCenter includes all the features needed to build enterprise level applications, and provides integration links to leading databases and application servers. Together ControlCenter – the first end-to-end development platform to support C++, Java and Microsoft languages – gives software development teams a single platform, with a consistent but customizable user interface, for all of their work throughout the entire software development cycle.

Booking

Programme

Organisers

Accommodation

Sponsorship

OT2002

People

Pictures

Discussion

Good Links