Un marco de trabajo de una fábrica de software para el reuso del diseño arquitectónico y de componentes de software

A software factory framework for the reuse of architectural designs and software components

Palabras clave: desarrollo basado en componentes, desarrollo dirigido por modelos, arquitecturas de software, fábrica de software

Resumen

A diferencia de otras áreas de ingeniería, el nivel de reuso en la ingeniería de software es muy bajo. Los sistemas orientados a objetos fallaron en su promesa para crear un mercado de librería de clases. La tecnología de componentes de software está emergiendo como una aproximación que promete alcanzar el nivel de reuso que los sistemas orientados a objetos no pudieron alcanzar. Las plataformas actuales de componentes EJB, COM, .NET y CCM han sido exitosas para lograr ensamblar componentes de software. Sin embargo, en la práctica actual el ensamble de componentes de software es una tarea compleja. Más aún, un diseño realizado para un modelo de componentes, por ejemplo EJB, no puede ser reusado para los otros estándares. El paradigma llamado fábricas de software surge como una alternativa para solucionar esta problemática. Una fábrica de software básicamente involucra el reuso sistemático de recursos como son los requerimientos, diseño arquitectónico, software, y la experiencia de la gente entre otros. Aquí se presenta un marco de trabajo de una fábrica de software, mismo que se enfoca en incrementar el nivel de reuso en dos dimensiones: diseño arquitectónico y componentes de software. Se ilustra la propuesta a través de un caso de estudio para los modelos de componentes de EJB y COM.

DOI: https://doi.org/10.54167/tecnociencia.v2i1.66

Citas

Anjomshoaa, A., F. Brisard, M. Drescher, D. Fellows, A. Ly, S. McGough, D. Pulsipher & A. Savva. 2005. Job Submission Description Language (JSDL) Specification, Version 1.0. GFD-R. 056. Global Grid Forum (2003-2005). https://ogf.org/documents/GFD.56.pdf

Bass, L.J., P. C. Clements & R. Kazman. 1997. Software Architecture in Practice. First Edition. SEI series in software engineering. Pearson Education. ISBN 0201199300, 9780201199307.

Blair, G. & J.B. Stefani. 1997. Open Distributed Processing and Multimedia. Addison-Wesley Professional. ISBN 0201177943, 9780201177947.

Duran-Limón, H.A. 2006. Multilevel Modeling Software Development. En Electronics, Robotics and Automotive Mechanics Conference (CERMA ´06) (pp. 263-267). Cuernavaca, México. https://doi.org/10.1109/CERMA.2006.66

Duran-Limon H. A. & G. S. Blair. 2004. QoS Management Specification Support for Multimedia Middleware. Journal of Systems and Software 72(1):1-23. https://doi.org/10.1016/S0164-1212(03)00016-5

Eclipse Foundation. Eclipse Graphical Editing Framework (GEF). https://projects.eclipse.org/projects/tools.gef

Eclipse Foundation. ECLIPSE IDE. https://www.eclipse.org/ide/

Greenfield, J. & K. Short. 2003. Software Factories: Assembling Applications with Patterns, Models, Frameworks and Tools. En OOPSLA´03: Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications (pp-16-27). ISBN 9781581137514. https://doi.org/10.1145/949344.949348

Institute of Electrical and Electronics Engineers. 2000. IEEE Recommended Practice for Architectural Description of Software –Intensive Systems. En IEEE-Std-1471 – 2000. https://doi.org/10.1109/ieeestd.2000.91944

Magee, J., N. Dulay, S. Eisenbach & J. Kramer. 1995. Specifying Distributed Software Architectures. En Software Engineering-ESEC´95. Lecture notes in Computer Science Vol. 989. Springer. ISBN 9783540455523. https://doi.org/10.1007/3-540-60406-5_12

Medvidović, N. & R. N. Taylor. 2000. A Classification and Comparison Framework for Software Architecture Description Languages. En IEEE Transactions on Software Engineering 26(1):70-93. https://doi.org/10.1109/32.825767

Microsoft Corporation. 2007a. COM: Delivering on the Promises of Component Technology. Microsoft Corporation.

Microsoft Corporation. 2007b. NET Development. Microsoft Corporation.

Object Management Group. 1999. CORBA 3.0 New Components chapters. CCM FTF Draft ptc/99-10-04.

Object Management Group. 2001. Common Object Request Broker: Architecture and Specification - Revision 2.4.2 (CORBA v2.4.2).” https://www.omg.org/spec/CORBA/2.4.2

Rumbaugh, J., I. Jacobson & G. Booch. 1999.The Unified Modelling Language Reference Manual. Addison Wesley Longman, Inc. ISBN 020130998X. https://people.ucalgary.ca/~far/Lectures/SENG609-23/PDF/uml_refman.pdf

Selic, B. 2006.Model-Driven Development: Its Essence and Opportunities. En Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC´06). http://dx.doi.org/10.1109/ISORC.2006.54

Shaw, M. & D. Garlan. 1996. Software Architecture: Perspectives on an Emerging Discipline. Pearson. ISBN 9780131829572, 9780131829572

Spanias, A. S. Speech coding: a tutorial review. 1994. Proceedings of the IEEE 82(10): 1541-1582. https://doi.org/10.1109/5.326413

Sun Microsystems. 2007. Sun Java System Application Server and Enterprise JavaBeans Technology. Sun Microsystems. https://docs.oracle.com/cd/E19644-01/817-5049/deover.html

Szyperski, C. 2002. Component Software: Beyond Object-Oriented Programming. Second Edition. Adison-Wesley Professional. ISBN 032175302X, 9780321753021

World Wide Web Consortium. 2001. XML Schema: Formal Description. W3C Working Draft. http://www.w3.org/TR/xmlschema-formal/

World Wide Web Consortium. 2007. Web Services Description Language (WSDL). https://www.w3.org/TR/2007/REC-wsdl20-20070626/

Publicado
2018-11-14
Cómo citar
Durán-Limón, H. A., Meda-Campaña, M. E., Sapién-Aguilar, A. L., & Piñon-Howlet, L. C. (2018). Un marco de trabajo de una fábrica de software para el reuso del diseño arquitectónico y de componentes de software: A software factory framework for the reuse of architectural designs and software components. TECNOCIENCIA Chihuahua, 2(1), 15-31. https://doi.org/10.54167/tecnociencia.v2i1.66