• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 31
  • 8
  • 2
  • 1
  • 1
  • Tagged with
  • 43
  • 43
  • 23
  • 19
  • 16
  • 16
  • 14
  • 13
  • 13
  • 11
  • 10
  • 10
  • 7
  • 7
  • 7
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
21

Intelligent and Context-Aware Information Filtering in Continuous Integration Pipeline using the Eiffel Protocol / Intelligent och kontextmedveten informationsfiltrering i kontinuerlig integrationsrörledning med Eiffel-protokollet

Gustafsson, Robin January 2021 (has links)
Software development has gotten more complex and certain parts being more and more automated. Continuous integration practices with automated build and testing greatly benefit the development process. Combined with continuous deployment, the software can go directly from commit to deployment within hours or days which means that every commit is a possible deployment. The ability to trace links between artifacts is known as software traceability which has become a necessity and requirement in the industry. Following these traces and the ability to answer questions and base decisions on them is a complex problem. Tools already used in the industry are hard to adapt since every stakeholder requires different needs. Eiffel protocol aims to be as flexible and scalable as possible to fit as many needs as necessary for the stakeholder. This thesis provides an extension to Eiffel-store, an already existing open-source application that can visualize events in the Eiffel protocol that will be extended with functionality so that it can filter events and answer some questions stakeholders might have.
22

Create React App vs NextJS : A comparison of two ReactJS based web application frameworks

Johansson, Jens January 2021 (has links)
Webbapplikationer bygger på många olika webbramar och utvecklare har en mängd olika webbramverk att välja mellan när de utvecklar en webbapplikation. Två populära webbramverk som finns på marknaden är NextJS och Create React App (CRA). Varje ramverk har sina egna för- och nackdelar i olika perspektiv. Syftet med denna studie är att granska om det finns några skillnader i dessa två populära webbramverk ur ett kontinuerligt integrations och kontinuerligt leverans-perspektiv med ett fokus på att kolla närmare på skillnaderna inom utvecklingsprocessen vid utökningar av applikationer och den tid det tar att bygga och driftsätta applikationer i de olika ramverken. För att få kunskap om ämnet så har en teoretisk studie av webbaserade källor gjorts och en applikation har skapats i de båda ramarverken för att sedan utvidgas med ytterligare verktyg för att kunna utföra en jämförelse. Studien visar att ramverken resulterar i liknande byggoch driftsättningstider men skiljer sig dock åt gällande konfigurationer när applikationerna utökades och att NextJS gav en enklare åtkomst åt konfigurering. / Web applications are built on numerous of different web frameworks and developers have a plethora of different web frameworks to choose from when developing a web application. Two popular web frameworks on the market are NextJS and Create React App (CRA). Each framework has its own advantages and disadvantages in different perspectives. The objective of this study is to review if there are any differences in these two popular web frameworks in a continuous integration and continuous delivery perspective looking closer at the differences in the development process when extending applications and the time it takes to build and deploy applications in the different frameworks. To gain knowledge about the subject, a theoretical study on web based sources has been made and an application has been created in both framework to then be extended with further tools to be able to perform the comparison. The study shows that the frameworks results in similar build and deployment times but does however differ in the configurations when extending applications and that NextJS did provide a more straightforward configuration.
23

Traceability in continuous integration pipelines using the Eiffel protocol

Hramyka, Alena, Winqvist, Martin January 2019 (has links)
The current migration of companies towards continuous integration and delivery as well all service-oriented business models brings great benefits but also challenges. One challenge that a company striving to establish continuous practices is the need for pipeline traceability, which can bring great enhancements to continuous integration and delivery pipelines as well as offer a competitive edge. This exploratory case study looks at the current and desired states at Axis Communications, a global leader in network video solutions based in Lund, Sweden. It further evaluates the practical and organizational aspects of the adoption of the Eiffel protocol in the company’s pipeline tools through developing a proof-of-concept Eiffel plugin for Artifactory. Based on the discovered technical and organizational needs and obstacles, it draws conclusions and makes recommendations on a possible strategy when introducing Eiffel in a company.
24

Best Practices, Benefits and Obstacles When Conducting Continuous Delivery in Software-Intensive Projects

Hansson, Björn January 2017 (has links)
The goals with continuous delivery are to reduce the risk, cost, and time of releasing software to the stakeholders and the users. It is a process which can result in reliable releases and reducing errors in the software. Furthermore, there are some best practices to follow when conducting the continuous delivery process, involving version control, and build tools. There are however some obstacles and challenges for organizations when moving to continuous delivery. For example, complex environments, organizational problems, and lack of automated test cases. This master thesis investigates continuous delivery through a literature review, a multiple-case study, and fieldwork. The result can either be used by software engineers and organizations who are new to the continuous delivery concept. Or the result can be used by more experienced software engineers to gain more knowledge about existing obstacles and for further research.
25

