Software that gets reduced, reused, recycled
(PhysOrg.com) -- Service-centric software engineering is the latest paradigm in computing, and European researchers have developed a platform they believe will launch the concept into the business world.
Currently it takes a long time to develop applications, it costs a lot of money, and if it fails you must either start again or limp along with a poorly performing system. Worse, development is so lengthy that, by the time you are finished with one large project, technology may have moved on, and you have to start again.
There is another way. Service-centric software engineering defines every action a computer program can take as a service. Want to print a document? That is one service. Type a document? That is another. By combining many services, you can develop very complex, very sophisticated applications.
And once the task is complete, the services disappear. When a new function appears, a better way of doing something, you do not have to get into complex integration or redevelopment, you simply exchange one service for another.
It has a lot of advantages. You can reuse bits of code in many different applications, so you do not have to constantly reinvent the wheel. Application development also becomes more competitive, because if one service charges too much, or does not work very well, customers simply choose another.
Sexy software design
Up to now, services have been deployed on a relatively small scale, for fairly simple mash-ups by leading-edge web developers. A mash-up takes one data set, like Google maps, and plugs it into another dataset, like estate agent listings, and creates a new service, for example, a map with all the houses for sale in your town.
Now European researchers have developed a platform that offers service-centric software engineering for industrial-strength applications. And industry is very interested.
“This is very much the computing model of the moment,” says Peter Sawyer, a researcher with the SeCSE project. “It is creating a lot of excitement in web applications, and companies are interested in it for business applications, but up to now they have held off the technology because there was no integrated development environment. That is the gap we tried to fill.”
SeCSE, pronounced sexy, is a major integrated project over four years with 14 partners and a budget of more than €15 million. It created a service-centric development platform that spans the entire software lifecycle from design to deployment. The platform uses Java to create software that integrates services from different providers regardless of the underlying operating systems or programming languages.
It is a powerful, liberating paradigm and the Gartner group predicts that this service-centric development will see some significant deployment for business applications.
This is just a prediction, but it indicates the promise of service-centric applications. The technique will represent a very significant slice of software development expenditure in future.
“With this approach, you can have a developer set out a design and then test it, very clearly, early on by going out and getting some available services. That validates the approach early on, and that is a very radical change from what has happened before,” Sawyer notes.
The primary goal of the SeCSE project was to create methods, tools and techniques for system integrators and service providers and to support the cost-effective development and use of dependable services and service-centric applications.
SeCSE focused on four key areas for engineering software systems: specification, discovery, design, and management. For each of these areas, SeCSE developed new techniques and tools, mainly in Java, a platform-independent programming language.
“Technically, the real biggie was defining the real needs [at the start]. We were trying to develop technologies for emerging needs, but we worked closely with industrial partners and were able to identify quickly any design dead-ends,” Sawyer reveals.
These tools and techniques were integrated to provide a SeCSE development environment. Even better, based on visionary scenarios led by the Fiat Research Centre, SeCSE developed domain-specific applications. It is a significant validation of both SeCSE’s vision and execution.
Exploitation is primarily appearing through the planned products of SeCSE’s commercial partners, though the potential of the technology was demonstrated in some compelling applications in the automotive sector.
SeCSE IP received funding from the ICT strand of the EU’s Sixth Framework Programme for research.
This is the first of a two-part special feature on SeCSE.
More information: www.secse-project.eu/
Provided by ICT Results