Published 2012-10-09
How to Cite
Abstract
RESUMEN ANALÍTICO
La construcción de software está lejos de ser una tarea sencilla, sobre todo si su complejidad es alta. Esta tarea exige un alto compromiso del equipo de desarrollo, recursos costosos, especialistas altamente cualificados y procesos y métodos cada vez más formales. Con el propósito de agilizar este proceso, surgió un movimiento centrado en el uso de modelos en diferentes niveles de abstracción. Las principales propuestas en este sentido son la Arquitectura Dirigida por Modelos y el Desarrollo de Software Dirigido por Modelos (MDA y MDSD, por sus siglas en ingles). En este artículo se hace una revisión de la literatura a cerca de estas dos propuestas. Describe sus principios fundamentales, el trabajo orientado a conformar la fundamentación teórica de las dos propuestas y las principales herramientas que implementan el desarrollo conducido por modelos. Este trabajo se realiza en el marco del proyecto de investigación “Construcción de un proceso de desarrollo de software con base en MDA y MDSD”, concretamente contribuye a establecer el trabajo de investigación realizado por la comunidad internacional y los fundamentos teóricos y conceptuales que subyacen a las dos propuestas.
PALABRAS CLAVES: Arquitectura Guiada por Modelos, Desarrollo de Software Guiado por Modelos, Modelo Independiente de Plataforma, Modelo Independiente de la Computación, Transformaciones entre modelos, Herramientas MDSD
A VIEW OF SOFTWARE DEVELOMENT USING MODELS
ANALYTICAL SUMMARY
Building software is not an easy task, especially if its complexity is high. This task requires a high commitment to the development team, expensive resources, highly qualified specialists and increasingly formal methods and processes. In order to expedite this process, a movement focused on the use of models in different abstraction levels has emerged. The main proposals in this regard are Model Driven Architecture (MDA) and Model Driven Software Development (MDSD). This paper is a review of the literature about those two proposals. It describes its fundamental principles, work oriented to form its theoretical basis and the main tools that implement the model-driven development. This work is performed under the research project “Construction of a software development process based on MDA and MDSD”, specifically contributes to establishing the research work done by the international community and the theoretical and conceptual underpinning the two proposals.
KEYWORDS: Model Driven Architecture MDA, Model Driven Software Development MDSD, Platform Independent Model PIM, Computation Independent Model CIM, Transformations between Models MDSD tools
Downloads
References
- FRANKEL, David. Model Driven Architecture – Applying MDA to Enterprise Computing. USA: Wiley Publishing, Inc. 2003.
- LAUDON, Kennet and LAUDON, Jane. Sistemas de información Gerencial: Administración de la Empresa Digital. Pearson Ed. 2008.
- ER 2010 Workshops ACM-L, CMLSA, CMS, FPUML, SeCoGis, WISM. Advances in Conceptual Modeling Aplications and Challenges. Vancouver, Canada, 2010.
- OMG Object Management Group. Unified Modeling Language, Infrastructure. Version 2.4.1. Standard document, 2011 (en línea). http://www.omg.org/ spec/UML/2.4.1/Infrastructure.
- FAVRE, Liliana. Model Driven Architecture for Technologies. DOI: 10.4018/978-1-61520-649-0. ch001. Argentina, 2010.
- FRANCE, Robert y RUMPE, Bernhard. Model Driven Devepment of Complex Software: A Research Road Map. Proceeding FOSE’07 2007 Future of Software Engineering. Doi 10.1109/FOSE.207-14. Washington: IEEE Computer Society, 2007.
- [02] HECKEL, Oscar y LOHMANN, Marc. Towards Model Driven Testing. Elseiver – Electronics Notes in Theoretical Computer Science. Germany: Elsevier, 2011 (en línea). (http://www.sciencedirect.com/ science/article/pii/S1571066104810235)
- PASTOR, Oscar y otros. Model-DrivenDevelopment. En Springer Verlag Computer Science - Informatik-Spektrum, Vol. 31, No. 5, p. 394-407. Berlín, 2008.
- FREED, Leonard. The History of Computers. ZiffDavis Press, Emeryville (Ca), 1995.
- BECK, Leland. System Software: An Introduction to Systems Programming. Addison Wesley, 1996.
- YANG, Hongji y WARD, Martin. Successful evolution of Software System. Architect House Computing library. Library of Congress Catalogingin-Publication Data. 2003.
- SHAMMAS, Namir. Introducing C to Pascal Programmers. Ed. Wiley, 1988.
- HERSUM, P. y SIMS O. Business Component Factory: A Comprehensive Overview of Component Based Development for the Enterprise. New York: John Wiley & Sons, 2000.
- EELES, Peter y CRIPPS, Peter. The Process of Software Architecting. USA: Addison-Wesley. 2009.
- BUSCHMANN, Frank; HENNEY, Kevlin y SCHMIDT, Douglas C. Pattern-Oriented Software Architecture, Volume 4: A Pattern Language for Distributed Computing. New York: John Wiley & Sons. 2007.
- TANEMBAUM, Andre W. y VAN STEEN, Maarten. Distributed Systems: Principles and Paradigms. USA: Pearson Prentice Hall. 2007.
- Deepak. ALUR, John. CRUPI, and Dan. MALKS, Core J2EE Patterns: Best Practices and Design Strategies, Sun Microsystems Press, 2001.
- Wolfgang. EMMERICH, Mikio. AOYAMA, J. SVENTEK. The impact of research on middleware technology. ACM SIGSOFT Software Engineering Notes, Vol. 32, No. 1, 2007.
- GRAY, Jim y REUTER, Andreas. Transaction Processing: Concepts and Techniques. Morgan Kaufmann, 1993.
- MANJARRÉS, Roberto A. Generación de la Especificación Declarativa a Partir de la Especificación Gráfica de un Metamodelo. Tesis de Grado Maestría en Ingeniería de Sistemas. Medellín: Universidad Nacional de Colombia, 2010.
- ROSS, Jeanne; WEILL, Peter; ROBERTSON, David. Enterprise architecture as strategy: creating a foundation for business execution. Harvard Business Scholl Press, 2010.
- MENTZAS, Gregoris y FRIESEN, Andreas. Semantic Enterprise Application Integration for business processes. Service-Oriented Frameworks. USA: Business Science Reference IGI Global. 2010.
- DIJKSTRA, Edsger. A Discipline of Programming. USA: Prentice Hall, Inc. 1976.
- MEYER, Bertrand. Touch of Class: Learning to Program Well with Objects and Contracts. Berlín: Springer, 2009.
- MELLOR, Stephen; CLARK, Anthony and FUTAGAMI, Takao. Model-driven development – Guest editor’s introduction. En Revista IEEE Software, Vol. 20 No. 5, p. 14-18, SeptiembreOctubre 2003.
- SELIC, Bran. The Pragmatics of Model-Driven Development. En Revista IEEE Software, Vol. 20 No. 5, p. 46-51, Septiembre-Octubre 2003.
- FRANK, Karl y otros. Reaching Toward MDA. OMG White Paper, 2008 (en línea). http://www.omg. org
- DIRK, Theo; PETTERSEN, Jan; PRINZ, Andreas y WORTMANN, Hans. Supporting fine-grained generative model driven evolution. Regular Paper, 2010 (en línea). http://www.springerlink.com.
- OMG Object Management Group. Model-Driven Architecture Home Page, 2011 (en línea). http:// www.omg.org/mda/index.htm
- POOLE, John. Model-Driven Architecture: Vision, Standards and Emerging Technologies, 2001 (en línea). http://www.cwmforum.org/ModelDriven+Architecture.pdf
- MILLER, Frederic; VANDOME, Agnes. Common Warehouse Metamodel CWM. VDM Verlag, Alphascript Publishing, 2010.
- CWMFORUM. What is the Common Warehouse Metamodel CWM, 2011 (en línea). http://www. cwmforum.org/about.htm
- KIMBALL, Ralph y ROSS, Margy. Model-Driven Data Warehousing. New York: John Wiley & Sons Inc. 2011. [34] BARRY, Douglas K. Common Warehouse Metamodel CWM, 2011 (en línea). http://www. service-architecture.com/web-services/articles/ common_warehouse_meta-model_cwm.html
- POOLE, John; CHANG, Dan; TOLBERT, Douglas y MELLOR, David. Common Warehouse Metamodel Developer’s Guide. New York: John Wiley & Sons Inc. 2008.
- OMG. Common Warehouse Metamodel CWM Specification. Versión 1.1. Volumen 1, 2003 (en línea). http://www.omg.org/spec/CWM/1.1/PDF
- POOLE, John; CHANG, Dan; TOLBERT, Douglas y MELLOR, David. Common Warehouse Metamodel. An Introduction to the Standard for Data Warehouse Integration. New York: John Wiley & Sons Inc. 2002.
- CHANG, Daniel T. y POOLE John D. CWMExtending UML for Data Warehousing and Business Intelligence, 2000 (en línea). http://xml. coverpages.org/CWM-UMLDWBI.pdf
- OMG. CWM Metadata Interchange Patterns Specification, 2004 (en línea). http://www.omg. org/spec/MIPS/1.0/PDF
- BROWN, Alan; CONALLEN, Jim y TROPEANO, Dave. Introduction: Models, Modeling, and ModelDriven Architecture (MDA). En: BEYDEDA, Sami, BOOK, Matthias y GRUHN, Volker. Model-Driven Software Development. Berlín: Springer Verlag, 2005. p. 1-16.
- DEBNATH, N. y otros. Improving Model Driven Architecture with Requirements Models. IEEE Fifth International Conference on Information Technology: New Generations. 2008.
- GREEN, Rebecca; PEARL, Lisa; DOOR, Bonnie y RESNIK, Philip. Lexical resource integration across the syntax semantics interface. Institute for Advanced Computer Studies. Department of Computer Science. College of Information Studies. University of Maryland. 2001.
- STAHL, T. y VOLTER, M. Model-Driven Software Development. Technology, Engineering, Management. Willey publications. 2006.
- METZGER, Andreas. A systematic look at Model Transformation. En: BEYDEDA, Sami, BOOK, Matthias y GRUHN, Volker. Model-Driven Software Development. Berlín: Springer Verlag, 2005. p. 19-33.
- ZHU, Hong y SHAN, Lijun. The CAMLE Modeling Language and Automated Tools. En: BEYDEDA, Sami, BOOK, Matthias y GRUHN, Volker. ModelDriven Software Development. Berlín: Springer Verlag, 2005. p. 57-89.
- GRUNSKE, Lars y otros. Using Graph Transformation for Practical Model-Driven Software Engineering. En: BEYDEDA, Sami, BOOK, Matthias y GRUHN, Volker. Model-Driven Software Development. Berlín: Springer Verlag, 2005. p. 91-117.
- ATKINSON, Colin y KUHNE, Thomas. A Generalized Notion of Platforms for ModelDriven Development. En: BEYDEDA, Sami, BOOK, Matthias y GRUHN, Volker. Model-Driven Software Development. Berlín: Springer Verlag, 2005. p. 119-136.
- JURGENS, Jan. y SHABALIN, Pasha. Tool Support for Model-Driven Development of SecurityCritical Systems with UML. En: BEYDEDA, Sami, BOOK, Matthias y GRUHN, Volker. Model-Driven Software Development. Berlín: Springer Verlag, 2005. p. 35-55.
- HAMMOUDA, Imed. A Tool Infrastructure for Model-Driven Development Using Aspectual Patterns. En: BEYDEDA, Sami, BOOK, Matthias y GRUHN, Volker. Model-Driven Software Development. Berlín: Springer Verlag, 2005. p. 139-177.
- ZHANG, Jing; LIN, Yuehua y GRAY, Jeff. Generic and Domain-Specific Model Refactoring Using a Model Transformation Engine. En: BEYDEDA, Sami, BOOK, Matthias y GRUHN, Volker. ModelDriven Software Development. Berlín: Springer Verlag, 2005. p. 199-217.
- EGYED, Alexander. Automatically Discovering Transitive Relationships in Class Diagrams. En: BEYDEDA, Sami, BOOK, Matthias y GRUHN, Volker. Model-Driven Software Development. Berlín: Springer Verlag, 2005. p. 179-198.
- LIN, Yuehua; ZHANG, Jing y GRAY, Jeff. A Testing Framework for Model Transformations. En: BEYDEDA, Sami, BOOK, Matthias y GRUHN, Volker. Model-Driven Software Development. Berlín: Springer Verlag, 2005. p. 219-235.
- SILAGHI, Raul y STROHMEIER, Alfred. Parallax - An Aspect-Enabled Framework for Plug-inBased MDA Refinements Towards Middleware. En: BEYDEDA, Sami, BOOK, Matthias y GRUHN, Volker. Model-Driven Software Development. Berlín: Springer Verlag, 2005. p. 237-267.