5 research outputs found

    Análisis y formalización del conocimiento de patrones de producto en repositorios de conocimiento

    Get PDF
    Todo conocimiento debe formalizarse y difundirse para estar accesible, consiguiendo así que aporte valor a las organizaciones. Los Patrones de Producto fueron creados por el Grupo SEL-PROMISE del Departamento de Informática de la Universidad Carlos III de Madrid (UC3M), como artefactos que formalizan el conocimiento experto de los Ingenieros Software sobre la realización de los productos Software. Por ello, el objetivo de este Proyecto es analizar y formalizar el conocimiento de los Patrones de Producto en repositorios de conocimiento, para permitir su difusión, utilización y ampliación. Se implementarán dos alternativas para la creación de ese repositorio, obteniendo un primer repositorio en forma de Base de Datos, y otro en formato Wiki que agilizará la consulta y actualización de la información sobre dichos Patrones de Producto. Como referencia, se utilizarán las páginas existentes del Grupo SEL-PROMISE de la UC3M (Kovachi y Productpatterns).All knowledge must be formalized and disseminated in order to be accessible and by this way contribute extra value to the organizations. Product Patterns were created by the SEL- PROMISE Group of the Informatics Department, Carlos III University of Madrid (UC3M), as artifacts that formalize expert knowledge of Software Engineers on the implementation of software products. Therefore, the aim of this project is to analyze and formalize the knowledge of Product Patterns in knowledge repositories so as to allow it be used, disseminated and broadened. This repository will be implemented by using two alternatives. The first one, will be as a data base and the other one using the Wiki format that will enhance the information updating process and also speed up the information query. The existing SELPROMISE Group's pages of UC3M (Kovachi and Productpatterns) are going to be used as a reference, in order to implement this project.Ingeniería Técnica en Informática de Gestió

    Marco metodológico para la mejora de la eficiencia de uso de los procesos software

    Get PDF
    La mejora de procesos proporciona beneficios a la organización como reducción de costes, incremento de la productividad, mejora de la calidad, satisfacción del cliente y mayor nivel competitivo. Por ello es cada vez mayor el número de empresas que abordan proyectos de mejora de procesos. Sin embargo, los proyectos de mejora de procesos requieren de un gran esfuerzo humano, son largos de ejecución, y por consiguiente, muy costosos. Estos proyectos son críticos para la organización que los aborda, puesto que implican un cambio en su proceso de producción, con el fin de lograr una mayor productividad y calidad de los productos que elaboran. En los proyectos de mejora hay dos actividades clave: la definición del proceso y la implantación del proceso definido a toda la organización, denominado despliegue del proceso. Actualmente, se puede decir que la definición de procesos está en un nivel poco maduro. Por consiguiente, la tarea de definir procesos es difícil y costosa puesto que cada vez que se aborda la definición de un nuevo proceso se parte de cero. Por otro lado, el despliegue de los procesos definidos, constituye la tarea más desafiante a la que una organización se enfrenta. Esta actividad tiene como finalidad la implantación de un nuevo proceso de manera global en la organización. La solución que plantea esta tesis doctoral es una solución práctica a la formalización de la definición y despliegue del proceso. Dicha formalización permitirá, por un lado, almacenar el conocimiento y la experiencia de los ingenieros software que han usado el proceso en proyectos anteriores y; por otro lado, permitirá la difusión, búsqueda, uso y reutilización de los activos de procesos en nuevos proyectos. La solución propuesta es un marco metodológico, orientado a la reutilización y difusión del conocimiento, que incluye: - “Patrones de Producto”, como artefacto de encapsulación de conocimiento. - “Estrategia Corporativa”, para desplegar los procesos en toda la organización. - “Plataforma Colaborativa”, para mejorar la diseminación entre los miembros de los equipos de trabajo de nuevas piezas de conocimiento obtenidas como consecuencia del uso del mismo en proyectos anteriores, así como reducir el rechazo en la adopción de estos.-------------------------------------------------------------------------------------Software Process Improvement (SPI) provides benefits, such as cost reduction, increased productivity, quality improvement and customer satisfaction, to organizations. As a result, more and more organizations are addressing software process improvement projects. However, a software process improvement project requires a great deal of time and effort and are consequently costly. These projects are very important for organizations because they entail a change in production processes to achieve product quality and greater productivity. There are two main activities in software process improvement projects: process definition and process deployment. Currently, process definition is under-developed, so each process must be defined from scratch, which is very difficult and costly. On the other hand, process deployment is the most challenging task because a totally new process has to be implemented throughout the organization. This thesis describes a practical approach to formalizing processes definition and deployment. This will allow the knowledge and experience of software engineers acquired from previous projects and from software engineering best practices to be gathered and the dissemination, search, use and reuse of software processes and projects. The proposed solution is a methodological framework oriented to knowledge reuse and dissemination, which has three main components: - “Product Patterns” as a knowledge artifact. - “Corporate Strategy” to deploy the processes throughout the organization. - “Collaborative Platform” to improve communication among team members, transfer of new knowledge and to reduce the number of rejections of the framework

    Patrones de proyectos para gestionar el conocimiento en organizaciones de desarrollo de software

    Get PDF
    La mejora de procesos de desarrollo software en las organizaciones de desarrollo software es una tarea muy compleja que puede ser resuelta usando estrategias de gestión del conocimiento. En esta área, la definición y el uso de buenas prácticas en la ingeniería del software es una propuesta válida para aplicar estrategias de gestión del conocimiento en organizaciones de desarrollo software. Una de los principales problemas para la aplicación efectiva de patrones de procesos en la industria de desarrollo software es la dificultad de la formalización del conocimiento sobre los procesos de desarrollo usando estas aproximaciones. Esta tesis doctoral presenta un framework para la gestión de patrones de proyectos de desarrollo software llamado sdpFramework. Este framework es capaz de formalizar el conocimiento sobre proyectos de desarrollo software incluyendo experiencia previa de ingenieros de software, metodologías de desarrollo, marcos de referencia y lecciones aprendidas. Este framework está compuesto por: • Un modelo llamado sdPP; compuesto por los elementos de conocimiento necesarios para dar cobertura a las necesidades de conocimiento de los ingenieros de software. • Una metodología; que cubra las fases del ciclo de vida del conocimiento sobre patrones de proyecto. • Una plataforma tecnológica llamada sdpReuser; capaz de gestionar los sdPPs durante las fases del ciclo de vida de los patrones de proyecto. Un caso de estudio embebido en dos partes se ha llevado a cabo durante la investigación de esta tesis doctoral: La primera parte fue un estudio empírico en la Universidad Carlos III de Madrid, donde doce ingenieros junior de desarrollo software usaron los patrones de proyectos descritos en este trabajo de investigación. Las evidencias y resultados obtenidos durante la ejecución del estudio empírico indican que la corrección en la formalización de los patrones de proyectos depende de la relevancia de las referencias bibliográficas usadas para su creación, la implementación de estrategias para compartir conocimiento entre el personal involucrado y la experiencia previa en las áreas de negocio relacionadas con los sistemas de información desarrollados. En la segunda parte se realizó una validación experimental donde 48 ingenieros de software aplicaron sdpFramework. De los resultados obtenidos, se estudió los factores que ayudan a mejorar la calidad de los productos de desarrollo software usando la propuesta sdPP. Se analizó el esfuerzo necesario para implementar las actividades propuestas por sdPP para introducir el conocimiento de un sdPP en un proyecto de desarrollo. Para finalizar se evaluó la utilidad de los elementos de conocimiento de sdPP en cada una de las fases de su ciclo de vida. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------The improvement of software processes within software development organizations is a very complex task that can be solved by following knowledge management strategies. In this area, the definition and use of best practices is a proven approach to apply knowledge management strategies in software development organizations. One of the main burdens for the effective application of process patterns in the software industry is the difficulty of formalizing knowledge about the development process themselves. This doctoral thesis presents sdpFramework, a framework to manage software project patterns. This framework is capable of formalizing knowledge regarding software development projects, including software engineers’ previous experience, development methodologies, reference frameworks and lessons learnt. The framework is composed of: • A model called sdPP, made up by the knowledge elements necessary to cover the knowledge needs of software engineers. • A methodology that covers the phases of the knowledge life-cycle about project patterns • A technological platform called sdpReuser, capable of managing the sdPPs during the phases of project patterns’ life cycle. An embedded case study was carried out during the research of this thesis. The first part was an empirical study at the University Carlos III of Madrid, where twelve junior software engineers used the project patterns described in this research work. The evidences and findings obtained during from this empirical study indicate that the correctness of the project pattern formalizations depends on the relevance of the bibliographic sources used for their creation, the implementation of strategies to share knowledge among the personnel involved, and the previous experience in the business areas related to the information systems being developed. In the second part an experimental validation was carried out, where 48 software engineers applied the sdpFramework. From the results obtained, we studied the factors that help improving the software product quality when using the sdPP proposal. We analyzed the effort required to implement the activities proposed by sdPP in order to introduce the knowledge about an sdPP into a development project. Finally, we evaluated the usefulness of the sdPP knowledge elements in each of the phases of its life cycle

    ITAKA: gestión interactiva del conocimiento en organizaciones de desarrollo de software

    Get PDF
    El conocimiento es uno de los principales activos en un entorno económico e industrial tan competitivo como el actual. La necesidad de diferenciación de los competidores lleva a las empresas a gestionar su conocimiento organizacional. Cuando es gestionado de manera adecuada, el conocimiento se convierte en un recurso clave para muchas organizaciones porque permite mejorar su competitividad, siendo el descubrimiento de conocimiento visto como una fuente de innovación. Puesto que la calidad del software está directamente relacionada con la calidad del proceso a través del cual es desarrollado este, muchas organizaciones de ingeniería del software tratan de mejorar la calidad de sus productos mejorando sus procesos organizacionales. Para ello, las compañías deben esforzarse continuamente en maximizar el uso de su conocimiento organizacional y/o experiencia. La manera en que las organizaciones recogen, gestionan, comparten, y reutilizan su conocimiento es habitualmente conocida como Gestión del Conocimiento (Knowledge Management – KM). Los Sistemas de Gestión del Conocimiento (Knowledge Management Systems – KMS) proporcionan soporte para manejar el conocimiento en las organizaciones y la implementación de un KMS es una manera positiva de ayudar al aprendizaje basado en el trabajo a través de la aplicación de las tecnologías de la información. Los repositorios de conocimiento son habitualmente una de las estructuras básicas en todo KMS. Estos repositorios almacenan artefactos de conocimiento de tal manera que pueden ser recuperados y reutilizados para producir software de mayor calidad y también para mejorar el rendimiento de la organización. En las organizaciones de ingeniería de software, este tipo de repositorio de conocimiento es habitualmente conocido como Biblioteca de Activos de Proceso (Process Asset Libraries – PAL). Una PAL se puede definir como un repositorio de activos de proceso que está organizado, bien indexado y que permite búsquedas, siendo fácilmente accesible por quienquiera que necesite información para el guiado de procesos, ejemplos, datos, plantillas u otros materiales de ayuda a los procesos. Una PAL puede ser utilizada como el elemento clave de la infraestructura necesaria para diseminar y aprender prácticas efectivas entre los ingenieros de software de la organización, aumentando sus competencias y sus capacidades. El conocimiento útil y relevante es sin embargo difícil de encontrar, y cuando es encontrado su replicación en la práctica. Gran parte del conocimiento útil para la ejecución de los procesos de software es personal, específico del contexto y difícil de formalizar y comunicar. Esta tesis doctoral se enfoca al establecimiento de mecanismos para enriquecer el conocimiento organizacional dentro del contexto del desarrollo de software añadiendo conocimiento tácito al ya existente de una manera asistida y semi‐automática, haciendo además que su diseminación a lo largo de la organización sea sencilla. ITAKA (Interactive TAcit Knowledge Administration) es la solución propuesta en esta tesis doctoral para tratar de resolver estos problemas. Basándose en los principios del KM, ITAKA proporciona un marco de trabajo compuesto por un modelo de conocimiento, los procesos para su gestión y una plataforma tecnológica para la administración interactiva y colaborativa del conocimiento tácito necesario para facilitar el aprendizaje y la adopción de nuevos procesos de desarrollo de software. ITAKA implementa mecanismos para (1) adquirir el conocimiento tácito que las personas obtienen mientras trabajan en distintos equipos para enriquecer colaborativamente el conocimiento organizacional, y (2) diseminar el conocimiento organizacional mejorado entre los diferentes equipos de proyecto. Esta propuesta está inicialmente orientada –pero no limitada– a entornos que requieran el aprendizaje y la adopción de nuevos procesos (p.ej. iniciativas de mejora continua de procesos y la integración de nuevas personas en la organización). ITAKA ha sido validada en un experimento controlado realizado durante dos años en un curso de formación en el que participaron ingenieros junior. Los resultados de esta validación muestran que ITAKA es efectivo en la captura, formalización y distribución del conocimiento que surge de las diferentes interacciones entre los miembros de una organización de ingeniería de software. ITAKA también proporciona un entorno efectivo para el aprendizaje y la adopción de nuevos procesos y prácticas para el desarrollo de software de calidad. A pesar del poco esfuerzo requerido para utilizar las funcionalidades del sistema, se necesita de cierto tiempo para acostumbrarse a su uso y para lograr que los usuarios se involucren. Así, la calidad de los productos desarrollados mejora con el paso del tiempo. Los resultados también sugieren que el éxito de ITAKA depende de factores tales como: a) la utilidad percibida de las herramientas, b) el número de activos de conocimiento publicados, c) la cantidad de información duplicada, d) la distribución del nuevo conocimiento aportado, e) la usabilidad de herramientas y procesos, f) el conocimiento adquirido por todos los usuarios, y g) el cambio cultural que supone. Estos factores resaltan áreas importantes para futuros investigadores y profesionales a la hora de desarrollar entornos colaborativos de aprendizaje en ingeniería del software. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Knowledge is one of the main assets in today’s highly competitive environment. The need for differentiation from competitors led companies to manage their existing organizational knowledge. When managed properly, knowledge becomes a key resource for many organizations because it can improve their competitiveness, knowledge discovery being seen as a source of innovation. Given that the quality of software is directly related to the quality of the process through which software is developed, many software engineering organizations try to enhance the quality of their products by improving their organizational processes. To do so, companies must continually strive to maximize the use of their organizational knowledge and/or experience. The way organizations gather, manage, share, and reuse their knowledge is often referred to as Knowledge Management (KM). Knowledge Management Systems (KMS) support the handling of knowledge in organizations and the implementation of a KMS is a positive way of supporting work‐based learning through the application of information technology. Knowledge repositories are usually one of the base structures in every KMS. A knowledge repository stores knowledge artefacts in such manner they can be retrieved and reused in order to produce software of higher quality and also to improve the organizational performance. In software engineering organisations, this kind of knowledge repository is usually known as Process Asset Library (PAL). A PAL can be defined as an organised, well‐indexed, searchable repository of process assets that is easily accessible by anyone who needs process guidance information, examples, data, templates or other process support materials. A PAL can be used as the key infrastructure element that is required to support the dissemination and learning of effective practices among an organisation’s software engineers, increasing their competences and capabilities. Useful and relevant knowledge, however, is difficult to find and when found, is difficult to replicate in practice. Most of the knowledge useful for the execution of software processes is personal, context‐specific and hard to formalise and communicate. This doctoral thesis aimed to establish mechanisms to enrich the organisational knowledge within a software development context by adding tacit knowledge to the pre‐existing one in an assisted and semi‐automatic way, making it easier to disseminate throughout the organisation. ITAKA (Interactive TAcit Knowledge Administration) is the solution proposed in this doctoral thesis to tackle these problems. Based on KM principles, ITAKA provides a framework composed of a knowledge model, the processes for its management and a technological platform to interactively and collaboratively administrate the tacit knowledge needed for helping in the learning and adoption of new software development processes. ITAKA implements mechanisms to (1) acquire the tacit knowledge individuals obtain while working in different teams to collaboratively enrich organizational knowledge, and (2) disseminate the upgraded organizational knowledge among different project teams. This proposal is initially targeted at –but not restricted to– environments that require the learning and adoption of new processes (e.g. continuous process improvement initiatives and the integration of new people into the organization). ITAKA was validated in a controlled experiment involving junior engineers in a training course over two years. The results of this validation show that ITAKA is effective in capturing, formalising and distributing the knowledge that arises in different interactions among the members of a software engineering organization. ITAKA also provides an effective environment in order to learn and adopt new processes and practices to develop quality software. In spite of the little effort required for using the features of the system, it requires some time to get used to them and to get users involved. Thus, the quality of the products developed improves with the time. The results also suggest that success of ITAKA depends on factors such as: a) perceived use of the tools, b) number of knowledge assets published, c) duplication of information, d) distribution of the contributed new knowledge, e) usability of tools and processes, f) knowledge acquired by all users, and g) cultural change. These factors highlight important areas for future researchers and practitioners when developing collaborative learning environments in software engineering
    corecore