2,959 research outputs found
Agile software development one year into the COVID-19 pandemic
As a result of the COVID-19 pandemic, many agile practitioners had to transition into a remote work environment. Despite remote work not being a new concept for agile software practitioners, the forced or recommended nature of remote work is new. This study investigates how the involuntary shift to remote work and how social restrictions imposed by the COVID-19 pandemic have affected agile software development (ASD), and how agile practitioners have been affected in terms of ways of working. An explanatory sequential mixed methods study was performed. Data were collected one year into the COVID-19 pandemic through a questionnaire with 96 respondents and in-depth semi-structured interviews with seven practitioners from seven different companies. Data were analyzed through Bayesian analysis and thematic analysis. The results show, in general, that the aspects of ASD that have been the most affected is communication and social interactions, while technical work aspects have not experienced the same changes. Moreover, feeling forced to work remotely has a significant impact on different aspects of ASD, e.g., productivity and communication, and industry practitioners’ employment of agile development and ways of working have primarily been affected by the lack of social interaction and the shift to digital communication. The results also suggest that there may be a group maturing debt when teams do go back into office, as digital communication and the lack of psychological safety stand in the way for practitioners’ ability to have sensitive discussions and progress as a team in a remote setting
MOLNs: A cloud platform for interactive, reproducible and scalable spatial stochastic computational experiments in systems biology using PyURDME
Computational experiments using spatial stochastic simulations have led to
important new biological insights, but they require specialized tools, a
complex software stack, as well as large and scalable compute and data analysis
resources due to the large computational cost associated with Monte Carlo
computational workflows. The complexity of setting up and managing a
large-scale distributed computation environment to support productive and
reproducible modeling can be prohibitive for practitioners in systems biology.
This results in a barrier to the adoption of spatial stochastic simulation
tools, effectively limiting the type of biological questions addressed by
quantitative modeling. In this paper, we present PyURDME, a new, user-friendly
spatial modeling and simulation package, and MOLNs, a cloud computing appliance
for distributed simulation of stochastic reaction-diffusion models. MOLNs is
based on IPython and provides an interactive programming platform for
development of sharable and reproducible distributed parallel computational
experiments
Motivations, Team Dynamics, Development Practices and How They Impact the Success of Open Source Software: A Study of Projects of Code for America Brigades
Open data movement has nurtured the growth of civic open source software (OSS) in the recent decade. This emerging phenomenon has demonstrated a way that a community can collectively utilize technology to solve its problems.
This study is based on software projects in brigades of Code for America, which is a network of organizations that group volunteers to create digital solutions to community problems. In this study, we analyze the software engineering practices of current civic open source software development, participants\u27 motivations and perceptions of the projects, and provide insights on the antecedents of success of the application development.
A conceptual model is developed to capture potential correlated factors and determinants of the success of civic OSS. We find that leadership, team member\u27s identification as a core team member, and his/her perception of the public benefit level of the project are predictors for his/her satisfaction level. Additionally, we find that compared to team members who are very uninterested in the technologies used in the projects, those who have strong interests in the technologies experience an increase in the odds of stronger willingness to continue in the projects
On-Demand Composition of Smart Service Systems in Decentralized Environments
The increasing number of smart systems inevitably leads to a huge number of systems that potentially provide independently designed, autonomously operating services. In near-future smart computing systems, such as smart cities, smart grids or smart mobility, independently developed and heterogeneous services need to be dynamically interconnected in order to develop their full potential in a rather complex collaboration with others. Since the services are developed independently, it is challenging to integrate them on-the-fly at run time. Due to the increasing degree of distribution, such systems operate in a decentralized and volatile environment, where central management is infeasible. Conversely, the increasing computational power of such systems also supersedes the need for central management. The four identified key problems of adaptable, collaborative Smart Service Systems are on-demand composition of complex service structures in decentralized environments, the absence of a comprehensive, serendipity-aware specification, a discontinuity from design-time specification to run-time execution, and the lack of a development methodology that separates the development of a service from that of its role essential to a collaboration.
This approach utilizes role-based models, which have a collaborative nature, for automated, on-demand service composition. A rigorous two-phase development methodology is proposed in order to demarcate the development of the services from that of their role essential to a collaboration. Therein, a collaboration designer specifies the collaboration including its abstract functionality using the proposed role-based collaboration specification for Smart Service Systems. Thereof, a partial implementation is derived, which is complemented by services developed in the second phase. The proposed middleware architecture provides run-time support and bridges the gap between design and run time. It implements a protocol for coordinated, role-based composition and adaptation of Smart Service Systems. The approach is quantitatively and qualitatively evaluated by means of a case study and a performance evaluation in order to identify limitations of complex service structures and the trade-off of employing the concept of roles for composition and adaptation of Smart Service Systems.:1 Introduction
1.1 Motivation
1.2 Terminology
1.3 Problem Statement
1.4 Requirements Analysis
1.5 Research Questions and Hypothesis
1.6 Focus and Limitations
1.7 Outline
2 The Role Concept in Computer Science
2.1 What is a Role in Computer Science?
2.2 Roles in RoleDiSCo
3 State of the Art & Related Work
3.1 Role-based Modeling Abstractions for Software Systems
3.1.1 Classification
3.1.2 Approaches
3.1.3 Summary
3.2 Role-based Run-Time Systems
3.2.1 Classification
3.2.2 Approaches
3.2.3 Summary
3.3 Spontaneously Collaborating Run-Time Systems
3.3.1 Classification
3.3.2 Approaches
3.3.3 Summary
3.4 Summary
4 On-Demand Composition and Adaptation of Smart Service Systems
4.1 RoleDiSCo Development Methodology
4.1.1 Role-based Collaboration Specification for Smart Service Systems
4.1.2 Derived Partial Implementation
4.1.3 Player & Context Provision
4.2 RoleDiSCo Middleware Architecture for Smart Service Systems
4.2.1 Infrastructure Abstraction Layer
4.2.2 Context Management
4.2.3 Local Repositories & Knowledge
4.2.4 Discovery
4.2.5 Dispatcher
4.3 Coordinated Composition and Subsequent Adaptation
4.3.1 Initialization and Planning
4.3.2 Composition: Coordinating Subsystem
4.3.3 Composition: Non-Coordinating Subsystem
4.3.4 Competing Collaborations & Negotiation
4.3.5 Subsequent Adaptation
4.3.6 Terminating a Pervasive Collaboration
4.4 Summary
5 Implementing RoleDiSCo
5.1 RoleDiSCo Development Support
5.2 RoleDiSCo Middleware
5.2.1 Infrastructure Abstraction Layer
5.2.2 Knowledge Repositories and Local Class Discovery
5.2.3 Planner
6 Evaluation
6.1 Case Study: Distributed Slideshow
6.1.1 Scenario
6.1.2 Phase 1: Collaboration Design
6.1.3 Phase 2: Player Complementation
6.1.4 Coordinated Composition and Adaptation at Run Time
6.2 Runtime Evaluation
6.2.1 General Testbed Setup and Scenarios
6.2.2 Discovery Time
6.2.3 Composition Time
6.2.4 Discussion
6.3 The ›Role‹ of Roles
6.4 Summary
7 Conclusion
7.1 Summary
7.2 Research Results
7.3 Future Wor
Pervasive computing reference architecture from a software engineering perspective (PervCompRA-SE)
Pervasive computing (PervComp) is one of the most challenging research topics nowadays. Its complexity exceeds the outdated main frame and client-server computation models. Its systems are highly volatile, mobile, and resource-limited ones that stream a lot of data from different sensors. In spite of these challenges, it entails, by default, a lengthy list of desired quality features like context sensitivity, adaptable behavior, concurrency, service omnipresence, and invisibility. Fortunately, the device manufacturers improved the enabling technology, such as sensors, network bandwidth, and batteries to pave the road for pervasive systems with high capabilities. On the other hand, this domain area has gained an enormous amount of attention from researchers ever since it was first introduced in the early 90s of the last century. Yet, they are still classified as visionary systems that are expected to be woven into people’s daily lives. At present, PervComp systems still have no unified architecture, have limited scope of context-sensitivity and adaptability, and many essential quality features are insufficiently addressed in PervComp architectures. The reference architecture (RA) that we called (PervCompRA-SE) in this research, provides solutions for these problems by providing a comprehensive and innovative pair of business and technical architectural reference models. Both models were based on deep analytical activities and were evaluated using different qualitative and quantitative methods. In this thesis we surveyed a wide range of research projects in PervComp in various subdomain areas to specify our methodological approach and identify the quality features in the PervComp domain that are most commonly found in these areas. It presented a novice approach that utilizes theories from sociology, psychology, and process engineering. The thesis analyzed the business and architectural problems in two separate chapters covering the business reference architecture (BRA) and the technical reference architecture (TRA). The solutions for these problems were introduced also in the BRA and TRA chapters. We devised an associated comprehensive ontology with semantic meanings and measurement scales. Both the BRA and TRA were validated throughout the course of research work and evaluated as whole using traceability, benchmark, survey, and simulation methods. The thesis introduces a new reference architecture in the PervComp domain which was developed using a novel requirements engineering method. It also introduces a novel statistical method for tradeoff analysis and conflict resolution between the requirements. The adaptation of the activity theory, human perception theory and process re-engineering methods to develop the BRA and the TRA proved to be very successful. Our approach to reuse the ontological dictionary to monitor the system performance was also innovative. Finally, the thesis evaluation methods represent a role model for researchers on how to use both qualitative and quantitative methods to evaluate a reference architecture. Our results show that the requirements engineering process along with the trade-off analysis were very important to deliver the PervCompRA-SE. We discovered that the invisibility feature, which was one of the envisioned quality features for the PervComp, is demolished and that the qualitative evaluation methods were just as important as the quantitative evaluation methods in order to recognize the overall quality of the RA by machines as well as by human beings
Service-Oriented Architecture (SOA), Agile Development Methods and Quality Assurance (QA) : a case study
Dissertação (mestrado)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2019.Este trabalho propõe um framework batízado de NatVI e apresenta um estudo de caso que lidam
com a interface entre Service-Oriented Architecture (SOA). Agile Development e Quality
Assurance (QA). O framework NatVI busca apresentar uma solução para todo o ciclo de
desenvolvimento de software. neste caso com foco em aplicações baseadas em serviços. NatVI
foi resultado de uma revisão da literatura onde os 'trade off' conhecidos entre SOA e Métodos
Ágeis foram identificados e as soluções possíveis avaliadas e incorporadas ao produto final
Também foram consideradas as melhores práticas baseadas tanto nos princípios de SOA
quando nos princípios ágeis. Muito importante neste cenário foi não perder QA de vista. uma
necessidade intrínseca aos projetos de software. Tudo isso para responder ao aumento no
dinamismo dos ambientes de negócios que está aumentando a cada dia devido ao próprio
dinamismo do avanço tecnológico. As organizações são chamadas a entregar valores com
rapidez e confiança neste ambiente onde as possibilidades de soluções evoluem quase que
diariamente. E os governos não são diferentes, obrigados a prestar mais e melhores serviços
aos cidadãos e às empresas. O governo brasileiro não é uma exceção. As formas tradicionais
de pensar o processo de engenharia de software vêm apresentando algumas dificuldades para
lidar com este novo cenário. principalmente porque não são adequadas para lidar com
constantes mudanças nos requisitos e entregas rápidas, conceitos que SOA e Métodos de
Desenvolvimento Ágeis prometem ser capazes de responder. O estudo de caso foi realizado em
uma pequena unidade do governo federal brasileiro. Um órgão responsável pela supervisão de
um campo de interesse institucional para o país. O framework NatVI proposto foi aplicado em um
ambiente onde SOA já estava em uso, apesar de ínslpiente. O estudo de caso avaliou a evolução
da qualidade de software por meio do acompanhamento de métricas de erro no código fonte
Avaliou a evolução do entendimento sobre os métodos ágeis bem como o engajamento no
processo por parte da equipe de desenvolvimento. Avaliou ainda a satisfação dos clientes com
o novo processo de desenvolvimento. Durante o estudo de caso. aproveitou-se um treinamento
em desenvolvimento ágil que foi ministrado pela instituição à equipe e TI e alguns clientes
Algumas limitações foram identificadas. Por exemplo, o tamanho da equipe de TI envolvida e a
quantidade de clientes que participaram foi considerada pequena para uma inferência estatística
Uma avaliação subjetiva teve que ser feita para melhorar o entendimento dos números. Desta
forma, entrevistas semiestruturada foram feitas. Os resultados encontrados indicam que o
caminho é promissor. mas indica também que muitos estudos ainda necessitam ser feitos, o que
não é ruim, pois abre um campo vasto para pesquisas, ainda mais considerando outros
ingredientes que foram identificados durante este trabalho. que podem muito bem fazer parte de
estudos futuros. como containers e DevOps, por exemplo.Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES).This work proposes a framework named NatVI and presents a case study that deals with the
interface between the Service-Oríented Architecture (SOA) with Agile Development Methods and Qualíty Assurance (QA). The NatVI framework seeks to present a solution for the entire software
development cycle, in this case focusing on service-based applications. The framework was the
result of a literature review where the known trade-offs between SOA and Agile Methods were
identified and the possible solutions evaluated and incorporated unto the final product. Best
practices based on both the SOA principles and agile principles were also considered. It was very
important in this scenario not to cose QA of view, an intrinsic need for software projects. All this to
respond to the increase in the dynamism of business environments that ís increasing every day
due to the very dynamism of technological advancement. Organizations are called to deliver
values quickly and confidently in this environment where solutíons possibilities evolve almost
daily. And governments are no different. obliged to provide more and better services to citizens
and busínesses. The Brazilian government is no exception. The traditional ways of thinking the
software engineering process have presented some difficulties in dealing with this new scenario.
mainly because they are not adequate to deal with constant changes in requirements and fast
deliveries. concepts that SOA and Agite Development Methods promise to be able to respond.
The case study was carríed out in a small unit of the Brazilian federal government. A unit that is
responsible for supervisíng a field of institutional interest to the country. The proposed NatVI
framework was applied in an environment where SOA was already in use, though ít was insipid
The case study evaluated the evolution of software quality through the monitoring of errar metrics
in the source cede. It evaluated the evolution of the understandíng of the agíle methods as well
as the engagement in the process by the development team. It also evaluated customer
satisfaction with the new development process. During the case study, an agile development
training was used that was given by the institution to the team and IT and some clíents. Some
limitations have been identified. For example, the size of the IT staff involved and the number of
customers who partícipated was considered small for an inference statistics. A subjective
assessment had to be made to improve the understanding of numbers. In this way. semi-
structured interviews were made. The results indicate that the way ís promising, but it also
índicates that many studíes still need to be done. which ís not bad, lince it opens up a vast fleld
for research. even more considering other concepts that were identlfied during this work, which
can greatly well be part of future studies. such as containers and DevOps, for example
SusTrainable: Promoting Sustainability as a Fundamental Driver in Software Development Training and Education. 2nd Teacher Training, January 23-27, 2023, Pula, Croatia. Revised lecture notes
This volume exhibits the revised lecture notes of the 2nd teacher training
organized as part of the project Promoting Sustainability as a Fundamental
Driver in Software Development Training and Education, held at the Juraj
Dobrila University of Pula, Croatia, in the week January 23-27, 2023. It is the
Erasmus+ project No. 2020-1-PT01-KA203-078646 - Sustrainable. More details can
be found at the project web site https://sustrainable.github.io/
One of the most important contributions of the project are two summer
schools. The 2nd SusTrainable Summer School (SusTrainable - 23) will be
organized at the University of Coimbra, Portugal, in the week July 10-14, 2023.
The summer school will consist of lectures and practical work for master and
PhD students in computing science and closely related fields. There will be
contributions from Babe\c{s}-Bolyai University, E\"{o}tv\"{o}s Lor\'{a}nd
University, Juraj Dobrila University of Pula, Radboud University Nijmegen,
Roskilde University, Technical University of Ko\v{s}ice, University of
Amsterdam, University of Coimbra, University of Minho, University of Plovdiv,
University of Porto, University of Rijeka.
To prepare and streamline the summer school, the consortium organized a
teacher training in Pula, Croatia. This was an event of five full days,
organized by Tihana Galinac Grbac and Neven Grbac. The Juraj Dobrila University
of Pula is very concerned with the sustainability issues. The education,
research and management are conducted with sustainability goals in mind.
The contributions in the proceedings were reviewed and provide a good
overview of the range of topics that will be covered at the summer school. The
papers in the proceedings, as well as the very constructive and cooperative
teacher training, guarantee the highest quality and beneficial summer school
for all participants.Comment: 85 pages, 8 figures, 3 code listings and 1 table; editors: Tihana
Galinac Grbac, Csaba Szab\'{o}, Jo\~{a}o Paulo Fernande
User-is Partnership And Is Development Success
Since 1970, high project failure rate and low user satisfaction has elicited research on users and their role in the process. It is believed that users\u27 physical participation or psychological involvement in the development process can improve user satisfaction and/or system quality. Previous research treats users as a source of requirements and hypothesizes satisfaction to increase when requirements are fulfilled. However, inconsistent conclusions lead to confusion. Recently, a co-production concept has been proposed to understand consumer participation in product development process. In this reconceptualization, users, instead of requirement generator, should be part of the production. In this study, based on co-production concept, we view users as one knowledge source and study how knowledge can be coordinated through the co-production process. After collecting data from 97 system users, most of the hypothesized relationships have been confirmed. IS-user co-production has a positive effect on expertise coordination and, in turn, improves teamwork outcomes. The only relationship that is not significant is between bring expertise to bear and creativity. Implications for practitioner and suggestion for future research are provided. Co-production was found to be a second-order construct comprised of multiple formative constructs. Higher levels of coproduction behavior were expected and were found to produce better outcomes of collaborative efforts. For future study, this relationship is expected to hold true when pairs of information systems developers and information systems users who have worked together on the same information systems development project are surveyed at the end of their projects (or just before it ends or recently thereafter)
Information Outlook, May 2006
Volume 10, Issue 5https://scholarworks.sjsu.edu/sla_io_2006/1004/thumbnail.jp
- …