Confidence in Release Candidates : Maintaining confidence levels when moving from traditional release management to continuous delivery / Förtroende för releasekandidater : Bibehållande av förtroendenivåer vid byte från traditionell releasehantering till kontinuerlig leverans

Aarnio, Linus January 2022 (has links)
When shortening release cycles and moving towards continuous delivery, a different approach for quality assurance may be needed than in traditional release management. To allow the transition, all stakeholders must retain a sense of confidence in the quality of release candidates. This thesis proposes a definition for confidence consisting of 30 confidence factors to take into account to ensure confidence from all stakeholders. Confidence factors have been found through interviews with 11 stakeholders, analyzed and categorized using grounded theory analysis. The found factors are grouped into two main categories: Process and Verification Results. The thesis additionally contains a literature review of quality measurements and explores how confidence can be expressed in a continuous delivery pipeline. It is found that it is not possible to comprehensively express confidence only with metrics displayable in a pipeline when including only currently well-researched metrics, but with the combination of processes known to be followed in the organization some metrics provide coverage for many of the confidence factors.
26

Exploring the Encounter of ContinuousDeployment and the Financial Industry

FRIE, FELIX, HAMMMARLUND, GUSTAV January 2016 (has links)
The digitisation of the financial markets has led to IT becoming a vitalpart of financial institutions. The principles and practices of ContinuousDeployment (CD) are utilised to increase innovation through flexibilityand swiftness at many IT companies. This thesis explores the encounterof CD and the financial industry through participant observations andsemi-structured interviews with developers.We find in our study that practitioners in the financial industry usepractices that are part of a CD process. The specialisation of the systemsthat is evident in the industry could be considered a barrier for theadoption of a CD process. However, improved transparency that maycome as a result of CD is well aligned with the demands that are evidentin the industry. Furthermore, the requirement for code reviews mightimpact the ability to attain a continuous process, as it must be a manual.
27

Effektivisering av processen att hantera 3D-modeller med förberäknad ljussättning : Användning av Continuous Delivery med Unity / Improved handling 3D-models with precomputed lighting : Using Continuous Delivery with Unity

Olason, Anton January 2020 (has links)
Vid köp av konfigurerbara produkter som till exempel hus eller sängar på internet är det viktigt att kunden kan erbjudas en realistisk visualisering för att kunna få en känsla för hur den färdiga produkten kommer att se ut. En metod för att skapa visualiseringen är att från en miljö uppbyggd av 3d-modeller som anpassas efter kundens val skapa en rendering i realtid. För att den renderade bilden ska se realistisk ut och få hög kvalitet är det nödvändigt att i förväg utföra tunga beräkningar för hur ljuset sprider sig i scenen, så kallad bakning. Hur hanteringen av innehållet och bakningen effektivt ska göras är ett område där det saknas studier men där det finns stor potential för effektivisering. Därför har denna designstudie utförts där syftet är att öka kunskapen om hur hanteringen av innehållet och ljusberäkningar kan effektiviseras. Utvecklingen har utförts med Action Design Research där tre iterationer har fullföljts. Principer från Continuous Delivery har använts för att utveckla en IT-artefakt som automatiserar processen som krävs från det att en ny ändring har lagts in i versionshanteringssystemet till det att det finns ett färdigt paket med innehållet som behövs för att göra en visualisering. Resultatet består av nya komponenter skrivna i C# för Unity och skript skrivet med Python. Resultatet från studien visar att det är möjligt att med hjälp av principer från Continuous Delivery effektivisera processen inom det här området och att antalet manuella steg och den krävda arbetstiden kraftigt kan reduceras. Utifrån designstudien har fem nya designprinciper kunnat formuleras som är lämpliga att använda där program används som inte är har ett bra stöd för att köras automatiskt och att steg i processen kan vara beräkningsmässigt tunga. De går att applicera på fallet med hantering av innehållet i Unity men bör också vara relevanta för att hantera ett mer generellt fall där det finns en process med många manuella steg och beräkningsmässigt tunga steg. / When purchasing configurable products (for example, houses or beds) on the Internet, it is important that the customer can be offered a realistic visualization in order to get a feel for how the finished product will look. One method for creating the visualization is to create a real-time rendering from an environment built of 3D models that is adapted to the customer's choice. In order for the rendered image to look realistic and get high quality, it is necessary to perform heavy calculations in advance for how the light spreads in the scene (baking). How to effectively manage the content and baking is an area where there is little research but where there is great potential for improving the work flow. Therefore, this design study has been carried out where the purpose is to increase the knowledge of how the handling of the content and light calculations can be improved. The development has been carried out with Action Design Research, where three iterations have been completed. Continuous Delivery principles have been used to develop an IT artifact that automates the process required from the time a new change is added to the version management system until there is a complete package of content needed for visualization. The result consists of new components written in C# for Unity and scripts written with Python. The results of the study show that it is possible to streamline the process in this area using principles from Continuous Delivery and that the number of manual steps and the required working time can be greatly reduced. Based on the design study, five new design principles have been formulated that are suitable for use where programs are used that do not have good support for automating this and that contains steps in the process can be computationally heavy. They can be applied to the case of handling the contents of Unity but should also be relevant to dealing with a more general case where there is a process with many manual steps and computationally heavy steps.
28

