Appendix: Sculptor Metrics

This is an appendix to the article Improving Developer Productivity with Sculptor 

Metrics from a Real Case

I have converted an existing application to use Sculptor. It is interesting to see that Sculptor removes about half of the code.

It is a rather small application with a straight forward search and display user interface. It also contains an administrative part with typical CRUD operations. The system collects data from a other systems via messages from the ESB. It consists of 2 Services, 6 Consumers, 7 persistent Domain Objects, and several non persistent Value Objects. In these metrics we have not included the presentation tier, since Sculptor doesn't provide anything for the presentation tier yet.

The design of the old and the converted application is very similar, except for the introduction of Repositories and Access Objects instead of ordinary Data Access Objects (DAO).

Figure 1. Lines of code for old and converted application

Figure 1, “Lines of code” shows the lines of codes for the old application compared to the new converted application, which utilize Sculptor. The first bar in each category is the old application, the second is the generated code by Sculptor, and the third bar is hand written code in the new application.

The percentage measures are the amount hand written code (skeleton generated once) in the new application related to the amount of code in the old application, which was hand written. In total about 50% of the code is generated by Sculptor for this application.

Reduction of lines of code is definitely not the only benefit of Sculptor. Quality aspects such as consistency and maintainability are also important, but not as easy to measure.