Search engine for discovering works of Art, research articles, and books related to Art and Culture
ShareThis
Javascript must be enabled to continue!

Visualizing, assessing and re-modularizing object-oriented architectural elements

View through CrossRef
Visualisation, évaluation et re-modularisation des éléments architecturaux oriéntés objet Pour faire face à la complexité des grands systèmes logiciels orientés objets, les programmeurs organisent les classes en sous-systèmes en utilisant les concepts de module ou de package. Une telle structure modulaire permet aux systèmes logiciels d’évoluer face aux nouvelles exigences. L’organisation des classes dans des packages et / ou sous-systèmes, que nous appelons la modularisation du logiciel, suit habituellement les relations entre les classes. Il est d'usage de vouloir les packages faiblement couplés et assez cohésifs. Cependant, les études montrent que quand les systèmes logiciels s’adaptent aux exigences et aux modifications de l’environnement, leurs modularisations dérivent et perdent progressivement leur qualité. En conséquence, la modularisation des systèmes logiciels doit être maintenue. Il est donc important de comprendre, d’évaluer et d’optimiser l’organisation des packages et de leurs relations. Le point défendu dans la thèse est que le maintien des modularisations logiciels de grande taille et complexes requiert des approches qui contribuent à: (1) la compréhension des packages et de leurs relations; (2) l’évaluation de la qualité d’une modularisation, ainsi que la qualité d’un package dans le contexte d’une modularisation donnée; (3) l’optimisation de la qualité d’une modularisation existante. Dans cette thèse, nous nous concentrons sur trois domaines de recherche: visualisations de programmes, métriques et algorithmes. Dans un premier temps, nous définissons deux visualisations qui aident les mainteneurs à: (1) la compréhension de la structure des packages, et de leurs utilisations et leurs relations; (2) l’identification des modèles; et (3) l’identification des anomalies structurelles. En plus de visualisations, nous définissons un ensemble de métriques qui aident à évaluer la qualité d’un package (i.e., la cohésion et le couplage). Nous définissons également des métriques qui permettent d’évaluer la qualité d’une collection des packages inter-dépendants. Ceci en prenant en compte le degré de couplage et de cycles entre les packages. Enfin, nous définissons un algorithme de recherche qui réduit automatiquement le couplage et les cycles entre les packages, en déplaçant seulement les classes sur les packages existants. Notre approche d’optimisation prend explicitement en compte l’organisation des classes et la structure originale des packages. Il permet également aux mainteneurs de contrôler le processus d’optimisation en spécifiant: (1) le nombre maximal des classes qui peuvent changer leurs packages; (2) les classes qui sont candidates pour se déplacer et celles qui ne doivent pas changer leurs packages; (3) les packages qui sont candidates pour la restructuration et ceux qui ne doivent pas se changer; et (4) le nombre maximal des classes qu’un package donné peut contenir. Les approches présentées dans cette thèse ont été appliquées à des systèmes logiciels orienté objets, réels et de grand taille. Les résultats obtenus démontrent l’utilité de nos visualisations et métriques, et l’efficacité de notre algorithme d’optimisation.
Agence Bibliographique de l'Enseignement Supérieur
Title: Visualizing, assessing and re-modularizing object-oriented architectural elements
Description:
Visualisation, évaluation et re-modularisation des éléments architecturaux oriéntés objet Pour faire face à la complexité des grands systèmes logiciels orientés objets, les programmeurs organisent les classes en sous-systèmes en utilisant les concepts de module ou de package.
Une telle structure modulaire permet aux systèmes logiciels d’évoluer face aux nouvelles exigences.
L’organisation des classes dans des packages et / ou sous-systèmes, que nous appelons la modularisation du logiciel, suit habituellement les relations entre les classes.
Il est d'usage de vouloir les packages faiblement couplés et assez cohésifs.
Cependant, les études montrent que quand les systèmes logiciels s’adaptent aux exigences et aux modifications de l’environnement, leurs modularisations dérivent et perdent progressivement leur qualité.
En conséquence, la modularisation des systèmes logiciels doit être maintenue.
Il est donc important de comprendre, d’évaluer et d’optimiser l’organisation des packages et de leurs relations.
Le point défendu dans la thèse est que le maintien des modularisations logiciels de grande taille et complexes requiert des approches qui contribuent à: (1) la compréhension des packages et de leurs relations; (2) l’évaluation de la qualité d’une modularisation, ainsi que la qualité d’un package dans le contexte d’une modularisation donnée; (3) l’optimisation de la qualité d’une modularisation existante.
Dans cette thèse, nous nous concentrons sur trois domaines de recherche: visualisations de programmes, métriques et algorithmes.
Dans un premier temps, nous définissons deux visualisations qui aident les mainteneurs à: (1) la compréhension de la structure des packages, et de leurs utilisations et leurs relations; (2) l’identification des modèles; et (3) l’identification des anomalies structurelles.
En plus de visualisations, nous définissons un ensemble de métriques qui aident à évaluer la qualité d’un package (i.
e.
, la cohésion et le couplage).
Nous définissons également des métriques qui permettent d’évaluer la qualité d’une collection des packages inter-dépendants.
Ceci en prenant en compte le degré de couplage et de cycles entre les packages.
Enfin, nous définissons un algorithme de recherche qui réduit automatiquement le couplage et les cycles entre les packages, en déplaçant seulement les classes sur les packages existants.
Notre approche d’optimisation prend explicitement en compte l’organisation des classes et la structure originale des packages.
Il permet également aux mainteneurs de contrôler le processus d’optimisation en spécifiant: (1) le nombre maximal des classes qui peuvent changer leurs packages; (2) les classes qui sont candidates pour se déplacer et celles qui ne doivent pas changer leurs packages; (3) les packages qui sont candidates pour la restructuration et ceux qui ne doivent pas se changer; et (4) le nombre maximal des classes qu’un package donné peut contenir.
Les approches présentées dans cette thèse ont été appliquées à des systèmes logiciels orienté objets, réels et de grand taille.
Les résultats obtenus démontrent l’utilité de nos visualisations et métriques, et l’efficacité de notre algorithme d’optimisation.