Teaching software testing in a modern development environment / Lära ut mjukvarutestning i en modern utvecklingsmiljö

Gawell, Anders, Kallin, Anton January 2019 (has links)
All developers understand the benefits of testing their code to ensure its functionality. Today’s market is moving further towards design principles where testing is a central or driving force during development. This puts a certain pressure on academia to supply these skills to their students.Recently the course II1302 Projects and project methods at the Royal Institute of Technology in Kista made a concerted effort to introduce the students of the course to these modern concepts. This thesis investigates how areas of testing can effectively be introduced to the students in the course, utilizing a tailored example that takes the area of testing into particular consideration and how to automate it via DevOps-tools provided by a cloud-based service. Further, it also makes an attempt to provide additional material to be used for teaching testing in conjunction with the example provided.The case study covers the development of an example application, meant to mirror a typical student project. It also covers how this was used for teaching the students about the testing areas considered. The covered testing areas include unit testing, integration testing and UI testing. With these given testing areas, the application and an associated learning module was developed for each area in question. Relevant standards, strategies and approaches was also identified for each of these areas.The thesis also presents important properties to take into consideration when developing similar examples in the future, based on the experiences obtained during the study. These include needs such as understandable by inexperienced students, applicability outside the course, adherence to established standards, tools that are simple to use and an architectural structure that allows for testing.Some improvements are also recommended: the students would benefit from learning software testing from an early stage of their studies. The content of the learning modules should also be brought to the students earlier in the course, so it can be applied in their projects at an early stage as well.Further research is also recommended to evaluate the suitability of using other cloud-based environments instead, and to evaluate the applicability of the learning modules for students of varying disabilities. / Alla utvecklare förstår fördelarna med att testa kod för att garantera dess funktionalitet. Dagens industri går i en riktning där testning spelar en central del av design under utveckling av mjukvara. Denna tendens lägger en viss press på högskolan att lära ut dessa erfarenheter till dess studenter.På senare tid har kursen II1302 Projekt och projektmetoder på Kungliga Tekniska Högskolan i Kista tagit en stor ansats för att introducera sina studenter inför dessa moderna koncept. Denna uppsats undersöker hur testningsområdet effektivt kan introduceras till studenterna inom denna kurs, genom att utnyttja ett egengjort exempel som har området i fokus, samt att automatisera detta via DevOps-verktyg tillhandahållna av molnbaserade tjänster. Dessutom görs även en ansats för att tilldela ytterligare material som kan användas för att lära ut testning av mjukvara i samband med det givna exemplet.Fallstudien omfattar utvecklingen av en exempelapplikation, som var avsedd att likna ett typiskt studentprojekt. Den täcker även hur denna användes för att lära ut de betraktade testningsområdena till studenterna. De täckta områdena av testning inkluderar enhetstestning, integrationstestning och testning av användargränssnitt. Med dessa givna testningsområden utvecklades både applikationen och dess associerade lärmoduler för vardera testningområde i fråga. Relevanta standarder, strategier och metoder var också identifierade för vardera av dessa områden.Denna uppsats presenterar även ett antal viktiga egenskaper att hålla i åtanke vid utveckling av liknande exempel i framtiden, baserat på erfarenheterna från studien. Detta inkluderar behov som tillgänglighet för mindre erfarna studenter, applicerbarhet utanför själva kursen, tillämpning av etablerade standarder, utnyttjande av lättanvända verktyg och en arkitektur som tillåter testning.Några förbättringar föreslås även: studenterna skulle gynnas av att lära sig om mjukvarutestning i ett tidigt skede av sina studier. Innehållet i lärmodulerna bör även presenteras för studenterna tidigare i kursen för att kunna appliceras i deras projekt.Ytterligare forskning rekommenderas även för att utvärdera andra lämpliga molnbaserade miljöer, samt för att utvärdera tillämpbarheten av lärmodulerna hos studenter med inlärningssvårigheter.
29

Performance comparison and assessment of GitHub Actions and Jenkins

