Liliana Martinez - Academia.edu (original) (raw)
Uploads
Papers by Liliana Martinez
International Journal of Interactive Multimedia and Artificial Intelligence, 2017
Software technology is constantly evolving and therefore the development of applications requires... more Software technology is constantly evolving and therefore the development of applications requires adapting software components and applications in order to be aligned to new paradigms such as Pervasive Computing, Cloud Computing and Internet of Things. In particular, many desktop software components need to be migrated to mobile technologies. This migration faces many challenges due to the proliferation of different mobile platforms. Developers usually make applications tailored for each type of device expending time and effort. As a result, new programming languages are emerging to integrate the native behaviors of the different platforms targeted in development projects. In this direction, the Haxe language allows writing mobile applications that target all major mobile platforms. Novel technical frameworks for information integration and tool interoperability such as Architecture-Driven Modernization (ADM) proposed by the Object Management Group (OMG) can help to manage a huge diversity of mobile technologies. The Architecture-Driven Modernization Task Force (ADMTF) was formed to create specifications and promote industry consensus on the modernization of existing applications. In this work, we propose a migration process from C/C++ software to different mobile platforms that integrates ADM standards with Haxe. We exemplify the different steps of the process with a simple case study, the migration of "the Set of Mandelbrot" C++ application. The proposal was validated in Eclipse Modeling Framework considering that some of its tools and run-time environments are aligned with ADM standards.
UML and the Unified Process
Encyclopedia of Information Science and Technology, Second Edition
The model driven architecture (MDA) is an initiative proposed by the object management group (OMG... more The model driven architecture (MDA) is an initiative proposed by the object management group (OMG), which is emerging as a technical framework to improve productivity, portability, interoperability, and maintenance (MDA, 2003). MDA promotes the use of models and model-to-model transformations for developing software systems. All artifacts, such as requirement specifications, architecture descriptions, design descriptions, and code are regarded as models. MDA distinguishes four main kinds of models: computation independent model (CIM), platform independent model (PIM), platform specific models (PSM), and implementation specific model (ISM). A CIM describes a system from the computation independent viewpoint that focuses on the environment of and the requirements for the system. In general, it is called domain model. A PIM is a model that contains no reference to the platforms that are used to realize it. A PSM describes a system with full knowledge of the final implementation platfor...
Advances and Applications in Model-Driven Engineering
Model-Driven Development (MDD) is an initiative proposed by the Object Management Group (OMG) to ... more Model-Driven Development (MDD) is an initiative proposed by the Object Management Group (OMG) to model centric software development. It is based on the concepts of models, metamodels, and automatic transformations. Models and metamodels are in constant evolution. Metamodel evolution may cause conforming models to become invalid. Therefore, models must be migrated to maintain conformance to their metamodels. Metamodel evolution and model migration are typically performed manually, which is an error-prone task. In light of this, the authors propose a framework for metamodel evolution and model migration that combine an operator-based approach with refactoring and specification matching techniques. They combine classical metamodeling techniques with formal specifications to reason about transformations, metamodels, and their evolution. The authors describe foundations for MDA-based metamodel evolution that allow extending the functionality of the existing CASE tools in order to improve...
Progressions and Innovations in Model-Driven Software Engineering
Modernization of legacy systems is a new research area in the software industry that is intended ... more Modernization of legacy systems is a new research area in the software industry that is intended to provide support for transforming an existing software system to a new one that satisfies new demands. Software modernization requires technical frameworks for information integration and tool interoperability that allow managing new platform technologies, design techniques, and processes. The new OMG (Object Management Group) initiative for modernization aligned with this requirement is Architecture-Driven Modernization (ADM). Reverse engineering techniques play a crucial role in system modernization. In this chapter, the authors describe the state-of-the-art in the model-driven modernization area, reverse engineering in particular, and discuss about existing tools and future trends. In addition, they describe a framework to reverse engineering models from object-oriented code that distinguishes three different abstraction levels linked to models, metamodels, and formal specifications...
Encyclopedia of Information Science and Technology, Third Edition
Emerging Technologies for the Evolution and Maintenance of Software Models
ABSTRACT System modernization requires the existence of technical frameworks for information inte... more ABSTRACT System modernization requires the existence of technical frameworks for information integration and tool interoperation that allow managing new platforms technologies, design techniques, and processes. The Model Driven Architecture (MDA) is aligned with this requirement. It is an evolving conceptual architecture to achieve cohesive model-driven technology specifications. MDA distinguishes the following models: Computation Independent Model (CIM), Platform Independent Model (PIM), and Platform Specific Model (PSM). The integration of classical reverse engineering techniques with the MDA initiative will play a crucial role in software system modernization. In light of these issues, this chapter describes a framework for MDA-based reverse engineering that integrates static and dynamic analysis, meta-modeling, and formal specification. The essential idea is to combine static and dynamic analysis to generate software models (PSM and PIM) from code, and to analyze the consistency of these transformations by using meta-modeling techniques and formal algebraic specification. The chapter shows how to use reverse engineering to create PSM and PIM (that are expressed in terms of UML models) from object oriented code. More specifically, the chapter emphasizes the bases of a reverse engineering approach and describes how to reverse engineer class diagram, state diagram, activity diagram, and use case diagram within the context of MDA initiative.
Encyclopedia of Information Science and Technology
The Unified Modeling Language (UML) has emerged as a modeling language for specifying, visualizin... more The Unified Modeling Language (UML) has emerged as a modeling language for specifying, visualizing, constructing, and documenting software-intensive systems. It unifies proven software modeling languages that incorporate the object-oriented community’s consensus on core modeling concepts. It also includes additional expressiveness to handle problems that previous visual languages did not fully address (Rumbaugh, Jacobson & Booch, 1999).
Lecture Notes in Computer Science, 2006
Abstract. The Model Driven Architecture (MDA) promotes the use of models and model transformation... more Abstract. The Model Driven Architecture (MDA) promotes the use of models and model transformations for developing software systems. The idea behind MDA is to manage the evolution from Platform Independent Models to Platform Specific Models that can be used to generate executable ...
Technology of Object-Oriented Languages and Systems, 2000
The authors propose a reuse based rigorous method using UML and algebraic specifications. Our con... more The authors propose a reuse based rigorous method using UML and algebraic specifications. Our contribution is towards an embedding of the object oriented code generation within a rigorous process that facilitates reuse, evolution and maintenance of the software. In previous work we described the GSBLOO language (L. Fevre and S. Clerici, 1999) to cope with the formalization of UML static
International Journal of Interactive Multimedia and Artificial Intelligence, 2017
Software technology is constantly evolving and therefore the development of applications requires... more Software technology is constantly evolving and therefore the development of applications requires adapting software components and applications in order to be aligned to new paradigms such as Pervasive Computing, Cloud Computing and Internet of Things. In particular, many desktop software components need to be migrated to mobile technologies. This migration faces many challenges due to the proliferation of different mobile platforms. Developers usually make applications tailored for each type of device expending time and effort. As a result, new programming languages are emerging to integrate the native behaviors of the different platforms targeted in development projects. In this direction, the Haxe language allows writing mobile applications that target all major mobile platforms. Novel technical frameworks for information integration and tool interoperability such as Architecture-Driven Modernization (ADM) proposed by the Object Management Group (OMG) can help to manage a huge diversity of mobile technologies. The Architecture-Driven Modernization Task Force (ADMTF) was formed to create specifications and promote industry consensus on the modernization of existing applications. In this work, we propose a migration process from C/C++ software to different mobile platforms that integrates ADM standards with Haxe. We exemplify the different steps of the process with a simple case study, the migration of "the Set of Mandelbrot" C++ application. The proposal was validated in Eclipse Modeling Framework considering that some of its tools and run-time environments are aligned with ADM standards.
UML and the Unified Process
Encyclopedia of Information Science and Technology, Second Edition
The model driven architecture (MDA) is an initiative proposed by the object management group (OMG... more The model driven architecture (MDA) is an initiative proposed by the object management group (OMG), which is emerging as a technical framework to improve productivity, portability, interoperability, and maintenance (MDA, 2003). MDA promotes the use of models and model-to-model transformations for developing software systems. All artifacts, such as requirement specifications, architecture descriptions, design descriptions, and code are regarded as models. MDA distinguishes four main kinds of models: computation independent model (CIM), platform independent model (PIM), platform specific models (PSM), and implementation specific model (ISM). A CIM describes a system from the computation independent viewpoint that focuses on the environment of and the requirements for the system. In general, it is called domain model. A PIM is a model that contains no reference to the platforms that are used to realize it. A PSM describes a system with full knowledge of the final implementation platfor...
Advances and Applications in Model-Driven Engineering
Model-Driven Development (MDD) is an initiative proposed by the Object Management Group (OMG) to ... more Model-Driven Development (MDD) is an initiative proposed by the Object Management Group (OMG) to model centric software development. It is based on the concepts of models, metamodels, and automatic transformations. Models and metamodels are in constant evolution. Metamodel evolution may cause conforming models to become invalid. Therefore, models must be migrated to maintain conformance to their metamodels. Metamodel evolution and model migration are typically performed manually, which is an error-prone task. In light of this, the authors propose a framework for metamodel evolution and model migration that combine an operator-based approach with refactoring and specification matching techniques. They combine classical metamodeling techniques with formal specifications to reason about transformations, metamodels, and their evolution. The authors describe foundations for MDA-based metamodel evolution that allow extending the functionality of the existing CASE tools in order to improve...
Progressions and Innovations in Model-Driven Software Engineering
Modernization of legacy systems is a new research area in the software industry that is intended ... more Modernization of legacy systems is a new research area in the software industry that is intended to provide support for transforming an existing software system to a new one that satisfies new demands. Software modernization requires technical frameworks for information integration and tool interoperability that allow managing new platform technologies, design techniques, and processes. The new OMG (Object Management Group) initiative for modernization aligned with this requirement is Architecture-Driven Modernization (ADM). Reverse engineering techniques play a crucial role in system modernization. In this chapter, the authors describe the state-of-the-art in the model-driven modernization area, reverse engineering in particular, and discuss about existing tools and future trends. In addition, they describe a framework to reverse engineering models from object-oriented code that distinguishes three different abstraction levels linked to models, metamodels, and formal specifications...
Encyclopedia of Information Science and Technology, Third Edition
Emerging Technologies for the Evolution and Maintenance of Software Models
ABSTRACT System modernization requires the existence of technical frameworks for information inte... more ABSTRACT System modernization requires the existence of technical frameworks for information integration and tool interoperation that allow managing new platforms technologies, design techniques, and processes. The Model Driven Architecture (MDA) is aligned with this requirement. It is an evolving conceptual architecture to achieve cohesive model-driven technology specifications. MDA distinguishes the following models: Computation Independent Model (CIM), Platform Independent Model (PIM), and Platform Specific Model (PSM). The integration of classical reverse engineering techniques with the MDA initiative will play a crucial role in software system modernization. In light of these issues, this chapter describes a framework for MDA-based reverse engineering that integrates static and dynamic analysis, meta-modeling, and formal specification. The essential idea is to combine static and dynamic analysis to generate software models (PSM and PIM) from code, and to analyze the consistency of these transformations by using meta-modeling techniques and formal algebraic specification. The chapter shows how to use reverse engineering to create PSM and PIM (that are expressed in terms of UML models) from object oriented code. More specifically, the chapter emphasizes the bases of a reverse engineering approach and describes how to reverse engineer class diagram, state diagram, activity diagram, and use case diagram within the context of MDA initiative.
Encyclopedia of Information Science and Technology
The Unified Modeling Language (UML) has emerged as a modeling language for specifying, visualizin... more The Unified Modeling Language (UML) has emerged as a modeling language for specifying, visualizing, constructing, and documenting software-intensive systems. It unifies proven software modeling languages that incorporate the object-oriented community’s consensus on core modeling concepts. It also includes additional expressiveness to handle problems that previous visual languages did not fully address (Rumbaugh, Jacobson & Booch, 1999).
Lecture Notes in Computer Science, 2006
Abstract. The Model Driven Architecture (MDA) promotes the use of models and model transformation... more Abstract. The Model Driven Architecture (MDA) promotes the use of models and model transformations for developing software systems. The idea behind MDA is to manage the evolution from Platform Independent Models to Platform Specific Models that can be used to generate executable ...
Technology of Object-Oriented Languages and Systems, 2000
The authors propose a reuse based rigorous method using UML and algebraic specifications. Our con... more The authors propose a reuse based rigorous method using UML and algebraic specifications. Our contribution is towards an embedding of the object oriented code generation within a rigorous process that facilitates reuse, evolution and maintenance of the software. In previous work we described the GSBLOO language (L. Fevre and S. Clerici, 1999) to cope with the formalization of UML static