Related Results

Object‐Oriented Development
Object‐Oriented Development
Abstract The object‐oriented model for software development has become exceedingly attractive as the best answer to the increasingly complex needs of the software develop...
Object‐Oriented Analysis
Object‐Oriented Analysis
AbstractObject‐oriented analysis is a method of formulating a model of a desired software system in terms of objects and their interactions. The discipline was started by practitio...
The Observatory
The Observatory
<p><b>This thesis investigation looks at how transformative heritage stories linked to abandoned architectural sites can be reawakened through an allegorical architectu...
Redefining Architectural Montage: The Synergistic Role of Artificial Intelligence in Contemporary Architectural Practice
Redefining Architectural Montage: The Synergistic Role of Artificial Intelligence in Contemporary Architectural Practice
his study explores the application of Artificial Intelligence (AI) in contemporary architectural design, particularly in reshaping the architectural montage concept. The primary ob...
Analyzing the Evolution of Object-Oriented Paradigm in Java Language Patterns for Multiplatform Environments
Analyzing the Evolution of Object-Oriented Paradigm in Java Language Patterns for Multiplatform Environments
Research focused on the evolution of the object-oriented paradigm in the context of Java language pattern development for cross-platform environments. It centralizes on analyzing t...
Architectural theory as a tool for architectural criticism necessarily employed for the betterment of architectural education
Architectural theory as a tool for architectural criticism necessarily employed for the betterment of architectural education
Criticism, or "to criticize" derives from the Greek krinein meant to distinguish, which is to separate, to silt, to make a distinction. The word "theory" comes from the philosophic...
Façadeʼs definitions through architectural transitions
Façadeʼs definitions through architectural transitions
The definition of the architectural term “façade” will be addressed in this article, as a relatively new term and not very much explored in the vocabulary of architecture definitio...
Use of Vastu Purush Mandala in Architectural Education
Use of Vastu Purush Mandala in Architectural Education
This paper is based upon the study of linkages between the traditional design knowledge concepts and the current Architectural education system in India. Especially the Vastu Purus...

Back to Top