Software development: speeding from sketchpad to smooth code

July 30, 2009

(PhysOrg.com) -- Creating error-free software remains time consuming and labour intensive. A major European research effort has developed a system that speeds software development from the drawing board to high-quality, platform-independent code.

According to Piotr Habela, technical coordinator of the VIDE (for VIsualize all moDel drivEn programming) project, have many good ideas about how to visualise, develop, debug and modify software, plus standards to guide them. The problem is that the design and development process has always been fragmented.

He explains that methods for visualising or flowcharting how a should work do not lead directly to computer code.

Software written in one programming language may be difficult to translate into another. No matter how carefully programmers work, complex software almost always includes errors that are difficult to diagnose and fix. Because of the lack of precise links between a program’s features and the software that implements them, updating or modifying a program often turns out to be time-consuming and costly.

“What we attempted that was quite distinct,” says Habela, “was to make the development of executable software a single process, a single toolchain, rather than a sequence of separate activities.”

It took two-and-a-half years of intensive effort by VIDE’s ten academic and industrial research partners, funded by the European Union, but the result is a software design and development toolkit that promises to make creating well-functioning, easily-modified software - for example for small businesses - significantly smoother, faster, and less expensive.

Model driven architecture

A key part of VIDE’s approach was to build on the idea of Model Driven Architecture, a programming methodology developed by an international consortium, the Object Management Group.

The idea is that each stage of software development requires its own formal model. The VIDE team realised that by creating and linking those models in a rigorous way, they could automate many of the steps of software development.

A software developer might start by working with a domain expert - for example a business owner - to determine what a new program needs to do. Those inputs, outputs and procedures would be formalised in what is called a computation independent model (CIM), a model that does not specify what kinds of computation might be used to carry it out - it lays out what the program will do rather than how it will do it.

“Models are usually considered just documents,” says Habela. “Our goal was to make the models serve as production tools.”

In the case of VIDE, much of that modeling is visual, in the form of flowcharts and other diagrams that are intuitive enough for the domain expert to understand, but which are sufficiently formalised to serve as the inputs to the next stage of the software development process.

To carry out these first modeling steps, the researchers created a domain analysis tool and a programming language called VCLL, for VIDE CIM Level Language.

From CIM to PIM to program

Once they have produced a formal CIM of the program they want to implement, it’s time to move a step closer to a functioning program by translating it into a platform independent model, or PIM.

For the VIDE team, a PIM is a model that specifies precisely what a program needs to do, but at an abstract level that does not depend on any particular programming language.

The researchers developed several software tools to produce a usable, error-free PIM. These include an executable modelling language and environment, a defect-detection tool, and finally a program that translates their final model into an executable Java program.

Luckily, the researchers did not have to build their system from the ground up. They were able to rely to a large extent on a pre-existing modeling language called UML, for Unified Modeling Language. UML provides a systematic way to visualise and describe a software system.

“We now have a kind of prototyping capability built into the development process,” says Habela. “You can design a model, specify its behavioural details, run it with sample data to see how it behaves, and then check with the domain expert to see if it is in fact the behaviour they expected.”

Several of the consortium members are implementing the VIDE toolkit in specific areas, for example web services, database management, and a variety of business processes.

Habela cautions that reaching VIDE’s goal of smoothly automating the entire software design and development process requires more work. Because of the broad scope of the project and the fundamental changes they are making, they are not yet ready to deploy the complete system.

However, he says, they have gone a long way towards clearing up “the muddy path from requirements to design.”

More information: http://www.vide-ist.eu/

Provided by ICT Results

Filter


Move the slider to adjust rank threshold, so that you can hide some of the comments.


Display comments: newest first

taisha99
Jul 31, 2009

Rank: not rated yet
At the NCC over 20 years ago we developed the 'Intermediate Knowledge Representation". This represented the domain, task, inference and problem solving strategies in a software independent way.



As a test two teams implemented the same software system from a IKR in different lagauages (It was a KBS system for network fault diagnosis).

So the above is not new. UML is formal and by that very nature implies constraints and hence distortions that may give rise to problems and bugs.



Native explicit language is what is needed.

Ged Haydon
Rank 4 /5 (3 votes)
Related Stories
Relevant PhysicsForums posts
  • How to tilt a object
    created9 hours ago
  • How to calculate total compressibility in liquid porous solid system
    created14 hours ago
  • Need help reading 3-D
    createdFeb 11, 2012
  • A way to send and receive wireless data
    createdFeb 11, 2012
  • Calling function with no input argument
    createdFeb 10, 2012
  • Force free body diagram problem on gym equipment
    createdFeb 10, 2012
  • More from Physics Forums - General Engineering

More news stories

Hacker claims porn site users compromised

A hacker claims to have compromised the personal information of more than 350,000 users after breaking into a disused website operated by pornography provider Brazzers.

Technology / Internet

created 16 minutes ago | popularity not rated yet | comments 0

AT&T customers surprised by 'unlimited data' limit

(AP) -- Mike Trang likes to use his iPhone 4 as a GPS device, helping him get around in his job. Now and then, his younger cousins get ahold of it, and play some YouTube videos and games.

Technology / Telecom

created 1 hour ago | popularity 5 / 5 (1) | comments 0

Japan's Fukushima reactor may be reheating: operator

Temperature readings at one of the crippled Fukushima nuclear reactors have risen above Japan's stringent new safety standard but there was no immediate danger, its operator said Sunday.

Technology / Energy & Green Tech

created 1 hour ago | popularity 3 / 5 (2) | comments 0

Google might launch Drive for cloud storage soon

(PhysOrg.com) -- Google's next big move, according to the Wall Street Journal, is a cloud storage service called Drive. Hardly first to the plate, Google is simply catching up to introducing its cloud reposi ...

Technology / Internet

created 22 hours ago | popularity 4.2 / 5 (6) | comments 5 | with audio podcast report

Iran blocks email, restricts net access: reports

Iran has further restricted access to the Internet and blocked popular email services for the past few days, in a move a top lawmaker said could "cost the regime dearly," media reports said on Sunday.

Technology / Internet

created 15 hours ago | popularity 5 / 5 (3) | comments 5


Rapunzel, Leonardo and the physics of the ponytail

(PhysOrg.com) -- New research provides the first mathematical understanding of the shape of a ponytail and could have implications for the textile industry, computer animation and personal care products.

Cognitive impairment in older adults often unrecognized in the primary care setting

A new study published in the Journal of the American Geriatrics Society reveals that brief cognitive screenings combined with offering further evaluation increased new diagnoses of cognitive impairment in older veterans two to ...

Climate change causes harmful algal blooms in North Atlantic: study

Warming oceans and increases in windiness could be causing of an abundance of harmful algal blooms in the North Atlantic Ocean and North Sea, according to new research.

Primary care program helps obese teen girls manage weight, improve body image and behavior

Teenage girls gained less weight, improved their body image, ate less fast food, and had more family meals after participating in a 6- month program that involved weekly peer meetings, consultations with primary care providers ...

Scientists discover molecular secrets of 2,000-year-old Chinese herbal remedy

For roughly two thousand years, Chinese herbalists have treated Malaria using a root extract, commonly known as Chang Shan, from a type of hydrangea that grows in Tibet and Nepal. More recent studies suggest that halofuginone, ...

Integrated pest management recommendations for the southern pine beetle

The southern pine beetle, Dendroctonus frontalis Zimmermann, is a chronic insect pest within pine forests in the southeastern United States. Under favorable environmental and host conditions, it is an agg ...