| Titre : | Software Architecture-Based Evolution for Component/Service-Oriented Systems |
| Auteurs : | Amani KHADRAOUI, Auteur ; Mohamed Lamine Kerdoudi, Directeur de thèse |
| Type de document : | Monographie imprimée |
| Editeur : | Biskra [Algérie] : Faculté des Sciences Exactes et des Sciences de la Nature et de la Vie, Université Mohamed Khider, 2020 |
| Format : | 1 vol. (86 p.) / ill. / 29 cm |
| Langues: | Anglais |
| Mots-clés: | Software architecture,Software architecture evolution,Dynamic evolution,Component-based architecture,OSGi. |
| Résumé : | oftware architecture is a high-level abstract description of the system and its components.It plays an important role during the maintenance and evolution of the system,which saves time, money and effort. The evolution of the software architecture can be at design time (static evolution), in which there is no direct update or modification of the system and its components, or can be at the time of system execution (dynamic evolution), in which one can update and change both the architecture and the system while removing / adding components during the execution of this system. This work aims to help developers evolve their systems at runtime based on its dynamic software architecture. We have proposed a process, it is applied on a component-based application. The process first begins to recover the component-based architecture of the system at runtime. The second step is to evolve the system by manipulating this architecture. Changes to the architecture are reflected in the system. |
| Sommaire : |
Contents 1
List of Figures 3 General Introduction 7 1 Software Architecture and Software Architecture Evolution 10 1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2 Software Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2.1 Software Architecture Definition . . . . . . . . . . . . . . . . . . 10 1.2.2 Software Architectures Styles . . . . . . . . . . . . . . . . . . . 11 1.2.2.1 Client-Server Architecture Style . . . . . . . . . . . . . 11 1.2.2.2 Object-Oriented Architecture Style . . . . . . . . . . . 13 1.2.2.3 Component-Based Architecture Style . . . . . . . . . . 14 1.2.2.4 Service-Oriented Architecture Style . . . . . . . . . . . 16 1.2.3 Software Architecture Importance . . . . . . . . . . . . . . . . . 17 1.3 Software Evolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.3.1 Software Evolution Concept . . . . . . . . . . . . . . . . . . . . 18 1.3.2 Software Evolution Laws . . . . . . . . . . . . . . . . . . . . . . 19 1.3.3 Software Evolution Process . . . . . . . . . . . . . . . . . . . . 20 1.3.4 Software Evolution Importance . . . . . . . . . . . . . . . . . . 20 1.4 Software Architecture Evolution . . . . . . . . . . . . . . . . . . . . . . 20 1.4.1 Software Architecture Evolution Concept . . . . . . . . . . . . . 21 1.4.2 Software Architecture Evolution Process . . . . . . . . . . . . . 22 1.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2 Component-Based Software Development 25 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.2 Software Component Definition . . . . . . . . . . . . . . . . . . . . . . 25 2.3 Component Model Definition . . . . . . . . . . . . . . . . . . . . . . . 26 2.4 Component Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.4.1 CORBA Component Model . . . . . . . . . . . . . . . . . . . . 26 2.4.2 Enterprise Java Beans . . . . . . . . . . . . . . . . . . . . . . . 27 2.4.3 FRACTAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.4.4 Open Services Gateway Initiative . . . . . . . . . . . . . . . . . 30 2.4.5 Service Component Architecture . . . . . . . . . . . . . . . . . . 30 2.5 Open Services Gateway Initiative Technology . . . . . . . . . . . . . . 31 2.5.1 OSGi Framework . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2.5.2 OSGi Framework Implementations . . . . . . . . . . . . . . . . 32 2.5.3 OSGi Component . . . . . . . . . . . . . . . . . . . . . . . . . . 33 2.5.3.1 Bundle Concept . . . . . . . . . . . . . . . . . . . . . 33 2.5.3.2 Bundle Lifecycle . . . . . . . . . . . . . . . . . . . . . 35 2.5.4 OSGi Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 2.5.4.1 Service Component . . . . . . . . . . . . . . . . . . . . 37 2.5.4.2 Service Component Lifecycle . . . . . . . . . . . . . . 37 2.5.5 OSGi Benefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 2.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 3 State of the Art 42 3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.2 Component-Based Architecture Recovering . . . . . . . . . . . . . . . . 42 3.3 Service-Oriented Architecture Recovering . . . . . . . . . . . . . . . . . 44 3.4 Software Architecture Static Evolution . . . . . . . . . . . . . . . . . . 45 3.5 Software Architecture Dynamic Evolution . . . . . . . . . . . . . . . . 46 3.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4 Software Architecture-Based Evolution for Component/Service Oriented Systems 50 4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.2 General Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.2.1 Proposed Approach Overview . . . . . . . . . . . . . . . . . . . 50 4.2.2 Proposed OSGi Meta-Model . . . . . . . . . . . . . . . . . . . . 52 4.3 Software Architecture Recovering . . . . . . . . . . . . . . . . . . . . . 57 4.3.1 Static Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 4.3.2 Dynamic Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . 57 4.3.3 Component Architecture Generation . . . . . . . . . . . . . . . 57 4.4 Dynamic Software Architecture Evolution . . . . . . . . . . . . . . . . 58 4.4.1 Graphical Visualization & Comprehension of Software Architectures 58 4.4.2 Update the Architecture . . . . . . . . . . . . . . . . . . . . . . 58 4.4.3 Automatic Software Architecture Generation & Software Architecture As XMI File . . . . . . . . . . . . . . . . . . . . . . . . 59 4.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 5 Implementation and Case Study 61 5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 5.2 ArchDynEvol Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 5.2.1 Architecture of ArchDynEvol . . . . . . . . . . . . . . . . . . . 61 5.2.2 Development of Graphical Software Architecture Editor . . . . . 63 5.2.2.1 OSGI EMF Meta-Model . . . . . . . . . . . . . . . . . 63 5.2.2.2 Graphic Editor Creation . . . . . . . . . . . . . . . . . 67 5.2.3 Recovering Software Architecture Components . . . . . . . . . . 73 5.2.4 Implementation of Evolution Actions . . . . . . . . . . . . . . . 74 5.3 Case Study: Eclipse Based Applications . . . . . . . . . . . . . . . . . 78 5.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 General Conclusion 85 |
| Type de document : | Mémoire master |
Disponibilité (1)
| Cote | Support | Localisation | Statut |
|---|---|---|---|
| MINF/518 | Mémoire master | bibliothèque sciences exactes | Consultable |



