logo slogan

Perfect Developer

Perfect Developer (or PD for short) is a tool for modelling software systems, and providing formal proofs of correctness. Optionally, code can be generated from the model, in a choice of languages.

Unlike other formal tools, Perfect Developer delivers high productivity by generating a very high proportion of software verification proofs without user intervention, using state-of-the-art automated reasoning technology.




Perfect Developer:


reduces testing costs
fits in with your process
is easy to learn and use
is suitable for large and small systems
is useful for many types of application


Perfect Developer reduces testing costs


By using Perfect Developer to prove the system correct before it is built, you avoid the need for debug/re-work/re-test cycles. When used within a mature software development process, Perfect Developer can reduce the need for unit testing, by facilitating correct-by-construction software development.


Perfect Developer is easy to introduce into your process


You can use Perfect Developer just as a specification and modelling tool, and write code by hand once Perfect Developer has proved that the specification and design satisfy the stated functional requirements

You can go on to use Perfect Developer to generate code, either for rapid prototyping or for the finished system.

If you prefer to define system architecture in UML, Perfect Developer can import class diagrams from several UML tools.


Perfect Developer is easy to learn and use


Perfect Developer uses a notation based on syntax and concepts drawn from programming languages. Its automated reasoning technology avoids the need for user involvement in constructing proofs.

By design, Perfect Developer supports both modular and object-oriented development styles.

All these features make Perfect Developer easier for today's software developers to learn and use than traditional formal methods.

In fact, Perfect Developer is so easy to learn that several universities use it in undergraduate software engineering courses.


Perfect Developer is suitable for large and small systems


Perfect Developer has been used in a wide variety of applications, both large and small.

These include embedded SIL 4 defence software, verifying business application logic, and of course Perfect Developer itself.

Since supports both modular design and object-oriented design, Perfect Developer allows you to construct highly-reusable application frameworks.


So who should use Perfect Developer?


Perfect Developer is intended for any organization that carries out software development to high standards, but it is particularly valuable for aerospace, defence and other critical software development.

It is also suitable for use by universities and colleges in teaching the principles of sound software development, or the Verified Design By Contract method. There is a free version available for appropriate users.