2,115 research outputs found

    A guideline for requirements management in GitHub with lean approach

    Get PDF
    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

    Get PDF
    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

    Full text link
    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

    Full text link
    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

    Get PDF
    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

    Full text link
    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

    Get PDF
    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

    Get PDF
    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

    Get PDF
    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
    • 

    corecore