460,278 research outputs found

    An experiment on teaching coordination in a globally distributed software engineering class

    Full text link
    The importance of planning and management skills in software development is very difficult to convey in software engineering courses. We present the synopsis of an assignment whose purpose is to demonstrate the significance of such skills, including effective communication, team coordi-nation and collaboration, and overall project planning. The assignment is organized in the context of a distributed software engineering course carried out in collaboration with 12 universities in South America, Europe and Africa. The assignment is a globally distributed contest issued before most development activities related to the course’s software project are performed, aiming at favor-ing the collaboration between students prior to project development. The contest does not involve any programming, and is not related to the project development activities. Instead, it consists of making teams in different countries compete in collaboratively solving a set of very simple tasks. The complexity of the activity is in team collaboration and coordination, and their lack is evident when the tasks are not correctly solved, or not solved in time. Despite the simplicity of the as-signment, students have found it useful in helping them understand the significance of management and planning challenges in distributed software development. Moreover, the assignment helped in team building, by creating a better team atmosphere and contributing in identifying team members better suited for management

    Management Strategies for Adopting Agile Methods of Software Development in Distributed Teams

    Get PDF
    Between 2003 and 2015, more than 61% of U.S. software development teams failed to satisfy project requirements, budgets, or timelines. Failed projects cost the software industry an estimated 60 billion dollars. Lost opportunities and misused resources are often the result of software development leaders failing to implement appropriate methods for managing software projects. The purpose of this qualitative multiple case study was to explore strategies software development managers use in adopting Agile methodology in the context of distributed teams. The tenets of Agile approach are individual interaction over tools, working software over documentation, and collaboration over a contract. The conceptual framework for the study was adapting Agile development methodologies. The targeted population was software development managers of U.S.-based companies located in Northern California who had successfully adopted Agile methods for distributed teams. Data were collected through face-to-face interviews with 5 managers and a review of project-tracking documentation and tools. Data analysis included inductive coding of transcribed interviews and evaluation of secondary data to identify themes through methodological triangulation. Findings indicated that coaching and training of teams, incremental implementation of Agile processes, and proactive management of communication effectiveness are effective strategies for adopting Agile methodology in the context of distributed teams. Improving the efficacy of Agile adoption may translate to increased financial stability for software engineers across the world as well as accelerate the successful development of information systems, thereby enriching human lives

    Software Development Team Dynamics: Control, Coordination, and Secure Software

    Get PDF
    In secure software has resulted of millions of dollars of company’s revenue as complex organizational systems are often software intensive. Researchers are still interested in the impact of the people involved, the process used and the project characteristics. This study looks at the security awareness and maturity level of those involved in the development process coupled with the management of the process to identify factors that lead to enhanced secure software development. Following a survey of prior literature, it is hypothesized that software development team members’ security awareness and maturity affect the design of software in a distributed context. Due to the nature of work of distributed team members, the relationship between team security awareness and maturity coordination on secure software design are also posited to be impacted by control types and coordination mechanisms. We contribute to literature by expanding the understanding of the process of creating secure software

    Real-Time Control Mediation in Agile Distributed Software Development

    Get PDF
    Agile distributed environments pose particular challenges related to control of quality and collaboration in software development. Moreover, while face-to-face interaction is fundamental in agile development, distributed environments must rely extensively on mediated interactions. On this backdrop, we report from an in-depth case study of an agile distributed software project. Applying Kirsch’s elements of control framework, we analyze how actors in this context used different elements of control. We offer a description of the general management context and provide a detailed analysis of how control was mediated over distance by technology through real-time exchanges. Contrary to previous research, the analysis suggests that both formal and informal elements of real-time mediated control were used; that evolving goals and adjustment of expectations were two of the main issues in real-time mediated control exchanges; and, that the actors, despite distances in space and culture, developed a clan-like pattern mediated by technology to help control quality and collaboration in software development

    Configuration management for a distributed and collaborative software development environment

    Get PDF
    Thesis (M.Eng.)--Massachusetts Institute of Technology, Dept. of Civil and Environmental Engineering, 2000.Includes bibliographical references (leaves 104-106).In the face of changing technology, the world is becoming more global by the minute. This globalization has resulted in dispersed teams and collaborative opportunities, which offer value and depth to projects. Software development also reflects this globalization, as do all the processes involved in software development. It is important to understand these changes and how they affect not only the entire development process as a whole but also each individual part of the process. Configuration management is an integral part of the software development process. In order to perform good software development, it is imperative to understand and be able to implement proper configuration management. Thus, as configuration management is important to software development, it is also important to study the effects of how the changing context of software development toward distributed and collaborative environments affects configuration management. Not only does configuration management influence the transition to this type of environment, it also is quite affected by it. In this thesis, I aim to examine the impact of a distributed and collaborative development environment on configuration management. I will first give an overview of software engineering with respect to configuration management; next, I will provide and introduction to traditional configuration management, and in the following chapter, I will discuss distributed and collaborative configuration management as it exists today. Next, I will provide a case study of the ieCollab project, a project in which developers were dispersed and a great deal of collaboration occurred, and finally, I will discuss the future of collaborative and distributed configuration management.by Teresa Liu.M.Eng

    Managing Requirements Change the Informal Way: When Saying 'No' is Not an Option

    Get PDF
    © 2016 IEEE. Software has always been considered as malleable. Changes to software requirements are inevitable during the development process. Despite many software engineering advances over several decades, requirements changes are a source of project risk, particularly when businesses and technologies are evolving rapidly. Although effectively managing requirements changes is a critical aspect of software engineering, conceptions of requirements change in the literature and approaches to their management in practice still seem rudimentary. The overall goal of this study is to better understand the process of requirements change management. We present findings from an exploratory case study of requirements change management in a globally distributed setting. In this context we noted a contrast with the traditional models of requirements change. In theory, change control policies and formal processes are considered as a natural strategy to deal with requirements changes. Yet we observed that "informal requirements changes" (InfRc) were pervasive and unavoidable. Our results reveal an equally 'natural' informal change management process that is required to handle InfRc in parallel. We present a novel model of requirements change which, we argue, better represents the phenomenon and more realistically incorporates both the informal and formal types of change

    Insights into software development approaches: mining Q &A repositories

    Get PDF
    © 2023 The Author(s). This is an open access article distributed under the terms of the Creative Commons Attribution License (CC BY), https://creativecommons.org/licenses/by/4.0/Context: Software practitioners adopt approaches like DevOps, Scrum, and Waterfall for high-quality software development. However, limited research has been conducted on exploring software development approaches concerning practitioners’ discussions on Q &A forums. Objective: We conducted an empirical study to analyze developers’ discussions on Q &A forums to gain insights into software development approaches in practice. Method: We analyzed 13,903 developers’ posts across Stack Overflow (SO), Software Engineering Stack Exchange (SESE), and Project Management Stack Exchange (PMSE) forums. A mixed method approach, consisting of the topic modeling technique (i.e., Latent Dirichlet Allocation (LDA)) and qualitative analysis, is used to identify frequently discussed topics of software development approaches, trends (popular, difficult topics), and the challenges faced by practitioners in adopting different software development approaches. Findings: We identified 15 frequently mentioned software development approaches topics on Q &A sites and observed an increase in trends for the top-3 most difficult topics requiring more attention. Finally, our study identified 49 challenges faced by practitioners while deploying various software development approaches, and we subsequently created a thematic map to represent these findings. Conclusions: The study findings serve as a useful resource for practitioners to overcome challenges, stay informed about current trends, and ultimately improve the quality of software products they develop.Peer reviewe

    A model-driven concept for the automatic integration of legacy protocols to distributed component-oriented software systems

    Get PDF
    The implementation of communication protocols is an important development task that appears frequently in software projects. This article is a vision paper that describes the components of the currently available implementation strategies and problems that arise. The article introduces the main existing protocol engineering techniques and puts them into the context of model driven software development. At the end a methodology is introduced for the automatic generation of manager interfaces of Device Agent protocols for the use in a distributed component oriented environment, using ASN.1 and SDL. This article describes the preliminary results of the MOSES project (model-driven software engineering of distributed embedded systems) which is funded by the German ministry of Education and Research (BMBF). In this project the authors are concentrating on medical and facility management areas where they have particular experiences.Die Implementierung von Kommunikationsprotokollen zu externen Systemen ist eine wichtige Aufgabe, welche häufig in Softwareprojekten zu realisieren ist. Dieser Artikel ist ein Ideenpapier, welches die Komponenten bisheriger Implementierungsstrategien und deren Probleme beschreibt. Der Artikel führt die wesentlichen Techniken zur Protokollimplementierung ein und stellt diese im Kontext der modelgetriebenen Softwareentwicklung dar. Zum Schluss wird eine Methode mit ASN.1 und SDL vorgestellt, welche die automatische Generierung von Manager-Schnittstellen für die Protokolle von Geräte- Agenten ermöglicht und dabei den Einsatz in verteilten komponentenbasierten Systemen erlaubt. Der Artikel beschreibt die Zwischenergebnisse des vom Bundesministerium für Bildung und Forschung (BMBF) geförderten MOSES-Projektes (Modellgetriebene Software- Entwicklung von vernetzten Embedded Systems). In dem Projekt konzentrieren sich die Autoren auf die Bereiche Medizin- und Gebäudetelematik, worin sie besondere Erfahrungen besitzen

    Modelling mobile health systems: an application of augmented MDA for the extended healthcare enterprise

    Get PDF
    Mobile health systems can extend the enterprise computing system of the healthcare provider by bringing services to the patient any time and anywhere. We propose a model-driven design and development methodology for the development of the m-health components in such extended enterprise computing systems. The methodology applies a model-driven design and development approach augmented with formal validation and verification to address quality and correctness and to support model transformation. Recent work on modelling applications from the healthcare domain is reported. One objective of this work is to explore and elaborate the proposed methodology. At the University of Twente we are developing m-health systems based on Body Area Networks (BANs). One specialization of the generic BAN is the health BAN, which incorporates a set of devices and associated software components to provide some set of health-related services. A patient will have a personalized instance of the health BAN customized to their current set of needs. A health professional interacts with their\ud patientsÂż BANs via a BAN Professional System. The set of deployed BANs are supported by a server. We refer to this distributed system as the BAN System. The BAN system extends the enterprise computing system of the healthcare provider. Development of such systems requires a sound software engineering approach and this is what we explore with the new methodology. The methodology is illustrated with reference to recent modelling activities targeted at real implementations. In the context of the Awareness project BAN implementations will be trialled in a number of clinical settings including epilepsy management and management of chronic pain

    A Case Study of Offshore Development across IS Courses: Lessons Learned from a Global Student Project

    Get PDF
    As global, virtual teams become more prevalent in the workplace, it is imperative that we, as educators, prepare IS students for this trend. Offshoring, virtual teams, and globalization are themes often discussed in the classroom, but students rarely experience these concepts. This paper is a case study of three globally distributed universities worked together on a project in order to equip students with knowledge and experience about these trends in an IS context. In spring 2008, students from a technical management course in the USA, a project development course in the USA, and a programming course in India worked in teams to propose, design, develop, and test software prototypes. The case study in this paper presents the three phases of this project: 1) planning, 2) execution, and 3) reflection. The planning phase includes the identification of teams, tasks, and technology. The execution phase includes challenges and successes that can be avoided or enhanced in future iterations. Finally, the reflection phase presents lessons learned from the student and instructor perspective as well as perceived value of the project across students, instructors, and industry representatives. In general, students perceived this project to be quite valuable for their future careers and successful as a learning experience, but the project was not without its challenges throughout
    • …
    corecore