Over the years, Integranova has developed a set of tools -- and provides services leveraging these tools -- to automatically develop software from models.
This technology has been subject to benchmarks that yield amazing results such as 12 to 23 faster time to market and 15 times less errors, when compared to other software development methodologies.
Your mileage may vary, of course.
Both Integranova -- when acting as a software factory -- and our Customers -- when using our toolset themselves -- have seen that depending on the nature of the project, productivity gains can be more modest or even exceed the expectations set forth by the benchmarks.
In any case, leveraging Integranova's tools or services has always proven to increase the productivity of developers and allowed them to consistently increase the quality of the software being developed.
If you want to learn how you can be more productive with Integranova, keep on reading.
The automatic code-generation that Integranova features come naturally to mind as the reason behind the increased productivity, but that is not the only reason. Let’s see a few more.
Focus on the what, not on the how
Integranova lets you define the functionality of an information system working at a higher level of abstraction, using models rather than code as the primary development artifact.
You work fundamentally creating models that are then automatically transformed into code ready to compile, build and deploy. Code which fully implements the all the functionality of the system.
This lets you focus on defining what will do the system you want to build and let the transformation engines (read "code generators") take care of all the lower-level details that pertain to the specific architectures, platforms, and programming languages for which the code is automatically generated.
Say more with less words
Working at a higher level of abstraction means you need to use less elements to define all the intricacies you would have to deal with if you directly wrote the source code yourself.
With just a bunch of modeling elements you can be defining complex functionality that results in hundreds, if not thousands, lines of source code.
Tackle bigger and more complex projects
Being able to say more with less words means that your current development teams can undertake bigger and more complex projects.
Indeed, your teams will be able to manage models representing projects the complexity of which would require bigger development teams if managed with conventional development paradigms.
No need therefore to grow your pool of developers when facing bigger or more complex projects.
Improve knowledge preservation and communication
A model is smaller and more concise, hence easier to fit in your head, than a large collection of source code files.
Also, it is easier to visualize and navigate a model than it is to do a source code project.
All of this makes it easier for developers to visualize and understand what the system under development is supposed to do by looking at the model, rather than by looking at the code being produced. A natural consequence of this gentler learning curve is that managers find it much easier to assign new developers to an ongoing project or to reassign developers to different projects, for that matter.
Deliver more functionality in each sprint
Less work to do at the modelling level, coupled with automatic code generation features naturally results in development teams being able to deliver far more functionality in each sprint if compared with teams working outside the model-based software development paradigm.
Or, alternatively, this means you can deliver the same amount of functionality in shorter sprints. One way or the other, you team is more productive.
Make less errors
Automatically generated code will be free of compile-time errors, so you can expect most deviations to come not from the code incorrectly implementing requirements, but rather from requirements being correctly implemented yet misinterpreted.
Less errors – and, as we will see in the next section, early discovery of deviations -- means less effort needed to correct them, and therefore, more productivity.
Get feedback faster
Shorter or faster sprints result in being able to get faster feedback form stakeholders, which will let you spot deviations from intended results (read, “misinterpreted requirements”) earlier in the development process.
Stakeholders, in turn, will have more visibility and insight into the development process and a better and truer measure of progress. This inevitably results in keeping your stakeholders more engaged and satisfied at each sprint.
To sum up, Integranova is a model-based software development approach that renders your development teams more productive. Not only because of its automatic code generation features, but also because it lets developers tackle bigger and more complex projects and still deliver more error-free functionality in shorter sprints.
More details on future posts on Integranova Model Execution System.
If you are eager to learn more about Integranova MES or would like to see a live demo, feel free to contact us.