15,294 research outputs found

    Information Systems Development Methodologies Transitions: An Analysis of Waterfall to Agile Methodology

    Get PDF

    DevOps in Practice -- A preliminary Analysis of two Multinational Companies

    Full text link
    DevOps is a cultural movement that aims the collaboration of all the stakeholders involved in the development, deployment and operation of soft-ware to deliver a quality product or service in the shortest possible time. DevOps is relatively recent, and companies have developed their DevOps prac-tices largely from scratch. Our research aims to conduct an analysis on practic-ing DevOps in +20 software-intensive companies to provide patterns of DevOps practices and identify their benefits and barriers. This paper presents the preliminary analysis of an exploratory case study based on the interviews to relevant stakeholders of two (multinational) companies. The results show the benefits (software delivery performance) and barriers that these companies are dealing with, as well as DevOps team topology they approached during their DevOps transformation. This study aims to help practitioners and researchers to better understand DevOps transformations and the contexts where the practices worked. This, hopefully, will contribute to strengthening the evidence regarding DevOps and supporting practitioners in making better informed decisions about the return of investment when adopting DevOps.Comment: 8 pages, 1 figure, 2 tables, conferenc

    Experimenting with Realism in Software Engineering Team Projects: An Experience Report

    Get PDF
    Over Several years, we observed that our students were sceptical of Software Engineering practices, because we did not convey the experience and demands of production quality software development. Assessment focused on features delivered, rather than imposing responsibility for longer term `technical debt'. Academics acting as 'uncertain' customers were rejected as malevolent and implausible. Student teams composed of novices lacked the benefits of leadership provided by more experienced engineers. To address these shortcomings, real customers were introduced, exposing students to real requirements uncertainty. Flipped classroom teaching was adopted, giving teams one day each week to work on their project in a redesigned laboratory. Software process and quality were emphasised in the course assessment, imposing technical debt. Finally, we introduced a leadership course for senior students, who acted as mentors to the project team students. This paper reports on the experience of these changes, from the perspective of different stakeholders

    Challenges to Architecture Decision-Making in Agile Development Environments

    Get PDF
    Käesoleva magistritöö eesmärk on uurida väljakutseid, mis võivad esineda tarkvaraarhitektuuri kombineerimisel väleda tarkvaraarendusega ning selgitada välja põhjused, mis neid esile toovad. Kuigi antud teema on olnud juba päevakorras mõnda aega, siis jätkuvalt esineb vastuolusid väleda tarkvaraarenduse ja tarkvaraarhitektuuri sobitamisel nii teadlaste kui praktikute seas. Väleda tarkvaraarenduse ning arhitektuuri toetajaid võib leida sama palju kui mittetoetajaid, kes väidavad, et neid kahte kokku sobitada pole võimalik. Käesolevas magistritöös püstitatud uurimisküsimuste vastamisel on kasutatud kahte uurimismetoodikat: kirjanduse ülevaade ning juhtumiuuring. Kirjanduse ülevaade käsitleb varem avaldatud uurimistöid ning raskuseid, mida on antud valdkonnas senimaani täheldatud. Lisaks sellele on arutlusse võetud kirjanduses välja toodud soovitused, mida järgida arhitektuuri arendamisel väledas arenduskeskkonnas. Magistritöö teine osa käsitleb Eestis tegutsevas tarkvara idufirmas Stagnation Lab ja Siseministeeriumi IT osakonnas (SMIT) läbi viidud juhtumiuuringut. Stagnation Labis analüüsiti kahte projekti ning intervjueeriti mõlema projekti rollis olnud tarkvaraarhitekte, et uurida, milliseid raskusi kohati süsteemi ning eelkõige tarkvara arhitektuuri arenduse käigus. Samal eesmärgil intervjueeriti ka SMITi projekti eestvedanud tarkvaraarhitekti.The goal of this master thesis is to explore challenges of architecture decision-making in agile environments and trying to find out what causes issues regarding agile architecture - the latter being a set of values and practices supporting the effective evolution of the design and system architecture, concurrent with the implementation of new business functionality. Although the topic has been existent for some time, there are still tensions between software architecture and agility that are not well understood by agile practitioners and researchers alike. While there are many active promoters of agile architecture design, there can be found equally many non-believers who state that agility and architecture cannot work together. To find answers to the research questions stated in this thesis, two research methodologies have been used: a literature survey and a case study. The literature survey covers related work on agility in software architecture and the challenges that come with it. The survey includes difficulties that have been observed regarding the use of agile development methods when building the architecture. In addition, recommended practices are discussed for applying agile processes associated with sound architectural principles. The second part of the thesis is a case study within a software startup company, Stagnation Lab, and the SMIT (Ministry of the Interior IT and Development Centre). In Stagnation Lab, two projects were analyzed. The main architects behind the design of each project were interviewed to look deeper into potential challenges when applying agile practices in architecture development. Similarly, at SMIT, the main architect responsible for the design of a monitoring information system for the Rescue and Fire Department was interviewed

    The Difficulty With Introducing Project Management Techniques in Digital Startups

    Get PDF
    Digital startups face complex issues when it comes to accurately using project management techniques because of the startup’s scarcity of resources and the governance of projects , such as having different stages of growth and development. Since project management is needed in almost all businesses, dealing with this problem is important to improve the growth of startups and their organizational issues. Because of the correlation between startups using traditional project management techniques and their problems with implementing project management, this traditional model might not be relevant for startups. Startups seem to require more flexible and quick solutions to project management, suggesting that agile methods might be the right way for most digital startups to use project management. By looking at how different startups in different stages of development deal with problems in implementing project management by use of a qualitative research study, this paper looks to back the statement that the way that startups function leads to issues with implementing project management. Looking at how different startups have dealt with these problems might suggest where and in which stage the problem lies, leading to the possible solution of project management difficulty in startups

    Role clarity deficiencies can wreck agile teams

    Get PDF
    Background One of the twelve agile principles is to build projects around motivated individuals and trust them to get the job done. Such agile teams must self-organize, but this involves conflict, making self-organization difficult. One area of difficulty is agreeing on everybody’s role. Background What dynamics arise in a self-organizing team from the negotiation of everybody’s role? Method We conceptualize observations from five agile teams (work observations, interviews) by Charmazian Grounded Theory Methodology. Results We define role as something transient and implicit, not fixed and named. The roles are characterized by the responsibilities and expectations of each team member. Every team member must understand and accept their own roles (Local role clarity) and everbody else’s roles (Team-wide role clarity). Role clarity allows a team to work smoothly and effectively and to develop its members’ skills fast. Lack of role clarity creates friction that not only hampers the day-to-day work, but also appears to lead to high employee turnover. Agile coaches are critical to create and maintain role clarity. Conclusions Agile teams should pay close attention to the levels of Local role clarity of each member and Team-wide role clarity overall, because role clarity deficits are highly detrimental

    Implementing Agile practices in a large game development company

    Get PDF
    Abstract. Large game development companies working with complex projects need to find ways to work iteratively and adjust to changing requirements in order to succeed. To achieve this, many of them turn to Agile frameworks and practices. In this thesis, the purpose is to analyze how these large game development companies implement Agile working practices and what are the related benefits and challenges. The roles of human skills in the implementation process are also examined. This is done by conducting a single-case study of the Agile implementation process in a case company. The findings of the study indicate that the Agile implementation process in the case company follows a general change process structure, which consists of seven core activities: recognition and start, diagnosis, planning, implementation and review, sustaining change, learning, and managing people issues. During the implementation process, the most significant challenges the case company faced were connected to implementing Agile ways of leading development, such as Product Ownership and Products Backlog. In addition, the relationship of human skills and Agile implementation appears to be cyclical; while well-developed human skills such as support, communication, and conflict solving skills make the implementation process easier, properly implemented Agile practices may also improve human skills. This study contributes to Agile implementation research by expanding the knowledge of Agile implementation in large game development organizations and elaborating the connection between the implementation process and change management theory. The findings of the study can also help those implementing Agile in game companies to predict the structure of the process and anticipate the potential challenges of it.Tiivistelmä. Suurten ja monimutkaisten projektien parissa työskentelevien pelialan yritysten täytyy löytää tapoja työskennellä iteratiivisesti ja sopeutua muutoksiin menestyäkseen. Tästä syystä monet niistä kääntyvät ketterien menetelmien puoleen. Tässä diplomityössä tarkoitus on analysoida sitä, miten nämä yritykset ottavat käyttöön ketteriä menetelmiä ja mitä hyötyjä ja haasteita prosessiin liittyy. Myös inhimillisten taitojen rooleja käyttöönottoprosessissa tutkitaan. Tutkimuksessa perehdytään ketterien menetelmien käyttöönottoon kohdeyrityksessä yksittäistapaustutkimuksena. Tutkimuksen tulokset osoittavat, että kohdeyrityksessä ketterien menetelmien käyttöönottoprosessi mukailee yleisen muutosprosessin rakennetta, joka koostuu seitsemästä toiminnosta: muutostarpeen tunnistamisesta ja prosessin aloittamisesta, diagnosoinnista, suunnittelusta, käyttöönotosta ja arvioinnista, muutoksen ylläpitämisestä, oppimisesta ja ihmisiin liittyvien asioiden johtamisesta. Keskeisimmät kohdeyrityksen käyttöönottoprosessin aikana kohtaamat haasteet liittyivät ketterien menetelmien mukaisten johtamistapojen käyttöönottoon kuten tuoteomistajuuteen ja tuotteen tehtävälistoihin. Inhimillisten taitojen ja ketterien menetelmien käyttöönoton suhde puolestaan vaikuttaa sykliseltä; samalla kun hyvät inhimilliset taidot kuten tuki-, kommunikaatio-, ja konfliktienselvittelytaidot tekevät käyttöönottoprosessista helpomman, voivat ketterät menetelmät puolestaan kehittää inhimillisiä taitoja. Tämä tutkimus edistää ketterien menetelmien käyttöönottoon liittyvää tutkimusta kasvattamalla ymmärrystä menetelmien käyttöönotosta suurissa pelialan yrityksissä ja lisäämällä tietoa käyttöönottoprosessin ja muutoksenhallinnan teorian välisestä yhteydestä. Tutkimuksen tulokset voivat myös auttaa ketterien menetelmien käyttöönottoa pelialan yrityksissä johtavia henkilöitä ennakoimaan käyttöönottoprosessin kulkua ja siihen liittyviä haasteita

    Data management and Data Pipelines: An empirical investigation in the embedded systems domain

    Get PDF
    Context: Companies are increasingly collecting data from all possible sources to extract insights that help in data-driven decision-making. Increased data volume, variety, and velocity and the impact of poor quality data on the development of data products are leading companies to look for an improved data management approach that can accelerate the development of high-quality data products. Further, AI is being applied in a growing number of fields, and thus it is evolving as a horizontal technology. Consequently, AI components are increasingly been integrated into embedded systems along with electronics and software. We refer to these systems as AI-enhanced embedded systems. Given the strong dependence of AI on data, this expansion also creates a new space for applying data management techniques. Objective: The overall goal of this thesis is to empirically identify the data management challenges encountered during the development and maintenance of AI-enhanced embedded systems, propose an improved data management approach and empirically validate the proposed approach.Method: To achieve the goal, we conducted this research in close collaboration with Software Center companies using a combination of different empirical research methods: case studies, literature reviews, and action research.Results and conclusions: This research provides five main results. First, it identifies key data management challenges specific to Deep Learning models developed at embedded system companies. Second, it examines the practices such as DataOps and data pipelines that help to address data management challenges. We observed that DataOps is the best data management practice that improves the data quality and reduces the time tdevelop data products. The data pipeline is the critical component of DataOps that manages the data life cycle activities. The study also provides the potential faults at each step of the data pipeline and the corresponding mitigation strategies. Finally, the data pipeline model is realized in a small piece of data pipeline and calculated the percentage of saved data dumps through the implementation.Future work: As future work, we plan to realize the conceptual data pipeline model so that companies can build customized robust data pipelines. We also plan to analyze the impact and value of data pipelines in cross-domain AI systems and data applications. We also plan to develop AI-based fault detection and mitigation system suitable for data pipelines

    RAD Applied in the Context of Investment Banking

    Get PDF
    RAD as a methodology for implementing information systems has been used in a broad range of domains utilizing technology as an informational backbone but perhaps one of the main areas where this approach has been proven to be a natural fit has been in the investment banking (IB) industry, most notably when applied to trading systems. This paper introduces some of the main tenants of RAD development and focuses on a number of case studies where RAD has proven to be an extremely suitable method for implementing solutions required in the IB industry as well as explaining why RAD may be more successful than other classic de-velopment methods when applied to IB related solutions.RAD, Information Systems, Investment Banking, Trading Systems
    corecore