2,115 research outputs found
A guideline for requirements management in GitHub with lean approach
GitHub is an online platform for collaborating and sharing code. In recent years its popularity has increased widely and both people and different size organizations utilize its powerful features. One of those features is a lightweight issue tracker which is meant for handling features and identified errors of software. The issue tracker is intuitive to use and simplifies a lot of things, but what if it is to be used as a requirements management tool?
Requirements management is the last step of requirements engineering process. This process aims to identify, document and manage all the requirements valid for the software product. Requirements management focuses on tracking how requirements are fulfilled and keeping the information associated to requirements intact.
This M.Sc. Thesis represents a semi-formal guideline for handling requirements management in GitHub. The guideline is evaluated on a theoretical level by comparing how well it accomplishes requirements management objectives and fits in an agile software development environment. To assess the suitability for the agile approach, the guideline is compared against lean principles. Lean principles originate from Toyotaâs successful manufacturing practices and are converted to usable form in a software development. On a practical level a case study is carried out where the guideline is put into a real use.
Similar research hasnât been done before, making the results novel. Both the theoretical assessment and the practical case study point out that the guideline and GitHub are well-suited for requirements management in an agile environment
Software Engineering Timeline: major areas of interest and multidisciplinary trends
IngenierĂa del software. EvolucionSociety today cannot run without software and by extension, without Software Engineering. Since this discipline emerged in 1968, practitioners have learned valuable lessons that have contributed to current practices. Some have become outdated but many are still relevant and widely used. From the personal and incomplete perspective of the authors, this paper not only reviews the major milestones and areas of interest in the Software Engineering timeline helping software engineers to appreciate the state of things, but also tries to give some insights into the trends that this complex engineering will see in the near future
Scrum2Kanban: Integrating Kanban and Scrum in a University Software Engineering Capstone Course
Using university capstone courses to teach agile software development
methodologies has become commonplace, as agile methods have gained support in
professional software development. This usually means students are introduced
to and work with the currently most popular agile methodology: Scrum. However,
as the agile methods employed in the industry change and are adapted to
different contexts, university courses must follow suit. A prime example of
this is the Kanban method, which has recently gathered attention in the
industry. In this paper, we describe a capstone course design, which adds the
hands-on learning of the lean principles advocated by Kanban into a capstone
project run with Scrum. This both ensures that students are aware of recent
process frameworks and ideas as well as gain a more thorough overview of how
agile methods can be employed in practice. We describe the details of the
course and analyze the participating students' perceptions as well as our
observations. We analyze the development artifacts, created by students during
the course in respect to the two different development methodologies. We
further present a summary of the lessons learned as well as recommendations for
future similar courses. The survey conducted at the end of the course revealed
an overwhelmingly positive attitude of students towards the integration of
Kanban into the course
Beyond Surveys: Analyzing Software Development Artifacts to Assess Teaching Efforts
This Innovative Practice Full Paper presents an approach of using software
development artifacts to gauge student behavior and the effectiveness of
changes to curriculum design. There is an ongoing need to adapt university
courses to changing requirements and shifts in industry. As an educator it is
therefore vital to have access to methods, with which to ascertain the effects
of curriculum design changes. In this paper, we present our approach of
analyzing software repositories in order to gauge student behavior during
project work. We evaluate this approach in a case study of a university
undergraduate software development course teaching agile development
methodologies. Surveys revealed positive attitudes towards the course and the
change of employed development methodology from Scrum to Kanban. However,
surveys were not usable to ascertain the degree to which students had adapted
their workflows and whether they had done so in accordance with course goals.
Therefore, we analyzed students' software repository data, which represents
information that can be collected by educators to reveal insights into learning
successes and detailed student behavior. We analyze the software repositories
created during the last five courses, and evaluate differences in workflows
between Kanban and Scrum usage
An overview of the planned CCAT software system
CCAT will be a 25m diameter sub-millimeter telescope capable of operating in
the 0.2 to 2.1mm wavelength range. It will be located at an altitude of 5600m
on Cerro Chajnantor in northern Chile near the ALMA site. The anticipated first
generation instruments include large format (60,000 pixel) kinetic inductance
detector (KID) cameras, a large format heterodyne array and a direct detection
multi-object spectrometer. The paper describes the architecture of the CCAT
software and the development strategy.Comment: 17 pages, 6 figures, to appear in Software and Cyberinfrastructure
for Astronomy III, Chiozzi & Radziwill (eds), Proc. SPIE 9152, paper ID
9152-10
Consequences of Unhappiness While Developing Software
The growing literature on affect among software developers mostly reports on
the linkage between happiness, software quality, and developer productivity.
Understanding the positive side of happiness -- positive emotions and moods --
is an attractive and important endeavor. Scholars in industrial and
organizational psychology have suggested that also studying the negative side
-- unhappiness -- could lead to cost-effective ways of enhancing working
conditions, job performance, and to limiting the occurrence of psychological
disorders. Our comprehension of the consequences of (un)happiness among
developers is still too shallow, and is mainly expressed in terms of
development productivity and software quality. In this paper, we attempt to
uncover the experienced consequences of unhappiness among software developers.
Using qualitative data analysis of the responses given by 181 questionnaire
participants, we identified 49 consequences of unhappiness while doing software
development. We found detrimental consequences on developers' mental
well-being, the software development process, and the produced artifacts. Our
classification scheme, available as open data, will spawn new happiness
research opportunities of cause-effect type, and it can act as a guideline for
practitioners for identifying damaging effects of unhappiness and for fostering
happiness on the job.Comment: 6 pages. To be presented at the Second International Workshop on
Emotion Awareness in Software Engineering, colocated with the 39th
International Conference on Software Engineering (ICSE'17). Extended version
of arXiv:1701.02952v2 [cs.SE
CompliancePal: A Tool for Supporting Practical Agile and Regulatory-Compliant Development of Medical Software
As digital transformation affects more and more industries, the increased role of software and the skills required to develop software trigger a ripple effect. Entire industries, where regulations and government standards play an important role (e.g. health care, avionics, etc.), have used long development cycles that relied on detailed up-front planning before advancing to any detailed decision. In contrast to this mindset, agile software development has proven to deliver results that satisfy customers needs faster than traditional waterfall methodologies. The lack of detailed upfront planning and fast delivery cycles have led to situations where the use of agile became synonymous with lack of documentation and poor quality, and hence the perception that the approach is not suitable for regulated systems. In this experience paper we describe the implementation of a service that integrates medical device software compliance specific activities such as architectural design and limited risk management into the daily agile practices of a software development team.Peer reviewe
Healthy or Not: A Way to Predict Ecosystem Health in GitHub
With the development of open source community, through the interaction of developers, the collaborative development of software, and the sharing of software tools, the formation of open source software ecosystem has matured. Natural ecosystems provide ecological services on which human beings depend. Maintaining a healthy natural ecosystem is a necessity for the sustainable development of mankind. Similarly, maintaining a healthy ecosystem of open source software is also a prerequisite for the sustainable development of open source communities, such as GitHub. This paper takes GitHub as an example to analyze the health condition of open source ecosystem and, also, it is a research area in Symmetry. Firstly, the paper presents the healthy definition of GitHub open source ecosystem health and, then, according to the main components of natural ecosystem health, the paper proposes the health indicators and health indicators evaluation method. Based on the above, the GitHub ecosystem health prediction method is proposed. By analyzing the projects and data collected in GitHub, it is found that, using the proposed evaluation indicators and method, we can analyze the healthy development trend of the GitHub ecosystem and contribute to the stability of ecosystem development
Agile Processes in Software Engineering and Extreme Programming â Workshops
This open access book constitutes papers from the 5 research workshops, the poster presentations, as well as two panel discussions which were presented at XP 2021, the 22nd International Conference on Agile Software Development, which was held online during June 14-18, 2021. XP is the premier agile software development conference combining research and practice. It is a unique forum where agile researchers, practitioners, thought leaders, coaches, and trainers get together to present and discuss their most recent innovations, research results, experiences, concerns, challenges, and trends. XP conferences provide an informal environment to learn and trigger discussions and welcome both people new to agile and seasoned agile practitioners. The 18 papers included in this volume were carefully reviewed and selected from overall 37 submissions. They stem from the following workshops: 3rd International Workshop on Agile Transformation 9th International Workshop on Large-Scale Agile Development 1st International Workshop on Agile Sustainability 4th International Workshop on Software-Intensive Business 2nd International Workshop on Agility with Microservices Programmin
- âŠ