Where we are coming from – Part III

(This is the third and last installment in this series. If you haven’t done it yet, read the first and second installments before you proceed)

Let’s start by recalling the main points we wanted to make in the previous posts. In summary, we should strive for addressing concerns as independently as possible (points #1 and #2), and that depending on the dimension (point #3) the concern lives in we should deploy the most appropriate languages and skills for the job (point #4 and #5). The benefits are countless across many areas such as productivity, handling of changes in requirements, reuse, and work specialization. But how to achieve that?

Libra comes to the rescue

Corcova Libra (codename) is our yet to be released tool that supports our vision of how software development should be done. Libra artifacts are models and templates. Problem domain concerns are addressed in a platform-independent way in the form of executable UML models. Implementation-technology concerns are addressed in templates using one of the supported template languages.

Since the platform-independent models are fully complete (from the point of view of business requirements), they can be tried, tested and debugged, even before a target platform is chosen. And when the implementation-aware templates are applied to the platform-independent models, the result is platform-specific code that fully addresses all concerns, be them in the problem-domain or implementation technology dimension.

Libra is not the first product to follow this approach, but is the first that aims to bring the benefits of executable models and full code generation to the masses of application developers.

This is the last post of a series that aimed at explaining what problem we set out to fix. We hope you enjoyed it. We sure were vague on technical details, which we plan to unveil as we release the first publicly available version. If you want to know about any news on the development of Libra, this is the place to watch. If you don’t like to use feed readers, you can also send us an e-mail, and we will let you know whenever a new post is available (we promise not to spam you, and you can opt-out at any time).


UPDATE (2013-08-22): Much of the code and ideas originally in the project codenamed Corcova/Libra are part of Cloudfier today.

Email this to someoneShare on FacebookShare on LinkedInShare on Google+Tweet about this on Twitter

2 thoughts on “Where we are coming from – Part III

  1. Nirav Thaker

    April 22, 2007 at 9:59pm

    Being a developer of similar product (with slightly different goal), I’m really happy that you guys have started working towards executable models.

    More than just techno-fascinated work and challenges, I would ask you to have clear goals for your product in entire life-cycle, which you apparently seem to have focused.

    Wish you all the best for your endeavour, and the name ‘Corcova’ is cool!

    PS: It would be excellent if you can put a wiki and keep publishing pages on it, it would be a great asset, just a suggestion.

  2. RC

    April 23, 2007 at 8:17am

    Hi Nirav,

    Thanks for the suggestions and the words of encouragement. I like the idea of a wiki, will think about doing it after we have made the first public release. I will also make sure that the product goals are spelled out on an upcoming post.

    By the way, ‘Corcova’ means ‘hunch’ in Portuguese. Think of a camel doing all the heavy lifting for you, while you focus on the intellectual work. For now, it is just a codename, but if it catches on, who knows?

    Thanks again, and please keep the questions and suggestions coming!

    Rafael (currently aka the Abstratt team)

Comments are closed.