Presentación del Método KDDP para la creación de Software de Investigación
DOI:
https://doi.org/10.61144/0718-9397.2017.145Resumen
Se presenta el concepto de desarrollo de software de investigación. Se caracterizan sus dificultades y se propone un método formal llamado KDDP (Knowledge Discovery-Driven Process) como solución. Basado en el Modelo de la Espiral para gestionar el desarrollo de software dentro de una investigación que se esté llevando a cabo y soluciona la problemática del aumento de productividad de los equipos de desarrollo de software de investigación. Se utiliza el Diálogo de Bohm (descrito por el mismo autor en el año 1997 como una herramienta que destaca la primacía de la cooperación por sobre la competencia, factor fundamental para mejorar la productividad) para hacer circular el significado y compartir el conocimiento generado. Se insiste en que la realización del diálogo como apoyo a la circulación del conocimiento sea efectuado suspendiendo los juicios, compartiendo la visión de los participantes y respetando los planteamientos de cada uno de ellos. Este planteamiento se completa con la aplicación de “las cuatro movidas de Kantor”, corresponden a: mover, oponer, observar y seguir las opiniones de los participantes. Cabe destacar que el método utiliza un conjunto de herramientas: reuniones diarias de coordinación de 15 minutos “de pie”, una Wiki para registrar los compromisos del equipo de investigación, un generador automático de documentación de código, un sistema de control de versiones y una “Matriz de Trazabilidad” para registrar las aplicaciones ejecutadas junto con los datos utilizados a fin de llevar un registro claro de la evolución del software que se ha construido para la investigación.Citas
Abramson, David; Bethwaite, Blair; Enticott, Colin; Garic, Slavisa & Peachey, Tom (2011). Parameter Exploration in Science and Engineering Using Many-Task Computing. IEEE Transactions on Parallel and Distributed Systems, Vol. 22, No. 6, June.
Angelov, C.; Melnik, R. V. N. & Buur J. (2004). The synergistic integration of mathematics, software engineering, and user-centred design: exploring new trends in education. Future Generation Computer Systems, Volume 19, Issue 8, December
Antillanca Espina, Héctor & Cerda Neumann, Gerardo (2012). Desarrollo de Software Científico. IWASE’ 2012, Jornadas Chilenas de Computación, Valparaíso, Chile, Noviembre (paper)
Antillanca Espina, Héctor & Cerda Neumann, Gerardo (2011). Aplicación de Método para el Desarrollo de Software de Investigación. Jornadas Chilenas de Computación, Curicó, Chile, Noviembre (paper)
Antillanca Espina, Héctor & Cerda Neumann, Gerardo (2010). Propuesta Metodológica para el Desarrollo de Software de Investigación. INFONOR, Antofagasta, Chile, Noviembre (paper)
Arriagada Mena, Marcos & Cerda Neumann, Gerardo (2012). Desarrollo de herramienta CASE para el uso de Metodología KDDP. Santiago de Chile: Universidad UCINF, Trabajo de Titulación presentado en conformidad a los requisitos para obtener el Título de Ingeniero de Ejecución en Informática.
Basili, Victor R.; Cruzas, Daniela; Carver, Jeffrey C.; Hochstein, Lorin M.; Hollingsworth, Jeffrey K.; Zelkowitz, Marvin V. & Shull, Forrest (2008). Understanding the High-Performance-Computing Community: A Software Engineer’s Perspective, IEEE Software, July/August.
Boehm, Barry W. (1988), A Spiral Model of Software Development and Enhancement. Computer, May.
Bohm, David, Sobre el diálogo (1997). Barcelona, España: Kairós.
Borgman, Christine L.; Wallis, Jillian C. & Mayernik, Matthew S. (2012). Who’s Got the Data? Interdependencies in Science and Technology Collaborations, Computer Supported Cooperative Work, 21
Brooks, Frederick P. Jr. (1986), No silver bullets – Essence and Accident in Software Engineering, Proceedings of the IFIP Tenth World Computing Conference.
Canales, Cerón, Coordinador – editor, Metodologías de investigación social: introducción a los oficios (2006). Santiago, Chile: LOM.
Dall’Osso, Aldo (2003). Using computer algebra systems in the development of scientific computer codes, Future Generation Computer Systems, 19
Dawn, Gregg (2009). Developing a collective intelligence application for special education, Decision Support Systems, November, Volume 47, Issue 4
De Roure, David (2009). Software Design for Empowering Scientists, IEEE Software, 88 – 95.
Dhaliwal, Jasbir; Onita Colin, Gabriel; Poston, Robin & Zhang, Xihui Paul (2011). Alignment within the software development unit: Assessing structural and relational dimensions between developers and testers, The Journal of Strategic Information Systems, December, Volume 20, Issue 4, Pages 323 - 342
Diky, Vladimir; Chirico, Robert D.; Kazakov, Andrei F.; Muzny, Chris D.; Magee, Joseph W.; Abdulagatov, Ilmutdin; Kang, Jeong Won; Kroenlein,
Kenneth & Frenkel, Michael (2010). ThermoData Engine (TDE): Software Implementation of the Dynamic Data Evaluation Concept. Experiment Planning and Product Design, December, J. Chem. Inf. Model, 51
Dongarra, Jack; Beckman, Pete; Aerts, Patrick; Cappello, Frank; Lippert,
Thomas; Matsuoka, Satoshi; Messina, Paul; Moore, Terry; Stevens, Rick;
Trefethen, Anne & Valero, Mateo (2009). The International Exascale Software Project: a Call To Cooperative Action By the Global High-Performance Community, International Journal of High Performance Computing Applications, October.
Fogli, Daniela & Parasiliti, Provenza Loredana (2011). A meta-design approach to the development of e-government services, Journal of Visual Languages and Computing, November, 23, Issue 2
Howcroft, Debra & Wilson Melanie (2003). Paradoxes of participatory practices: the Janus role of the systems developer, Original Research Article Information and Organization, January, Volume 13, Issue 1, Pages 1-24
Howison, James & Herbsleb, James D. (2011). Scientific Software Production: Incentives and Collaboration, CSCW, March, Hangzhou, China
Isaacs, W. (1999). Dialogue: The Art Of Thinking Together, Broadway Business, 1 edition.
Kelly, Diane & Smith, Spencer (2010). 3rd CASCON Workshop on Software Engineering for Science, Workshop on Software Engineering for Science
Ko, Andrew J.; Abraham, Robin; Beckwith, Laura; Blackwell, Alan; Burnett, Margaret; Erwig, Martin; Scaffidi, Chris; Lawrance, Joseph; Lieberman, Henry; Myers, Brad; Rosson, Mary Beth; Rothermel, Gregg; Shaw, Mary & Wiedenbeck, Susan (2011). The State of the Art in End-User Software Engineering, ACM Computing Surveys, April, Vol. 43, No. 3
Kurzak, Jakub; Tomov, Stanimire & Dongarra, Jack (2012). Autotuning GEMM Kernels for the Fermi GPU, IEEE Transactions on Parallel and Distributed Systems, November, Vol. 23, No. 11
Leiva-Lobos, Edmundo; Antillanca, Héctor & Ponce Héctor (2008). Un marco sistémico para orientar el diseño de artefactos del diálogo, Revista Convergencia, año 15, número 47, México, páginas 11 – 37, 2008.
Li, Yang (2011). Reengineering a Scientific Software and Lessons Learned, ICSE ’11, May, Waikiki, Honolulu, HI, US.
Ltaief, Hatem; Kurzak, Jakub & Dongarra, Jack (2010). Parallel Two-Sided Matrix Reduction to Band Bidiagonal Form on Multicore Architectures, IEEE Transactions on Parallel and Distributed Systems, April, Vol. 21, No. 4
Macías, José A. & Castells, Pablo (2007). Providing end-user facilities to simplify ontology-driven web application authoring, Interacting with Computers.
Mollá, Diego & Vicedo, José Luis (2006). Question Answering in Restricted Domains: An Overview, Computational Linguistics, October, Volume 33, Number 1
Morris, Chris & Segal, Judith (2012). Lessons Learned from a Scientific Software Development Project, IEEE Software, July / August
Nguyen-Hoan, Luke; Flint, Shayne & Sankaranarayana, Ramesh (2010). A Survey of Scientific Software Development, ESEM’10, September, Bolzano-Bozen, Italy
Peachey, Tom; Mashkina, Elena; Lee, Chong-Yong; Enticott, Colin; Abramson, David; Bond, Alan M.; Elton, Darrell; Gavaghan, David J.; Stevenson, Gareth P. & Kennedy, Gareth F.(2013). Leveraging e-Science infrastructure for electrochemical research, Philosophical transactions of The Royal Society, January.
Peter, Marian (2010). Mental imagery and software visualization in high-performance software development teams, Journal of Visual Languages y Computing, June, Original Research Article, Volume 21, Issue 3
Puentesa, John; Roux, Michèle; Montagner, Julien & Lecornu Laurent (2012). Development framework for a patient-centered record, Image and Information Processing, Telecom Bretagne
Robinson, Hugh; Segal, Judith & Sharp, Helen (2007). Ethnographically-
informed empirical studies of software practice, Information and Software Technology, June, Volume 49, Issue 6
Segal, Judith (2005). When Software Engineers Met Research Scientists: A Case Study, Empirical Software Engineering, 10, 517 – 536.
Segal, Judith (2007). End-User Software Engineering and Professional End-User Developers, Dagstuhl Seminar Proceedings 07081 End-User Software Engineering, 1 – 2, 2007.
Segal, Judith (2008a). Scientists and software engineers: A tale of two cultures, Proceedings of the Psychology of Programming Interest Group, PPIG 08, 10-12- September, University of Lancaster, UK.
Segal, Judith (2008b). Understanding the High-Performance-Computing Community: A Software Engineer’s Perspective, IEEE Software, 29 - 36.
Segal, Judith & Morris, C. (2008c). Developing scientific software, IEEE Software, 25(4) : 18 - 20, July 2008.
Segal, Judith (2009a). Software Development Cultures and Cooperation Problems: A Field Study of the Early Stages of Development of Software for a Scientific Community, Computer Supported Cooperative Work (CSCW)
Segal, Judith (2009b). Software Design for Empowering Scientists, IEEE Software, 88 – 95
Segal, Judith (2009c). Software Development Cultures and Cooperation Problems: A Field Study of the Early Stages of Development of Software for a Scientific Community, Computer Supported Cooperative Work (CSCW), 581–606.
Segal, Judith (2009d). Some challenges facing software engineers developing software for scientists, ICSE 09 Workshop, SECSE 09, 9 -14 May, Vancouver, Canada.
Segal, Judith (2011). Obstacles and opportunities with using visual and domain-specific languages in scientific programming, IEEE Symposium on Visual Languages and Human-Centric Computing, 9 - 16.
Segal, Judith (2012). Lessons Learned from Scientific Software Development Project, IEEE Software: 9 - 12, July/August 2012.
Senge, Peter (2009). La quinta disciplina en la práctica. Argentina: Gránica,
Sommerville, Ian (2011). Software Engineering, ninth edition. USA: Addison Wesley.
Spencer, Dimitrina; Zimmerman, Ann & Abramson, David (2011). Special Theme: Project Management in E-Science: Challenges and Opportunities, Computer Supported Cooperative Work.
Tan, Joo & Phillips, John (2005). Real-World Project Management in the Academic Environment, May, CCSC: Northeastern Conference
Ugalde Peña y Lillo, Sergio; Persen Arrepol, Patricio & Cerda Neumann, Gerardo (2012). Evaluación de la propuesta metodológica KDDP para crear software de investigación. Santiago de Chile: Universidad UCINF, Trabajo de Titulación presentado en conformidad a los requisitos para obtener el Título de Ingeniero de Ejecución en Informática.
Umarji, Medha; Pohl, Mark; Seaman, Carolyn; Koru, Güneş A. & Hongfang, Liu (2008). Teaching Software Engineering to End-users, WEUSE IV’08, May, 2008, Leipzig, Germany
Cómo citar
Licencia
Los autores/as conservarán sus derechos de autor y garantizarán a la revista el derecho de primera publicación de su obra, el cual estará simultáneamente sujeto a la Licencia de reconocimiento de Creative Commons (CC BY-NC-ND) 4.0 que permite a terceros compartir la obra siempre que se indique su autor y se comparta el documento, en formato pdf y con la paginación del número original, a través del que este ha sido publicado por la revista. Siguiendo las definiciones establecidas por la licencia (ver: https://creativecommons.org/licenses/by-nc-nd/4.0/deed.es) los números de la revistas seguirán los siguientes términos:
-
Atribución — Usted debe dar crédito de manera adecuada, brindar un enlace a la licencia, e indicar si se han realizado cambios. Puede hacerlo en cualquier forma razonable, pero no de forma tal que sugiera que usted o su uso tienen el apoyo de la licenciante.
-
No Comercial — Usted no puede hacer uso del material con propósitos comerciales.
-
Sin Derivadas — Si remezcla, transforma o crea a partir del material, no podrá distribuir el material modificado.
- No hay restricciones adicionales — No puede aplicar términos legales ni medidas tecnológicas que restrinjan legalmente a otras a hacer cualquier uso permitido por la licencia.