Article | REF: H2759 V1

Component-based programming

Authors: Michel RIVEILL, Philippe MERLE

Publication date: November 10, 2000

You do not have access to this resource.
Click here to request your free trial access!

Already subscribed? Log in!


Overview

Français

Read this article from a comprehensive knowledge base, updated and supplemented with articles reviewed by scientific committees.

Read the article

AUTHORS

  • Michel RIVEILL: Professor at the University of Nice-Sophia-Antipolis

  • Philippe MERLE: Senior lecturer at Lille University of Science and Technology - Lille Laboratory of Fundamental Computer Science (LIFL)

 INTRODUCTION

Among the main phenomena revolutionizing the software industry, we note that applications are getting bigger and more complex, and that object-oriented technologies are making an irreversible breakthrough on the market, introducing new flexibility into software development methods. As a result, software development technologies are playing an increasingly important role in the economy. Given the difficulty of mastering software development, the success of many projects relies on compliance with a small number of key rules:

  • managing requirements: business requirements change every day, and their formal management is an essential activity to ensure that the final system meets users' expectations. This includes formalizing, documenting, organizing and monitoring changes in requirements;

  • using component-based architectures: one of the major technological evolutions in software development is the advent of components. Component-based architectures are the only answer to the need for information systems to be permanently scalable;

  • visual architecture modeling: it is impossible to grasp the complexity and effectively communicate the architecture and behavior of a system to all team members without visual and graphical modeling. The advent of a standard such as UML represents a major step forward in this field;

  • iterative development: given the sophistication of today's systems, it is no longer possible to simply sequence definition, design, development and testing. The many recent failures of major programs are clear proof of this. An iterative approach provides greater flexibility, as it enables new requirements or tactical changes to be taken into account quickly, and risks to be identified and resolved at an early stage;

  • quality control: given the fundamental role systems play in the life of the company, their quality must be beyond reproach. This is not a matter for outsiders, but results from the daily activity of all members of the development team. Ongoing verification of quality (suitability, reliability, performance) is essential. It is based on three fundamental principles: test early, test often, test automatically;

  • managing change: the success of iterative and parallel development hinges on the ability to manage the evolutions and changes that will inevitably occur during development, and to control the day-to-day development activities linked to the multiplicity of stakeholders.

These principles must form the basis of any modern development approach, which also relies on the automation of activities. This increases the productivity of development teams, guarantees...

You do not have access to this resource.

Exclusive to subscribers. 97% yet to be discovered!

You do not have access to this resource.
Click here to request your free trial access!

Already subscribed? Log in!


The Ultimate Scientific and Technical Reference

A Comprehensive Knowledge Base, with over 1,200 authors and 100 scientific advisors
+ More than 10,000 articles and 1,000 how-to sheets, over 800 new or updated articles every year
From design to prototyping, right through to industrialization, the reference for securing the development of your industrial projects

This article is included in

Software technologies and System architectures

This offer includes:

Knowledge Base

Updated and enriched with articles validated by our scientific committees

Services

A set of exclusive tools to complement the resources

Practical Path

Operational and didactic, to guarantee the acquisition of transversal skills

Doc & Quiz

Interactive articles with quizzes, for constructive reading

Subscribe now!

Ongoing reading
Component-based programming