4,588 research outputs found

    Jatkuvaan ohjelmistokehitykseen siirtyminen vakiintuneessa organisaatiossa

    Get PDF
    Software development today has rapidly developed into a significant part of business and its value creation chain. Increasingly more stakeholders within an organization are tied in with more frequent software releases. This has driven organizations to adapt to more flexible and continuous software development methods. This Master’s Thesis addresses the challenges, advantages and disadvantages associated in shifting an organization’s software development culture towards that of continuous development. The specific type of continuous development within this research considers the new software development culture of DevOps. DevOps is seen as a fundamental change in the IT world today for the transition towards continuous software development, where dedication is given to the successful collaboration between development and operations. The aim of this research is to discover the vastness of attempting to change an organizational culture for an improved and modern software development process for all stakeholders involved. Furthermore, this research attempts to provide the organization at hand with information on how and where to begin initiating the required changes. New cloud computing technologies have enabled development teams to become less dependent on companies’ traditional IT departments. The research is conducted via literature review and the data collected through interviews with employees of the organization attempting to shift towards continuous development. Further information is gathered through three case studies of other companies that have successfully undergone a transition towards continuous development and DevOps.Tänä päivänä ohjelmistokehityksestä on nopeasti muodostunut merkittävä osa liiketoimintaa ja sen lisäarvon tuottamista. Yhtiöiden sisällä yhä useampi sidosryhmä on osallisena yhä useammin toistuvissa ohjelmistojulkaisuissa. Tästä johtuen yritykset ovat joutuneet sopeutumaan joustaviin ja jatkuviin tapoihin kehittää ohjelmistoa. Tämä diplomityö tutkii yhtiön jatkuvaan ohjelmistokehitykseen siirtymisen haasteita, hyötyjä ja haittoja. Jatkuvan ohjelmistokehityksen tyyppi, jota tässä työssä tutkitaan, on nimeltään DevOps. DevOps:ia pidetään keskeisenä muutoksena nykypäivän IT-alalla jatkuvaan kehitykseen siirtymisessä. Sen pääpiirteeksi koetaan sulava yhteistyö kehityksen ja ylläpidon välillä. Tämän tutkimuksen tavoite on selvittää yrityksen ohjelmistokehityksen muuttamisen laajuuden ottamalla samalla sen kaikki sidosryhmät huomioon. Lisäksi tämä tutkimus pyrkii tuottamaan yritykselle, jolle tutkimus tehdään, lisätietoa siitä miten tarvittavat muutokset voidaan käynnistää ja toteuttaa. Uudet pilvipalvelut ovat lisänneet kehityksen autonomisia työskentelytapoja ja vähentäneet heidän riippuvuuksia perinteisen IT-osaston toiminnollisuuksista. Tutkimus toteutetaan kirjallisuuskatsauksen sekä yrityksen eri sidosryhmien haastattelujen kautta. Lisätietoa kerätään esimerkkien avulla, joissa tutkitaan kolmen eri yrityksen menestyksekkäitä siirtymisiä jatkuvan ohjelmistokehityksen pariin

    Automated Testing for Provisioning Systems of Complex Cloud Products

    Get PDF
    Context: The proliferation of cloud computing enabled companies to shift their approach regarding infrastructure provisioning. The uprising of cloud provisioning enabled by virtualisation technologies sprouted the rise of the Infrastructure as a Service (IaaS) model. OutSystems takes advantage of the IaaS model to spin-up infrastructure on-demand while abstracting the infrastructure management from the end-users. Problem: OutSystems’ orchestrator system handles the automated orchestration of the clients’ infrastructure, and it must be thoroughly tested. Problems arise because infrastructure provisioning takes considerable amounts of time, which dramatically increases the feedback loop for the developers. Currently, the duration of the orchestrator tests hinder the ability to develop and deliver new features at a desirable pace. Objectives: The goals of this work include designing an efficient testing strategy that considers a microservices architecture with infrastructure provisioning capabilities while integrating it in a Continuous Integration (CI)/Continuous Deployment (CD) pipeline. Methods: The solution applies multiple testing techniques that target different portions of the system and follow a pre-determined test distribution to guarantee a balanced test suite. The strategy was tested against a set of prototypes to evaluate its adequacy and efficiency. The strategy definition focuses on mapping the type of errors that each test level should tackle and is, therefore, independent of the employed technologies. Results: The devised strategy is integrated in a CI/CD pipeline and is capable of comprehensively test the created prototypes while maintaining a short feedback loop. It also provides support for testing against commonly found errors in distributed systems in a deterministic way. Conclusions: The work developed in this dissertation met the outlined objectives, as the developed strategy proved its adequacy against the developed prototypes. Moreover, this work provides a solid starting point for the migration of the orchestrator system to a microservices architecture

    A Systematic Literature Review on DevOps and its Definitions, Adoptions, Benefits and Challenges

    Get PDF
    The increased pace of software development and rapid changes of business- and technological requirements have introduced a new type of software development culture called DevOps. IT Operations and Software Development have endured poor communication and collaboration with each other, which have resulted in bottlenecks throughout the software development life cycle. The discrepancy has contributed to delayed software updates with inferior quality and a culture, that complicates the goals of organisations, to produce high-quality software for its customers. DevOps can streamline the software development process by removing the constraints on the teams, by increasing collaboration, automation, sharing and measurement principles. This is possible through the change of mindset and culture of the organisation. Since the concept of DevOps is loosely defined, it is an interesting topic to research. This thesis provides an insight on the definitions, implementations, benefits and challenges of DevOps, through a systematic literature review. The literature review was conducted by identifying and analysing the related literature on DevOps. The results were 25 primary studies on the definition, adoption methods, benefits and challenges of DevOps. The result presents ways to define DevOps, some tools and methods on how to adopt DevOps within an organisation and some perceived benefits and challenges of adopting DevOps. The contribution of the thesis provides an overall understanding of DevOps and its core principles and practices. The contribution also includes, approaches for adopting DevOps, the premise behind its adoption and obstacles that may occur during the process

    Dynamic Security Testing

    Get PDF

    Automated Data for DevSecOps Programs

    Get PDF
    Excerpt from the Proceedings of the Nineteenth Annual Acquisition Research SymposiumAutomation in DevSecOps (DSO) transforms the practice of building, deploying, and managing software intensive programs. Although this automation supports continuous delivery and rapid builds, the persistent manual collection of information delays (by weeks) the release of program status metrics and the decisions they are intended to inform. Emerging DSO metrics (e.g., deployment rates, lead times) provide insight into how software development is progressing but fall short of replacing program control metrics for assessing progress (e.g., burn rates against spend targets, integration capability tar-get dates, and schedule for the minimum viable capability release). By instrumenting the (potentially in-teracting) DSO pipelines and supporting environments, the continuous measurement of status, identifica-tion of emerging risks, and probabilistic projections are possible and practical. In this paper, we discuss our research on the information modeling, measurement, metrics, and indicators necessary to establish a continuous program control capability that can keep pace with DSO management needs. We discuss the importance of interactive visualization dashboards for addressing program information needs. We also identify and address the gaps and barriers in the current state of the practice. Finally, we recommend future research needs based on our initial findings.Approved for public release; distribution is unlimited
    • …
    corecore