What is Jeewiz?

JeeWiz is a transformation engine that can be used as an integrated system generator for web or other applications and SOA on Enterprise Java. It can also be used to define Domain Specific Languages (DSL) and transform specifications using the DSL.

JeeWiz achieves the next level of model-driven development. It can do everything that other generators do, but also exceeds them by

  • supporting higher-level, faster modelling using business concepts
  • creating more of an overall application (over 95% of development artifacts)
  • representing more powerful patterns, such as standard multi-screen processing sequences.

JeeWiz is ideal for supporting an agile development process, helping to deliver maximum business benefit.

Could You Repeat that in English, Please?

Programmers are expensive, yet 90% of what they do is boring, repetitive and unnecessary. They work to a set of standards that means they have to write variations on the same theme time and again. They have to write classes, interfaces, configuration files and a host of other items all of which depend on the same business information. Ask most programmers the simplest way to write a program and they'll tell you, find one that's similar and modify it. It's not as if good programmers enjoy the cut and paste aspect of their job, it's just that that seems to be the best way to get things done. So if programmers don't enjoy doing it and business people don't enjoy paying for it, why do it at all?

Code generation changes all that. The technical architecture (the interfaces, the architectural tiers, the configuration, etc) is separated from the logical specification of what the business wants. All the repetitive code is generated from a model, leaving just the unique code to be written by the technical experts. What's even more useful is that lots of businesses model their requirements anyway. So this is a means of turning something you already do into over 90% of what you want at the press of a button.

Unfortunately that doesn't mean that the application takes less than 10% of the time and effort than it used to; not all of a project's time and effort is spent coding, but by the second project, when you've had time to get used to it, you can expect to reduce the length of a typical project by at least a quarter.

Jeewiz is a program which lets you encode the architecture that you want and apply it to business specifications to generate the vast majority of the final application. The Community Edition even comes with a cut down version of an encoded architecture (Spring and Hibernate) that forms part of our commercial offering.

And Why Not 100%?

JeeWiz can generate 100% of an application, but it is rarely cost-benefit justifiable to do so. In producing a requirement specification in the form of a model suitable to be transformed to application there are restrictions that must be applied. The requirements model must be unambiguous and contain enough detail to allow the generator to transform it to code. There are occasions where the level of detail is such that it is best left to a professional programmer rather the business modeller to do. The business modeller can explain what is needed in the form of a comment and let the programmer get on with it. Also there are one-off aspects to the technical specification that if incorporated as part of the transform will cost far more to develop than if they were left for a programmer. JeeWiz lets you pick which aspects of the application you don't want to generate, giving you an optimal generation level, typically between 90% and 98%, depending on the application.

What Problems does it Solve?

  • Requirements are fuzzy.   JeeWiz can be used as a RAD tool - helping to discover and refine business processes - and then, without any model changes, generate the delivered system.
  • Late architecture changes can kill projects.   With JeeWiz, the technical architecture is separated from the business application and logic, so it can be changed quickly and safely, even late in a project.
  • Outsourcing takes too long and takes too much effort.   JeeWiz lowers project costs and timescales while giving more interaction and visibility to the business, removing the business case for outsourcing.
  • Using more complicated infrastructures in in-house environments.   JeeWiz reduces the level of training required for application programmers, who can get on with writing business code without worrying about architecture.
  • Compliance Issues.   JeeWiz guarantees compliance in architecture, use of standards and code quality.

Features

  • Faster - typically reduces development timescales by over 25%
  • Cheaper - typically reduces project costs by 35%
  • Better - enforces standards and reduces maintenance costs
  • Driven by Business Needs - no disjunct between analysis and solution.

What is Jeewiz Community Edition?

JeeWizCE is the Open Source release of JeeWiz available on an Eclipse licence. It contains the full JeeWiz engine, but a smaller set of transforms than the commercial product.