Conception de logiciels et développement de systèmes avec Rational Systems Developer

Les systèmes peuvent être construits de manière plus efficace et déployés avec les meilleures chances de succès lorsque la spécification architecturale est claire et que toutes les parties prenantes se mettent d'accord sur la conception très tôt dans le cycle de vie du projet.

Développement itératif

Le processus RUP (Rational Unified Process) préconise que la conception et le développement du logiciel se déroulent en quatre phases : la création, l'élaboration, la construction et la transition. Le processus met l'accent sur l'adoption de pratiques de développement d'application permettant de s'assurer que l'équipe de développement effectue les activités importantes suivantes tout au long de ces phases.
  • Gestion des exigences
  • Modélisation visuelle, à l'aide du langage UML (Unified Modeling Language)
  • Développement itératif
  • Contrôle des modifications
  • Contrôle continu de la qualité
Pour se conformer aux principes du processus RUP, votre équipe peut utiliser Rational Systems Developer afin d'appliquer les pratiques éprouvées de gestion du cycle de développement de logiciel.
  • Collecte des exigences et modélisation des cas d'utilisation

    Les exigences peuvent provenir de différentes sources, mais les analystes et les architectes du système doivent les consolider dans une documentation d'exigences et les gérer. A partir de ces exigences, votre équipe peut établir des cas d'utilisation du système et un comportement de haut niveau.

    Les équipent qui utilisent Rational RequisitePro peuvent recourir à la perspective de gestion des exigences afin d'établir le lien entre les définitions d'exigences existantes et les éléments de modèle UML existants (les cas d'utilisation, par exemple). Vous pouvez également créer des exigences à partir d'éléments de modèle existants ou créer des éléments de modèle à partir de définitions d'exigences existantes.

    L'architecte logiciel crée un modèle de cas d'utilisation afin de définir les cas d'utilisation, le comportement et les acteurs du système, ainsi que pour spécifier les flux de travaux (workflows) de l'utilisateur.

  • Analyse du domaine

    Les analystes et les architectes décrivent le domaine du système en définissant un modèle fonctionnel de haut niveau. La phase d'analyse identifie les données qui seront stockées dans le système et la manière dont elles seront traitées.

    L'architecte crée un modèle d'analyse afin d'établir une vue logique des exigences fonctionnelles. Ce modèle définit les objets de haut niveau dans le système et leurs interactions.

  • Conception architecturale détaillée

    L'architecte, en collaboration avec l'équipe de développement, conçoit l'architecture du système à un niveau détaillé.

    Durant la conception détaillée, l'équipe de développement s'appuie sur le modèle de haut niveau créé lors de l'analyse des activités pour créer le modèle de conception. Les développeurs ajoutent des caractéristiques au modèle afin de décrire l'implémentation du système (les éléments et technologies de programmation utilisés pour la persistance, la sécurité, la journalisation et le déploiement, par exemple).

    Le modèle de conception peut être affiné en appliquant des patterns de conception éprouvés et des transformations de modèle à modèle automatisées.

  • Implémentation

    L'équipe de développement utilise la conception approuvée pour implémenter l'application.

    Les développeurs passent de la conception à l'implémentation en utilisant des transformations automatisées pour convertir le modèle en code (par exemple, C++, Java ou IDL CORBA) et en poursuivant le développement et le déploiement de l'application à l'aide des capacités de développement offertes par le plan de travail, par exemple le CDT (toolkit de développement C et C++) et le JDT (toolkit de développement Java).

    Les développeurs d'applications C, C++ et Java peuvent aussi utiliser la capacité de visualisation UML pour explorer et développer leur code dans une représentation graphique de celui-ci utilisant la modélisation UML.

    Les développeurs d'applications Java peuvent tirer profit des fonctions additionnelles d'analyse structurelle et de contrôle afin de vérifier que leur code est conforme aux règles structurelles prédéfinies et à d'autres règles personnalisées. Ils peuvent en outre rechercher les patterns structurels connus dans leur code Java en recourant à une fonction automatisée d'exploration de patterns appelée Reconnaissance architecturale.

Flux de travaux interdisciplinaire

Tandis que la collecte des exigences, la modélisation et l'implémentation font l'objet d'itérations successives au fil des différentes phases du cycle de vie du projet, plusieurs workflows (ou flux de travaux) peuvent se dérouler en continu tout au long de ce cycle.


Retour d'informations