A Model-Driven Architecture Based Evolution Method and Its Application in an Electronic Learning System
Total Page:16
File Type:pdf, Size:1020Kb
A Model-Driven Architecture based Evolution Method and Its Application in An Electronic Learning System PhD Thesis Yingchun Tian Software Technology Research Laboratory De Montfort University October, 2012 To my husband, Delin Jing and my mum, Ning Zhang for their love and support Declaration Declaration I declare that the work described in this thesis was originally carried out by me during the period of registration for the degree of Doctor of Philosophy at De Montfort University, U.K., from October 2008 to December 2011. It is submitted for the degree of Doctor of Philosophy at De Montfort University. Apart from the degree that this thesis is currently applying for, no other academic degree or award was applied for by me based on this work. I Acknowledgements Acknowledgements For many years I had been dreaming about receiving a PhD, I would like to thank many people who helped me in achieving this dream in different ways since I undertook the work of this thesis. My deepest gratitude goes to my supervisor, Professor Hongji Yang, for his guidance, support and encouragement throughout my PhD career. He always provided me with many invaluable comments and suggestions for the improvement of the thesis. I am grateful for his leading role fostering my academic, professional and personal growth. Many thanks go to Professor Hussein Zedan and Doctor Wenyan Wu, for examining my PhD thesis and providing many helpful suggestions. My research career will benefit tremendously from the research methodologies to which Professor Zedan and Doctor Wu introduced me. I would like to thank colleagues in Software Technology Research Laboratory at De Montfort University, for their support and feedback, and for providing such a stimulating working atmosphere, Professor Hussein Zedan, Doctor Feng Chen, Doctor Amelia Platt, Doctor Antonio Cau, and many other colleagues. In addition, I would like to thank the Graduate School Office at De Montfort University for the outstanding management. Finally, I wish to express thanks to my husband, Delin Jing, my mother, Ning Zhang, and my parents in law for their love, encouragements, patience, and support over the past years. This thesis is dedicated to them. II Abstract Abstract Software products have been racing against aging problem for most of their lifecycles, and evolution is the most effective and efficient solution to this problem. Model-Driven Architecture (MDA) is a new technique for software product for evolving development and reengineering methods. The main steps for MDA are to establish models in different levels and phases, therefore to solve the challenges of requirement and technology change. However, there is only a standard established by Object Management Group (OMG) but without a formal method and approach. Presently, MDA is widely researched in both industrial and research areas, however, there is still without a smooth approach to realise it especially in electronic learning (e-learning) system due to the following reasons: (1) models’ transformations are hard to realise because of lack of tools, (2) most of existing mature research results are working for business and government services but not education area, and (3) most of existing model-driven researches are based on Model-Driven Development (MDD) but not MDA because of OMG standard’s preciseness. Hence, it is worth to investigate an MDA-based method and approach to improve the existing software development approach for e-learning system. Due to the features of MDA actuality, a MDA-based evolution method and approach is proposed in this thesis. The fundamental theories of this research are OMG’s MDA standard and education pedagogical knowledge. Unified Modelling Language (UML) and Unified Modelling Language Profile are hired to represent the information of software system from different aspects. This study can be divided into three main parts: MDA-based evolution method and approach research, Platform-Independent Model (PIM) to Platform-Specific Model (PSM) transformation development, and MDA-based III Abstract electronic learning system evolution. Top-down approach is explored to develop models for e-learning system. A transformation approach is developed to generate Computation Independent Model (CIM), Platform-Independent Model (PIM), and Platform-Specific Model (PSM); while a set of transformation rules are defined following MDA standard to support PSM’ s generation. In addition, proposed method is applied in an e-learning system as a case study with the prototype rules support. In the end, conclusions are drawn based on analysis and further research directions are discussed as well. The kernel contributions are the proposed transformation rules and its application in electronic learning system. IV Table of Contents Table of Contents Declaration ..................................................................................................................................... I Acknowledgements ....................................................................................................................... II Abstract ....................................................................................................................................... III Table of Contents .......................................................................................................................... V List of Figures ............................................................................................................................... X List of Tables .......................................................................................................................... XVII List of Acronyms ..................................................................................................................... XIX Chapter 1 Introduction .................................................................................................................. 1 1.1 Proposed Research and Overview of Problem .................................................................... 1 1.2 Research Objectives and Research Methods....................................................................... 3 1.3 Research Questions and Hypotheses ................................................................................... 5 1.4 Original Contributions ........................................................................................................ 7 1.5 Success Criteria ................................................................................................................... 8 1.6 Organisation of Thesis ........................................................................................................ 9 Chapter 2 Background and Basic Concepts ................................................................................ 12 2.1 Electronic Learning System .............................................................................................. 12 2.1.1 Electronic Learning .................................................................................................... 12 V Table of Contents 2.1.2 E-Learning Standards and Specifications .................................................................. 13 2.1.3 E-Learning 2.0 ........................................................................................................... 14 2.1.4 Web-Based E-Learning Development ....................................................................... 15 2.2 Meta Object Facility and Query/View/Transformation .................................................... 19 2.2.1 Meta Object Facility .................................................................................................. 19 2.2.2 Query/View/Transformation ...................................................................................... 20 2.3 Basic Concepts and Related Terms ................................................................................... 22 2.4 Summary ........................................................................................................................... 23 Chapter 3 Related Work .............................................................................................................. 25 3.1 Unified Modelling Language ............................................................................................ 25 3.1.1 Unified Modelling Language 2.x ............................................................................... 25 3.1.2 Unified Modelling Language and Model-Driven Architecture.................................. 29 3.1.3 UML Profile ............................................................................................................... 31 3.2 Overview of Extensible Markup Language (XML), XML Metadata Interchange, and Hypertext Preprocessor ........................................................................................................... 34 3.3 Software Evolution ........................................................................................................... 34 3.3.1 Software Changes and Evolution ............................................................................... 34 3.3.2 Laws of Software Evolution ...................................................................................... 36 3.4 Model Driven Architecture and Model Driven Engineering ............................................ 40 3.4.1 Model Driven Engineering......................................................................................... 40 3.4.2 Model-Driven Architecture .......................................................................................