544 research outputs found

    A cognitive approach to improve software engineering processes

    Get PDF
    Cognitive Informatics is a new research area that combines concepts from cognitive sciences and informatics. Particularly, classification according to cognitive styles or learning styles is a common practise in educational and business areas in order to obtain better performance from people involved in learning and collaborative tasks. Humanintensive processes in software engineering make it similar to those areas. In this paper, we propose using a kind of people classification to improve those processes of software engineering where human behaviour is a critical influence on their success.Eje: Ingeniería en SoftwareRed de Universidades con Carreras en Informática (RedUNCI

    A cognitive approach to improve software engineering processes

    Get PDF
    Cognitive Informatics is a new research area that combines concepts from cognitive sciences and informatics. Particularly, classification according to cognitive styles or learning styles is a common practise in educational and business areas in order to obtain better performance from people involved in learning and collaborative tasks. Humanintensive processes in software engineering make it similar to those areas. In this paper, we propose using a kind of people classification to improve those processes of software engineering where human behaviour is a critical influence on their success.Eje: Ingeniería en SoftwareRed de Universidades con Carreras en Informática (RedUNCI

    Mejora del proceso de elicitación de requisitos en proyectos GSD

    Get PDF
    La tendencia constantemente en alza de la globalización de empresas, y especialmente de los negocios relacionados con la producción de tecnologías de software, ha producido un profundo impacto tanto en las estrategias de marketing y distribución, como en la manera en que los productos son concebidos, diseñados, construidos, probados y entregados a los clientes [13]. Ejemplo de ello es que cada vez es más común el desarrollo de software en forma distribuida, o desarrollo global de software (GSD según las siglas en inglés), donde quienes participan del proceso de desarrollo (usuarios, clientes, desarrolladores) se encuentran localizados en países distintos. El principal motivo del crecimiento del GSD es que permite a las empresas disminuir los costos de desarrollo mientras se mantiene el nivel de calidad del proceso [5], contando con profesionales a lo largo y ancho del mundo sin necesidad de afrontar el costo de su traslado [16], o bien producir software para clientes remotos sin necesidad de trasladar el equipo de desarrolladores. También permite aumentar la productividad, por medio de jornadas de trabajo más extensas teniendo programadores distribuidos en sitios con amplia diferencia horaria [10]. Sin embargo, por su característica distribuida, los proyectos de GSD enfrentan varios problemas ocasionados por la distancia entre los participantes. Estos problemas son provocados por [9]: - la diferencia cultural, que comprende la variedad de lenguajes nativos de los participantes así como su comportamiento, - las dificultades en la comunicación, que se ve limitada por la tecnología utilizada - la diferencia horaria, que obstaculiza la interacción sincrónica, - la dificultad que representa gestionar el conocimiento en un entorno con fuentes de información variadas y distribuidas. Al analizar la literatura existente sobre el desarrollo global de software, hemos notado que la investigación anterior se centraba en determinar las limitaciones de la comunicación interpersonal y la gestión del conocimiento en entornos distribuidos, con el objetivo de definir su implicación en el proceso de desarrollo de software, pero que por lo general estos trabajos se dedican a las etapas más avanzadas de la ingeniería de requisitos (como la negociación y la especificación) y son muy pocos los trabajos referidos a las etapas iniciales. Por ello decidimos enfocar nuestro trabajo en la etapa de “elicitación de requisitos”, donde se necesita una interacción fluida entre desarrolladores, clientes, usuarios, y otros miembros de la organización para obtener información sobre el sistema que se desea construir [21]. Nuestro objetivo, por lo tanto, es proponer una metodología que minimice los problemas que puedan presentarse en la fase de recolección de requisitos en entornos distribuidos para obtener requisitos más precisos. A continuación presentamos un breve resumen de la revisión de conocimientos para cada área involucrada y finalmente hablaremos del estado actual de nuestra investigación.Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Mejora del proceso de elicitación de requisitos en proyectos GSD

    Get PDF
    La tendencia constantemente en alza de la globalización de empresas, y especialmente de los negocios relacionados con la producción de tecnologías de software, ha producido un profundo impacto tanto en las estrategias de marketing y distribución, como en la manera en que los productos son concebidos, diseñados, construidos, probados y entregados a los clientes [13]. Ejemplo de ello es que cada vez es más común el desarrollo de software en forma distribuida, o desarrollo global de software (GSD según las siglas en inglés), donde quienes participan del proceso de desarrollo (usuarios, clientes, desarrolladores) se encuentran localizados en países distintos. El principal motivo del crecimiento del GSD es que permite a las empresas disminuir los costos de desarrollo mientras se mantiene el nivel de calidad del proceso [5], contando con profesionales a lo largo y ancho del mundo sin necesidad de afrontar el costo de su traslado [16], o bien producir software para clientes remotos sin necesidad de trasladar el equipo de desarrolladores. También permite aumentar la productividad, por medio de jornadas de trabajo más extensas teniendo programadores distribuidos en sitios con amplia diferencia horaria [10]. Sin embargo, por su característica distribuida, los proyectos de GSD enfrentan varios problemas ocasionados por la distancia entre los participantes. Estos problemas son provocados por [9]: - la diferencia cultural, que comprende la variedad de lenguajes nativos de los participantes así como su comportamiento, - las dificultades en la comunicación, que se ve limitada por la tecnología utilizada - la diferencia horaria, que obstaculiza la interacción sincrónica, - la dificultad que representa gestionar el conocimiento en un entorno con fuentes de información variadas y distribuidas. Al analizar la literatura existente sobre el desarrollo global de software, hemos notado que la investigación anterior se centraba en determinar las limitaciones de la comunicación interpersonal y la gestión del conocimiento en entornos distribuidos, con el objetivo de definir su implicación en el proceso de desarrollo de software, pero que por lo general estos trabajos se dedican a las etapas más avanzadas de la ingeniería de requisitos (como la negociación y la especificación) y son muy pocos los trabajos referidos a las etapas iniciales. Por ello decidimos enfocar nuestro trabajo en la etapa de “elicitación de requisitos”, donde se necesita una interacción fluida entre desarrolladores, clientes, usuarios, y otros miembros de la organización para obtener información sobre el sistema que se desea construir [21]. Nuestro objetivo, por lo tanto, es proponer una metodología que minimice los problemas que puedan presentarse en la fase de recolección de requisitos en entornos distribuidos para obtener requisitos más precisos. A continuación presentamos un breve resumen de la revisión de conocimientos para cada área involucrada y finalmente hablaremos del estado actual de nuestra investigación.Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Collaborative problem solving and program development model

    Get PDF
    A model to enhance collaborative problem solving and program development is presented. The collaborative model is a detailed cognitive model that takes into consideration the cognitive and social activities that occur during collaborative problem solving and program development. The cognitive activities required for collaborative problem solving and program development are identified and integrated into a six-stage model. An extensive literature review in the associated fields is presented to show the need for the model described in this dissertation. In addition, a comprehensive study of tools to support collaboration during problem solving and program development was also performed as well as a critique of these tools. A detailed statistical experiment to study the effect of this model on subjects, collaboratively solving a software problem was designed and executed. The experiment included testing the collaborative problem solving and program development model with and without assistance from groupware tools. The subject teams each constructed a software design and this design was evaluated based on, research hypotheses. This experiment produced results indicating the positive effect the Collaborative Model has on problem understanding and the quality of solution planning during collaborative problem solving and program development efforts

    Identificación, evaluación y uso de composiciones software

    Get PDF
    El Desarrollo de Software Basado en Componentes (DSBC) apela al uso de piezas prefabricadas, tal vez desarrolladas en momentos diferentes, por distintas personas y posiblemente con distintos objetivos de uso. La meta final, una vez más, es la reducción del tiempo de desarrollo, de los costos y del esfuerzo a la vez que se mejora la calidad del producto final debido a la reutilización de composiciones de componentes software ya desarrollados, probados y validados. Sin embargo, el proceso de DSBC se encuentra influenciado por la documentación de las componentes existentes, así como de otros factores que limitan su selección. Tomando como base conocimientos adquiridos en proyectos anteriores, el presente proyecto aborda distintas temáticas en la identificación, evaluación y uso de composiciones software, centrando el estudio en (1) mejoras a procesos específicos – ej. especificación de requisitos; (2) definición y validación de técnicas para evaluación de composiciones en dominios específicos (Sistemas de Información Geográficos, Requisitos en Desarrollos Globales); (3) evaluación de atributos de calidad específicos (integrabilidad y accesibilidad); (4) incorporación de orientación a aspectos, ingeniería cognitiva y semántica al proceso de identificación y evaluación; y (5) generalización de prácticas a través de mejora de procesos de reuso. Los resultados obtenidos a partir de las líneas citadas serán integrados en herramientas de software que faciliten las actividades de verificación de propiedades y búsqueda. Los objetivos del proyecto se desprenden de varias actividades de cooperación en curso y que continúan en el marco de un proyecto CyTED. Los resultados serán aplicados en el contexto de este proyecto así como de cooperaciones en curso, Agencia Italiana para la Protección y Servicios Técnicos del Medio Ambiente (APAT) y la Universidad de Bari, Italia.Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Identificación, evaluación y uso de composiciones software

    Get PDF
    El Desarrollo de Software Basado en Componentes (DSBC) apela al uso de piezas prefabricadas, tal vez desarrolladas en momentos diferentes, por distintas personas y posiblemente con distintos objetivos de uso. La meta final, una vez más, es la reducción del tiempo de desarrollo, de los costos y del esfuerzo a la vez que se mejora la calidad del producto final debido a la reutilización de composiciones de componentes software ya desarrollados, probados y validados. Sin embargo, el proceso de DSBC se encuentra influenciado por la documentación de las componentes existentes, así como de otros factores que limitan su selección. Tomando como base conocimientos adquiridos en proyectos anteriores, el presente proyecto aborda distintas temáticas en la identificación, evaluación y uso de composiciones software, centrando el estudio en (1) mejoras a procesos específicos – ej. especificación de requisitos; (2) definición y validación de técnicas para evaluación de composiciones en dominios específicos (Sistemas de Información Geográficos, Requisitos en Desarrollos Globales); (3) evaluación de atributos de calidad específicos (integrabilidad y accesibilidad); (4) incorporación de orientación a aspectos, ingeniería cognitiva y semántica al proceso de identificación y evaluación; y (5) generalización de prácticas a través de mejora de procesos de reuso. Los resultados obtenidos a partir de las líneas citadas serán integrados en herramientas de software que faciliten las actividades de verificación de propiedades y búsqueda. Los objetivos del proyecto se desprenden de varias actividades de cooperación en curso y que continúan en el marco de un proyecto CyTED. Los resultados serán aplicados en el contexto de este proyecto así como de cooperaciones en curso, Agencia Italiana para la Protección y Servicios Técnicos del Medio Ambiente (APAT) y la Universidad de Bari, Italia.Eje: Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Collaborative Requirements Engineering Notation for Planning Globally Distributed Projects

    Get PDF
    Requirements engineering represents a critical phase of the software development lifecycle in which requirements describing the functional and non-functional behaviors of a system are elicited, modeled, analyzed, negotiated, agreed, and specified. In traditional software systems these tasks are typically performed in face-to-face meetings between requirements engineers and the project level stakeholders. However, in today’s global software development environment, it is becoming increasingly commonplace for stakeholders to be dispersed across multiple geographical locations and time zones. Under these circumstances, face-to-face meetings become expensive, and often impossible to facilitate, and as a result the success of the requirements process relies, at least partially, on tools and processes that support distributed communication and collaboration. To investigate the challenges and effective practices for performing requirements activities in distributed environments, we conducted a series of in-depth interviews with project managers and business analysts who have worked with non-co-located stakeholders. Since many project managers fail to plan and deploy the necessary infrastructures to support quality communication, and in practice requirements are often elicited and managed via email exchanges; we introduced a visual modeling notation to help project managers proactively plan the collaboration infrastructures needed to support requirements-related activities in globally distributed projects. An underlying meta-model defines the elements of the modeling language, including locations, stakeholder roles, communication flows, critical documents, and supporting tools and repositories. The interview findings were further analyzed to identify practices that led to success or created significant challenges for the projects; resulting in a set of patterns for globally distributed requirements engineering

    Geographically distributed requirements elicitation

    Get PDF
    The technology revolution has transformed the way in which many organisations do their business. The resultant information systems have increased the decision making powers of executives, leading to increased effectiveness and ultimately to improved product delivery. The process of information systems development is, however, complex. Furthermore, it has a poor track record in terms of on-time and within-budget delivery, but more significantly in terms of low user acceptance frequently attributable to poor user requirements specification. Consequently, much attention has been given to the process of requirements elicitation, with both researchers and businessmen seeking new, innovative and effective methods. These methods usually involve large numbers of participants who are drawn from within the client and developer organisations. This is a financially costly characteristic of the requirements elicitation process. Besides information systems, the technology revolution has also brought sophisticated communication technologies into the marketplace. These communication technologies allow people to communicate with one another in a variety of different time and space scenarios. An important spin-off of this is the ability for people located in significantly different geographical locations to work collaboratively on a project. It is claimed that this approach to work has significant cost and productivity advantages. This study draws the requirements elicitation process into the realm of collaborative work. Important project management, communication, and collaborative working principles are examined in detail, and a model is developed which represents these issues as they pertain to the requirements elicitation process. An empirical study (conducted in South Africa) is performed in order to examine the principles of the model and the relationships between its constituent elements. A model of geographically distributed requirements elicitation (GDRE) is developed on the basis of the findings of this investigation. The model of GDRE is presented as a 3-phased approach to requirements elicitation, namely planning, implementation, and termination. Significantly, the model suggests the use of interviews, structured workshops, and prototyping as the chief requirements elicitation methods to be adopted in appropriate conditions. Although a detailed study of communications technology was not performed, this thesis suggests that each individual GDRE implementation requires a different mix of communication technologies to support its implementation

    Computer Science and Technology Series : XV Argentine Congress of Computer Science. Selected papers

    Get PDF
    CACIC'09 was the fifteenth Congress in the CACIC series. It was organized by the School of Engineering of the National University of Jujuy. The Congress included 9 Workshops with 130 accepted papers, 1 main Conference, 4 invited tutorials, different meetings related with Computer Science Education (Professors, PhD students, Curricula) and an International School with 5 courses. CACIC 2009 was organized following the traditional Congress format, with 9 Workshops covering a diversity of dimensions of Computer Science Research. Each topic was supervised by a committee of three chairs of different Universities. The call for papers attracted a total of 267 submissions. An average of 2.7 review reports were collected for each paper, for a grand total of 720 review reports that involved about 300 different reviewers. A total of 130 full papers were accepted and 20 of them were selected for this book.Red de Universidades con Carreras en Informática (RedUNCI
    corecore