3 research outputs found

    A methodology for component-based system integration

    Get PDF
    Component-based software based on software architectures is emerging to be the next generation software development paradigm. The paradigm shifts the development focus from lines-of-codes to coarser-grained components and the interconnections among them. It consists of system architecture design, architecture description, component search and system integration from components to generate a software system. However, one of the bottlenecks in this paradigm is the integration of the individual components into the overall system. In this dissertation a methodology for component-based system integration is proposed. It is based on an architectural aggregation view, a component model, flowgraphs and cyclomatic complexity. We introduce this view, model, and new ways to compute cyclomatic complexity based on flowgraphs. The methodology makes use of Jackson diagram to represent the detailed design of a system and decomposes the system into components and aggregations. An aggregation is a set of components glued together by one connector, and is represented as a flowgraph. Then an aggregation flowgraph is decomposed into prime flowgraphs called prime connections. An Implementation Description Language (IDL) is introduced to represent the aggregations and components. Finally a system synthesis mechanism is proposed that is responsible for translating prime connections, embedding functional units into them, and composing aggregations and the integrated system from them

    Vers une approche automatique pour l'extraction des règles d'affaires d'une application

    Get PDF
    Les compagnies font face à d'énormes coûts pour maintenir leurs applications informatiques. Au fil des ans, le code de ces applications a accumulé des connaissances corporatives importantes (règles d'affaires et décisions de conception). Mais, après plusieurs années d'opération et d'évolution de ce code, ces connaissances deviennent difficiles à récupérer. Les développeurs doivent donc consacrer beaucoup de leur temps à l'analyser: une activité connue sous le nom de \ud « compréhension du logiciel ». Comme il a été estimé que cette activité accapare entre 50 % et 90 % du travail d'un développeur, simplifier le processus de compréhension du logiciel peut avoir un impact significatif dans la réduction des coûts de développement et de maintenance. L'une des solutions au problème de compréhension du logiciel est la rétro-ingénierie. Celle-ci est le processus d'analyse du code source d'une application pour (1) identifier les composantes de l'application et les relations entre ces composantes et (2) créer une représentation de haut niveau de l'application. Plusieurs approches ont été proposées pour la rétro-ingénierie ; cependant, la représentation abstraite du code source extraite par la plupart de ces approches combine la logique d'affaires de l'application et son architecture (ou son infrastructure). Dans ce mémoire, nous présentons une nouvelle approche qui permet d'analyser le code source d'une application orientée objet afin d'en extraire un modèle abstrait ne décrivant que les règles d'affaires de cette application. Ce modèle prend la forme d'un diagramme de classes UML, présentant les classes d'affaires de cette application ainsi que les relations entre ces classes. Cette approche a été validée sur plusieurs systèmes (écrits en Java) de différentes tailles. L'approche donne de bons résultats pour les systèmes possédant une bonne architecture et un bon style de programmation. Dans le cas contraire, les résultats sont moins convaincants

    Generische ITS-Softwarearchitektur und ITS-Prozess

    Get PDF
    Anhand einer ausgiebigen Analyse vorhandener Softwarearchitekturen von intelligenten Lehr-/Lernsystemen (ITS) werden wiederkehrende Probleme dieser aufgezeigt. Es wird eine Erweiterung der klassischen Architektur entwickelt und in UML spezifiziert. Auf die konzeptionelle Vorarbeit aufbauend, wird sowohl ein ITS-Lehrprozess als auch eine allgemeingültige ITS-Softwarearchitektur in UML definiert. Passend dazu verwirklicht ein Softwareframework die Implementierung, während ein Prototyp die Praktikabilität des ITS-Lehrprozesses, der ITS-Architektur und des Softwareframeworks überprüft.On the basis of the extensive analysis of existing software architectures of intelligent tutoring systems (ITS) the recurring problems are pointed out. An extension of the classical architecture is developed and specified in UML. Based on the conceptual preliminary work, both an ITS teaching process and a generally valid ITS software architecture are defined in UML. Appropriately, a software framework realizes the implementation, while a prototype checks the practicability of the ITS teaching process, ITS architecture and the framework
    corecore