5 research outputs found
Semantic Bridging between Conceptual Modeling Standards and Agile Software Projects Conceptualizations
Software engineering benefitted from modeling standards (e.g. UML, BPMN), but Agile Software Project Management tends to marginalize most forms of documentation including diagrammatic modeling, focusing instead on the tracking of a project\u27s backlog and related issues. Limited means are available for annotating Jira items with diagrams, however not on a granular and semantically traceable level. Business processes tend to get lost on the way between process analysis (if any) and backlog items; UML design decisions are often disconnected from the issue tracking environment. This paper proposes domain-specific conceptual modeling to obtain a diagrammatic view on a Jira project, motivated by past conceptualizations of the agile paradigm while also offering basic interoperability with Jira to switch between environments and views. The underlying conceptualization extends conceptual modeling languages (BPMN, UML) with an agile project management perspective to enrich contextual traceability of a project\u27s elements while ensuring that data structures handled by Jira can be captured and exposed to Jira if needed. Therefore, concepts underlying the typical software development project management are integrated with established modeling concepts and tailored (with metamodeling means) for the domain-specificity of agile project management. A Design Science approach was pursued to develop a modeling method artifact, resulting in a domain-specific modeling tool for software project managers that want to augment agile practices and enrich issue annotation
Systematic mapping of software engineering management with an agile approach
El enfoque ágil ha generado una amplia variedad de estrategias para administrar con éxito
diversos proyectos de software en todo el mundo. Además, podemos asegurar que los
proyectos de software se han beneficiado de los métodos ágiles ya conocidos. En este
sentido, este artículo busca demostrar cómo se aplica el enfoque ágil en las áreas de la
gestión en la ingeniería del Software. Para ello, este estudio realiza un mapeo sistemático
para identificar las principales tendencias en la gestión de la ingeniería de software con
un enfoque ágil. Se han identificado un total de 1137 artículos, de los cuales 165 son
relevantes para los fines de este estudio, estos indican que la entrega temprana de valor,
un principio clave de la agilidad, sigue siendo la principal tendencia para el uso de
métodos ágiles. Sin embargo, también existen fuertes tendencias enfocadas en puntos
clave de la gestión en ingeniería de software, como optimizar la gestión de calidad,
optimizar la especificación de requisitos, optimizar la gestión de riesgos y mejorar la
comunicación y coordinación del equipo, estos resultados permitirán generar nuevas
líneas de investigación para cada punto clave de la gestión en la ingeniería del software
impactado por el enfoque ágil.The agile approach has generated a wide variety of strategies to successfully manage
various software projects worldwide. In addition, we can ensure that software projects
have benefited from the already known agile methods. In this sense, this article seeks to
demonstrate how the agile approach is applied in Software engineering management
areas. To do this, this study performs a systematic mapping to identify the main trends in
software engineering management with an agile approach. A total of 1137 articles have
identified, of which 165 are relevant for the purposes of this study, these indicate that
early value delivery, a key principle of agility, continues to be the main trend for the use
of agile methods. However, there are also strong trends focused on key points of
management in software engineering, such as optimize quality management, optimize
requirements specification, optimize risk management, and improve team communication
and coordination, these results will allow generating new lines of research for each key
point of management in software engineering impacted by the agile approach
Systematic mapping of software engineering management with an agile approach
El enfoque ágil ha generado una amplia variedad de estrategias para administrar con éxito
diversos proyectos de software en todo el mundo. Además, podemos asegurar que los
proyectos de software se han beneficiado de los métodos ágiles ya conocidos. En este
sentido, este artículo busca demostrar cómo se aplica el enfoque ágil en las áreas de la
gestión en la ingeniería del Software. Para ello, este estudio realiza un mapeo sistemático
para identificar las principales tendencias en la gestión de la ingeniería de software con
un enfoque ágil. Se han identificado un total de 1137 artículos, de los cuales 165 son
relevantes para los fines de este estudio, estos indican que la entrega temprana de valor,
un principio clave de la agilidad, sigue siendo la principal tendencia para el uso de
métodos ágiles. Sin embargo, también existen fuertes tendencias enfocadas en puntos
clave de la gestión en ingeniería de software, como optimizar la gestión de calidad,
optimizar la especificación de requisitos, optimizar la gestión de riesgos y mejorar la
comunicación y coordinación del equipo, estos resultados permitirán generar nuevas
líneas de investigación para cada punto clave de la gestión en la ingeniería del software
impactado por el enfoque ágil.The agile approach has generated a wide variety of strategies to successfully manage
various software projects worldwide. In addition, we can ensure that software projects
have benefited from the already known agile methods. In this sense, this article seeks to
demonstrate how the agile approach is applied in Software engineering management
areas. To do this, this study performs a systematic mapping to identify the main trends in
software engineering management with an agile approach. A total of 1137 articles have
identified, of which 165 are relevant for the purposes of this study, these indicate that
early value delivery, a key principle of agility, continues to be the main trend for the use
of agile methods. However, there are also strong trends focused on key points of
management in software engineering, such as optimize quality management, optimize
requirements specification, optimize risk management, and improve team communication
and coordination, these results will allow generating new lines of research for each key
point of management in software engineering impacted by the agile approach
Systematic mapping of software engineering management with an agile approach
El enfoque ágil ha generado una amplia variedad de estrategias para administrar con éxito
diversos proyectos de software en todo el mundo. Además, podemos asegurar que los
proyectos de software se han beneficiado de los métodos ágiles ya conocidos. En este
sentido, este artículo busca demostrar cómo se aplica el enfoque ágil en las áreas de la
gestión en la ingeniería del Software. Para ello, este estudio realiza un mapeo sistemático
para identificar las principales tendencias en la gestión de la ingeniería de software con
un enfoque ágil. Se han identificado un total de 1137 artículos, de los cuales 165 son
relevantes para los fines de este estudio, estos indican que la entrega temprana de valor,
un principio clave de la agilidad, sigue siendo la principal tendencia para el uso de
métodos ágiles. Sin embargo, también existen fuertes tendencias enfocadas en puntos
clave de la gestión en ingeniería de software, como optimizar la gestión de calidad,
optimizar la especificación de requisitos, optimizar la gestión de riesgos y mejorar la
comunicación y coordinación del equipo, estos resultados permitirán generar nuevas
líneas de investigación para cada punto clave de la gestión en la ingeniería del software
impactado por el enfoque ágil.The agile approach has generated a wide variety of strategies to successfully manage
various software projects worldwide. In addition, we can ensure that software projects
have benefited from the already known agile methods. In this sense, this article seeks to
demonstrate how the agile approach is applied in Software engineering management
areas. To do this, this study performs a systematic mapping to identify the main trends in
software engineering management with an agile approach. A total of 1137 articles have
identified, of which 165 are relevant for the purposes of this study, these indicate that
early value delivery, a key principle of agility, continues to be the main trend for the use
of agile methods. However, there are also strong trends focused on key points of
management in software engineering, such as optimize quality management, optimize
requirements specification, optimize risk management, and improve team communication
and coordination, these results will allow generating new lines of research for each key
point of management in software engineering impacted by the agile approach
On the real world practice of Behaviour Driven Development
Surveys of industry practice over the last decade suggest that Behaviour Driven Development is a popular Agile practice. For example, 19% of respondents to the 14th State of Agile annual survey reported using BDD, placing it in the top 13 practices reported. As well as potential benefits, the adoption of BDD necessarily involves an additional cost of writing and maintaining Gherkin features and scenarios, and (if used for acceptance testing,) the associated step functions. Yet there is a lack of published literature exploring how BDD is used in practice and the challenges experienced by real world software development efforts. This gap is significant because without understanding current real world practice, it is hard to identify opportunities to address and mitigate challenges. In order to address this research gap concerning the challenges of using BDD, this thesis reports on a research project which explored: (a) the challenges of applying agile and undertaking requirements engineering in a real world context; (b) the challenges of applying BDD specifically and (c) the application of BDD in open-source projects to understand challenges in this different context.
For this purpose, we progressively conducted two case studies, two series of interviews, four iterations of action research, and an empirical study. The first case study was conducted in an avionics company to discover the challenges of using an agile process in a large scale safety critical project environment. Since requirements management was found to be one of the biggest challenges during the case study, we decided to investigate BDD because of its reputation for requirements management. The second case study was conducted in the company with an aim to discover the challenges of using BDD in real life. The case study was complemented with an empirical study of the practice of BDD in open source projects, taking a study sample from the GitHub open source collaboration site.
As a result of this Ph.D research, we were able to discover: (i) challenges of using an agile process in a large scale safety-critical organisation, (ii) current state of BDD in practice, (iii) technical limitations of Gherkin (i.e., the language for writing requirements in BDD), (iv) challenges of using BDD in a real project, (v) bad smells in the Gherkin specifications of open source projects on GitHub. We also presented a brief comparison between the theoretical description of BDD and BDD in practice. This research, therefore, presents the results of lessons learned from BDD in practice, and serves as a guide for software practitioners planning on using BDD in their projects