Dans Rose RTE, les fichiers du modèle et du code source sont maintenus dans un état synchronisé par l'exécution d'une opération d'ingénierie aller-retour (RTE, round-trip engineering). Le résultat est un modèle mis à jour à partir du code source modifié ou un code source mis à jour à partir d'un modèle modifié. Le code source et les éléments du modèle sont séparés et les relations établies entre eux sont volontairement lâches afin de permettre l'ingénierie aller-retour. Pour les ingénieurs et architectes logiciels qui travaillent principalement dans le code, le processus RTE n'est pas toujours idéal, car il présente des obstacles pour ceux qui ont peu d'expérience en modélisation avec le langage UML.
Rational Software Architect va au-delà du concept de RTE et offre les fonctionnalités clés suivantes :
Modélisation UML et édition visuelle
La fonction de modélisation visuelle la plus familière aux utilisateurs de Rose est la modélisation UML. Développez votre projet avec une approche descendante en utilisant l'analyse et les modèles de conception UML. Visualisez votre code avec des diagrammes de rubrique générés dynamiquement ainsi qu'avec des diagrammes de classes créés manuellement. Vous pouvez également apporter des modifications aux diagrammes qui sont reflétées directement dans le code. L'édition visuelle inclut aussi des outils qui améliorent la productivité et facilitent le travail des utilisateurs qui optent pour une approche de développement ascendante (écriture du code en premier).
Transformations
Vous pouvez obtenir du code à partir de vos modèles en utilisant les transformations UML-code. Cette technique est avantageuse en ce sens qu'elle accélère le cycle de développement et améliore la qualité du logiciel en rappliquant les mêmes solutions aux problèmes courants rencontrés dans l'ensemble d'un système. Les services de transformation contribuent à rendre les systèmes plus fiables et plus cohérents.
Le support étendu de la modélisation UML autorise une approche de conception descendante en offrant aux analystes, aux architectes et aux
autres implémenteurs un environnement leur permettant d'analyser et de concevoir leurs logiciels à l'aide de diagrammes de cas
d'utilisation, de classes et de déploiement. Le support d'édition visuelle offre à ceux qui optent pour une approche de développement
ascendante des fonctions leur permettant une conception "à la volée". Les services de transformation comblent le vide entre les modèles UML
et le code, ainsi qu'entre les modèles à différents niveaux d'abstraction.