TICSw

Tecnologías de Información y Construcción de Software

Edificio Mario Laserna - Vista externa
Campus Edificio Mario Laserna
Edificio Mario Laserna - Vista interna
Plaza de Aprendizaje -Edificio Mario Laserna
Salones - Edificio Mario Laserna

CARAMELOS Collaborative Action Research on Agile Methodologies for Enterprises in the Little, adhering to the Open Source

CARAMELOS

Objectives:

Our general academic objective is to consolidate the Ph.D. program in software engineering at Universidad de los Andes. This encompasses the establishment of a solid doctoral school, with a sound scientific basis and well-defined research lines, and with the appropriate infrastructure and resources to support the research team (professors, doctoral students and eventually post-docs). After having gained enough momentum by producing high-quality results, the Ph.D. program in software engineering should get fair local and international recognition. In the end, UNIANDES will have an established research tradition and expertise on the field of software engineering.

As mentioned above, a strong Ph.D. program on the specific field of software engineering is sought after. Strengthening the research capacity of the Department of Computing and Systems Engineering will have a positive, long-term impact on Colombian economy by feeding knowledge and innovative techniques into the software production sector. This constitutes the strategy to remedy the current ill situation where these companies are not competitive. The knowledge produced by means of applied research on software engineering, having been successfully transferred to small companies, will help them producing software more efficiently and with high quality standards. This is our general developmental objective. The promotion of the software production sector will help diversifying Colombian economy.

A final general objective is for the (consolidated) Ph.D. program at UNIANDES to help supplying the demand for high-level professors on software engineering at other universities in the country. Without high-quality teaching at universities all over the country, the average software engineer will not be well prepared and this will hamper again the development of the software sector.

CARAMELOS - a Collaborative Action Research on Agile Methodologies for Enterprises in the Little, adherig to the Open Source principle

Contact

 Rubby Casallas

Email

 rcasalla

Status

 Inactive

 Conference papers Undergraduate projects

  • Construction of operators for model management in the context of model-driven software development.

Graduate Thesis

  • Including variability issues in the process of enriching tool support for model-driven software development.

Former Members
  • Prof. Dr. Theo D'Hondt
  • Dr. Dirk Deridder
  • Linda Dasseville
  • Jorge Vallejos
  • Sebastian Gonzalez
  • Dr. Rubby Casallas
  • Dr. Jorge Villalobos
  • Mario Eduardo Sánchez Puccini
  • Andres Yie Garzón
  • Oscar Fernando Gonzalez Rojas

 

Enriching Tool Support for Model-driven Software Development

MegaTools - Megamodel-based tools for model-driven engineers

Objectives:

Model-driven software development (MDSD) is a promising approach that proposes to use models not only as documentation artifacts but also as first class entities. In a typical model-driven software development process, one can find at least two stakeholders, the model-driven engineer and the modeler. The former is responsible for building the tools to manipulate (create, edit, compile) concrete models whereas the latter is the one that uses these tools to model problems and generate the corresponding solutions.

Commonly, the interaction between the modeler and the model-driven engineer is as presented in figure 1. At the beginning, the modeler provides an initial model that represents a specific problem in a specific domain. This model is taken as an input of a model-driven solution that, across a set of operations, produces a platform-specific solution. The solution can be either another model or the code of an application. What is important is that the solution satisfies the initial requirements of the modeler.

Figure 1. A typical model-driven software development process

Notice that the benefits of this kind of approaches are proven in terms of the improvement of the modeler's productivity. It is a fact that the time that a modeler expends during the development process is greatly reduced. However, the development of a model-driven solution is not a trivial task. It requires specialized knowledge and specific skills by part of the model-driven engineer.

Unfortunately, the current tool support for model-driven engineers is lagging behind since the integrated development environments (IDEs) still being focused on code-centric technologies. In other words, the IDEs are designed and implemented to facilitate the manipulation of code and, in the case of model-driven technologies, models are not treated as real first-class entities but as data files in code-projects. As a result, model-driven engineer has to overcome several changes during the development process that seriously impact his/her productivity.

The complexity behind the development of models-centric IDEs is that the requirements of this kind of tools are quite variable. New types of models appear frequently and new operations are needed. As a result, it is not a practical idea to create a well-engineered IDE that satisfies the requirements of model-driven engineers. Instead of that, what it is common to find is a set of customized integrated development environment focused on a specific model-driven engineer.

The global contribution of this project is to provide a domain-specific language, called MoMs, that allows describing the tooling required for a particular model-driven engineer. Then, we provide a generation mechanism that generates the corresponding eclipse extensions that offer the required functionality.

In this context, the support for software evolution is quite important. A well-engineered IDE for software development would have to take this issue into account. As a result, some part of our work has been focused on the understanding of the evolution of development artifacts of model-driven software development.

Main results

Until now, we have an initial implementation of MoMS language and a generation process that creates basic functionality for model-driven engineers. Besides, we have a tools deposit that contains some essential operators for model management.

Enriching Tool Support for Model-driven Software Development MegaTools - Megamodel-based tools for model-driven engineers

Contact

Rubby Casallas
David Méndez Acuña

Email

rcasalla
df.mendez73

Status

 Active

 Undergraduate projects

  • Construction of operators for model management in the context of model-driven software development.

Graduate Thesis

  • Including variability issues in the process of enriching tool support for model-driven software development.

Current Members
  • Rubby Casallas
  • David Méndez Acuña
  • Jaime Chavarriaga
  • Camilo Alvarez
  • Hugo Arboleda
  • Andres Paz
Former Members
  • Ivan Mauricio Sánchez
  • Willy Montes
  • Rafael Meneses

 

Model-driven Simulation Games Development

MAGES MAnagement GamE Simulator

Objectives:

The Business Faculty at Universidad de los Andes offers a course where students simulate a real business environment in which corporations compete in the same industry to increase market shares and shareholder equity. In this course, called Management Game, students form corporative groups and take business decisions that have an impact on their financial and/or operative state. The main goal of those decisions is to increase their market shares.

As shown in figure 1, the stakeholders of the management game are: (1) the professor and (2) the student. The professor configures a business environment whereas the student takes the decisions that he/she considers appropriate for increasing the market shares of his/her company. The main goal of this project is to provide a tool that enables to simulate the decisions taken by the student in the business environment configured by the professor.

Figure 1. MAGES Overview

Main results

The main result we achieved in this project corresponds to a core a simulation engine that can interpret the definition of decisions to execute the instances of decisions that each corporative group makes by (1) receiving as input some basic decision parameters, (2) recollecting data from the business environment, (3) processing formulas with the parameters and the data recollected, and finally (4) generating the effects on financial states (modify the amount of money in an account) and on operative states (create, modify or delete the “ownership” of an item).

The MAGES System also offers a web based interface for the professor to define the business environment parameters, advance the periods in the game, execute  the simulation  (and roll it back several times in case he is not satisfied with the results) and view reports on the state of the corporative groups. It also has a web based interface for the students to manage their corporative groups, take decisions and view reports of the state of their groups.

Model-driven Simulation Games Development MAGES - MAnagement GamE Simulator

Contact

 Rubby Casallas
 David Méndez Acuña

Email

 rcasalla
 df.mendez73

Status

 Inactive

Former Members
  • Rubby Casallas
  • Rafael Meneses
  • Edwin Tellez
  • Daniel Tovar
  • Jesús Vargas