Jamshidi, Sarfaraz, Iminov, Ichtiar January 2022 (has links)
There is a great demand for fast deliveries of improved and updated software in different software development areas, like Internet of Things, web, and cloud, in today’s digitalized world. Software developers and organizations must adapt to be able to deliver according to customers’ wishes, to be able to retain them, and remain competitive with other organizations. Continuous integration and continuous delivery (CI/CD) are methods used within the software development world, allowing developers to automate parts of their work to develop and deliver software faster and with better quality. Tools used for CI/CD come with different benefits and performances making it difficult for developers to choose a tool. There are numerous tools to choose from, and there is a lack of performance comparisons of them. This thesis aims to give developers a performance comparison between the two well-known CI/CD tools, GitHub Actions and Jenkins, to facilitate their choice of a CI/CD tool. The research was qualitative, inductive, and comparative. A literature study and practical tests were conducted to study the performance differences between the two wellknown CI/CD tools, GitHub Actions and Jenkins. The literature study was conducted f irst and gave the necessary knowledge to perform the practical tests, and the practical tests gave the actual results. The practical tests were performed on two different software projects ,and two different tests per projec, per server were conducted. The results from both projects indicated apparent differences in performance between GitHub Actions and Jenkins, as Jenkins ran faster than GitHub Actions while running on a Windows server, and GitHub Actions ran faster than Jenkins while running on an Ubuntu server. These findings indicate that the two well-known CI/CD tools perform differently depending on the server the developers would use these tools. It can not be concluded that one of the tools has better performance than the other; instead, one tool has better performance depending on the operating system the tool is running on. If the developers were to use the tools on an Ubuntu server, GitHub Actions would be the preferred tool, and if they were to use the tool on a Windows server, Jenkins would be the preferred tool. / Det finns en stor efterfrågan på snabba leveranser av förbättrad och uppdaterad mjukvara i olika mjukvaruutvecklings områden så som Sakernas Internet, webb och moln i dagens digitaliserade värld. Mjukvaruutvecklare och organisationer måste anpassa sig för att kunna leverera till kundernas önskemål för att kunna behålla dom och förbli konkurrenskraftiga med andra organisationer. Kontinuerlig integration och kontinuerlig leverans (CI/CD) är metoder som används inom mjukvaruutvecklings världen, så att utvecklare kan automatisera delar av sitt arbete för att utveckla och leverera mjukvara snabbare och med bättre kvalité. Verktyg som används för CI/CD kommer med olika fördelar och prestanda som gör det svårt för utvecklare att välja ett verktyg. Det finns många verktyg att välja mellan och det finns en brist på prestandajämförelser av dem. Detta examensarbete syftar till att ge utvecklare en prestandajämförelse mellan de två välkända CI/CD-verktygen GitHub Actions och Jenkins, för att underlätta utvecklarens val av ett CI/CD-verktyg. En kvalitativ, induktiv och komparativ forskningsmetod användes för att genomföra denna studie. En litteraturstudie och praktiska tester genomfördes för att studera prestandaskillnader mellan de två välkända CI/CD-verktygen GitHub Actions och Jenkins. Litteraturstudien genomfördes först och gav författarna nödvändiga kunskap för att utföra dem praktiska testerna, dem praktiska testerna gav de faktiska resultaten. Praktiska testerna utfördes på två olika mjukvaruprojekt och två olika tester per projekt, en per server genomfördes. Resultaten från båda projekten visade på uppenbara skillnader i prestanda mellan GitHub Actions och Jenkins. Då Jenkins kördes snabbare än GitHub Actions när körningen kördes på en Windows server och GitHub Actions kördes snabbare än Jenkins när de kördes på en Ubuntu server. Dessa resultat tyder på att de två välkända CI/CD-verktygen fungerar olika beroende på vilken server utvecklarna skulle använda dessa verktyg på. Det går inte att dra slutsatsen att ett verktyg är bättre över det andra, i stället har ett verktyg bättre prestanda beroende på vilket operativ system verktyget körs på. Om utvecklarna skulle använda verktygen på en Ubuntu server skulle GitHub Actions vara det föredragna verktyget och om utvecklarna skulle använda verktyget på en Window server skulle Jenkins vara det föredragna verktyget.
30

Running Multiple Versions of Services With Continuous Delivery

Wik, Lucas January 2017 (has links)
Continuous Delivery is a software development discipline where the software is always kept in a release ready state. It has proven to be a challenge for companies to adopt the practices of Continuous Delivery, but the benefits it brings may well be worth overcoming the challenges the adoption process brings. But the problem with the challenges is that they appear to be unknown, different adoption cases report different problems, some even consider something a solution whilst another case considered the same subject to be a problem. Thus adopting Continuous Delivery is a tricky process. But the tech company IST is interested in adopting Continuous Delivery and are looking to take a soft start by adding new functionality to their service-oriented system, this functionality is to be able to run multiple versions of their services at the same time. This study has implemented this functionality in their system and then researched possible issues or benefits the functionality would have towards Continuous Delivery. Finally, a discussion was made on how the author thinks approaching Continuous Delivery should be done by any company or developer interested.

Page generated in 0.4862 seconds