• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 9
  • 3
  • 2
  • 1
  • 1
  • 1
  • Tagged with
  • 17
  • 17
  • 17
  • 8
  • 6
  • 5
  • 5
  • 5
  • 4
  • 4
  • 4
  • 4
  • 4
  • 3
  • 3
  • 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.
11

Making better programmers : The impact of automated feedback on students / Bättre programmerare : Påverkan av automatiserad respons på studenter

Hansson, Tobias, Berg, Matteus January 2022 (has links)
Version Control Systems are a staple of modern software development and its usage is rapidly growing in education. Students often use Version Control Systems such as Git and GitHub during their education, though newly examined students are often found to lack mastery of industry standard practices. Manually monitoring and giving feedback to students is time consuming and requires a large amount of labor. Therefore, this paper proposes and evaluates an automated feedback system which analyses student assignment repositories an publishes feedback based on a set of data points. After the study, we attempt to measure any impact of the feedback on student performance. The study is unable to underline a significant impact. Students are also asked to reflect over the feedback and the reception was positive, further promoting future studies on the subject. / Versionshantering används idag flytigt inom mjukvaruutveckling och dess popularitet växer stadigt inom högre utbildning. Studenter får ofta lära sig att använda versionshanteringssystem såsom Git och GitHub under deras utbildning, trots detta saknar nyexaminerade studenter ofta tillräcklig kunskap om relevanta industristandarder. Att manuellt övervaka studenter och tillförse dem med respons på deras inlämningar är tidskrävande och kräver mycket arbetskraft. Mot bakgrund av detta föreslår och utvärderar vi i denna studie ett automatiskt responssystem med syftet att analysera studenters inlämningar samt återkoppla med relevant respons på ett antal datapunkter. Efter studiens slut görs en mätning av skillnader i studenternas resultat men ingen konkret slutsats kan sammanställas. Studenterna tillfrågades också att reflektera över responsen de tog del av. Deras svar samt studiens resultat pekar mot att ytterligare studier inom ämnet är väl motiverade.
12

GitBark : A Rule-Based Framework for Maintaining Integrity in Source Code Repositories / GitBark : Tillhandahållandet av trovärdighet och integritet i källkod

Bonnici, Elias January 2023 (has links)
In today’s digital landscape, maintaining the integrity of source code is crucial for delivering reliable and trustworthy software solutions. However, the increasing prevalence of attacks targeting source code repositories and version control systems (VCSs) poses significant challenges to source code integrity. Unauthorized access to source code repositories can lead to various security risks, including the introduction of malicious code or unauthorized approvals for pull requests. Security measures implemented on the remote server hosting the repository are typically insufficient to detect these types of attacks, resulting in changes potentially remaining undetected and becoming part of the deployed artifact. To address those issues, this study proposes GitBark, a framework that employs cryptographic methods to verify the integrity of a source code repository. GitBark achieves this by enforcing rules and policies on the commits made to the repository. Specifically, the study demonstrates that by formulating rules that utilize digital signatures, GitBark can effectively identify unauthorized changes and approvals. Moreover, GitBark prioritizes maintaining the local repository in a consistent and trustworthy state, reducing reliance on the remote server. Even if changes violating established rules are introduced to the remote repository, GitBark prevents their integration into the local repository. Consequently, users of GitBark can have confidence that their local repository remains a consistent and trustworthy version of the source code, without needing to place full trust on a remote server. An evaluation of GitBark, along with the devised rules, demonstrates its effectiveness in mitigating the threats identified in this study. Additionally, in terms of performance, GitBark incurs a modest overhead, both in time and storage. / I dagens digital värld, så är det viktigare än någonsin att källkodens integritet upprätthålls. Detta är kritiskt för att kunna leverera tillförlitlig och kvalitativ mjukvara. Den ständigt ökade förekomsten av attacker som riktar sig mot källkodsrepon och versionshanteringssystem gör dock upprätthållandet av källkodens integritet svårt. Obehörig åtkomst till källkodsrepo ger upphov till flera säkerhetsrisker såsom inkluderandet av skadlig kod eller obehöriga godkännanden av nya ändringar. De säkerhetsåtgärder som finns implementerade på värdserven där källkodsrepot lagras kan generellt sätt inte detektera dessa typer av attacker, vilket resulterar i att dessa typer av ändringar oftast förblir oupptäckta. För att adressera dessa problem, så presenterar denna studie GitBark, ett verktyg som utnyttjar kryptografiska medel för att verifiera integriteten av ett källkodsrepo. GitBark gör detta genom att kräva regler för commits som görs till källkodsrepot och validera att de upprätthålls. Mer specifikt, så visar att studien att genom att formulera regler som uttnyttjar digitala signaturer så kan GitBark effektivt identifiera oauktoriserade ändringar och godkännanden. Dessutom, prioriterar GitBark att alltid bibehålla det lokala källkodsrepot i ett konsekvent och trovärdigt tillstånd, för att minska beroendet på en remoteserver. Även ifall ändringar som inte uppfyller reglerna introduceras på remote-källkodsrepot så ser GitBark till att dessa ändringar aldrig integreras i det lokala repot. Följaktligen så kan användare av GitBark känna sig säkra i att det lokala källkodsrepot alltid förblir i ett konsekvent och trovärdigt tillstånd i relation till dem etablerade reglerna, utan att behöva förlita sig på en remoteserver. En evaluering av GitBark, tillsammans med de skapade reglerna påvisar dess effektivitet i att adressera de identifierade hoten i denna studie. Dessutom, vad gäller prestanda så har GitBark en liten påverkan både i tid och utrymme.
13

Can you Change the World with only 3 Commits? : Monitoring the Commit Behaviour of First Year Computer Science Students

Osnes, Simon, Berg, Amanda January 2021 (has links)
Having the skill to work with Version Control Systems (VCS) is an important aspect of most software development projects in the industry. But students may lack the knowledge on how to use it. By applying requirements on first year students of the Computer Science programme at KTH, this thesis aims to examine if that is enough to improve their VCS behaviour. This can be examined by applying requirements and then examining the metadata from GitHub. The results from this thesis show that the students committed a bit more when requirements were applied, but that the best way to get the students to commit more is to give them the knowledge on how to have a good commit behaviour. This is in line with previous research in the same area. / Versionshanteringssystem är ett viktigt verktyg i de flesta mjukvaruprojekt. Därför är det också en nödvändig kunskap att kunna arbeta med dem. Trots det så kan många datateknikstudenter sakna dessa kunskaper i hur man använder versionshantering optimalt. Därför ämnar detta arbete att undersöka om det är möjligt att förbättra förstaårsstudenterna på civilingenjörsprogrammet med inriktning datateknik på KTHs commitvanor genom att ställa krav på dem om ett minst antal commits per vecka. Krav kan ställas och sen är det möjligt att använda metadatan från GitHub för att besvara frågeställningen. Resultaten från detta arbete visar att även om studenterna committade lite mer med bara kraven, så var det framförallt efter att de fått kunskaper om bra commitbeteenden som de också förbättrade sitt eget beteende. Detta stämmer väl överens med tidigare forskning på området.
14

Comparação entre desenvolvedores de software a partir de dados obtidos em repositório de controle de versão / Comparison of software developers from data obtained from version control systems

Moura, Marcello Henrique Dias de 22 March 2013 (has links)
Submitted by Erika Demachki (erikademachki@gmail.com) on 2017-11-06T19:48:59Z No. of bitstreams: 2 Dissertação - Marcello Henrique Dias de Moura - 2013.pdf: 3325482 bytes, checksum: 45be62e46fd5fda90d1d0561482a3d85 (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) / Approved for entry into archive by Erika Demachki (erikademachki@gmail.com) on 2017-11-06T19:49:14Z (GMT) No. of bitstreams: 2 Dissertação - Marcello Henrique Dias de Moura - 2013.pdf: 3325482 bytes, checksum: 45be62e46fd5fda90d1d0561482a3d85 (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) / Made available in DSpace on 2017-11-06T19:49:14Z (GMT). No. of bitstreams: 2 Dissertação - Marcello Henrique Dias de Moura - 2013.pdf: 3325482 bytes, checksum: 45be62e46fd5fda90d1d0561482a3d85 (MD5) license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) Previous issue date: 2013-03-22 / Version Control Systems are repositories that store source code changes done by software developers. Research that extracts data from these repositories for analysis can be classified into two groups: those that focus on the development process and the ones that focus on the developers. The present dissertation investigates the second case and contributes to the field by providing: (a) the definition of a history file that summarizes changes made to software in line and file levels, (b) a set of metrics to evaluate the work of the developers; and (c) two approaches for comparing the developers based on their metrics. A computational system that implements these metrics and approaches was built and applied to two case studies of real software development projects. The results obtained in the studies were positive. They were consistent with the general perception of project managers about the work done by the developers. They also leaded to new ideas for improving the research.We believe that these contributions are a step towards a better understanding and characterization of the way about how software developers work. / Repositórios de Controle de Versão são sistemas que armazenam mudanças no código fonte realizadas por desenvolvedores de software. As pesquisas que extraem dados desses repositórios para análise podem ser classificadas em dois grupos: as que focam no processo de desenvolvimento e as que focam no desenvolvedor. O presente trabalho investiga o segundo aspecto contribuindo para o assunto com: (a) a definição de um histórico de arquivos que sumariza as mudanças realizadas no software em nível de linha e de arquivo; (b) um conjunto de métricas visando avaliar o trabalho dos desenvolvedores; e (c) duas propostas de abordagem para comparar os desenvolvedores. Um sistema computacional que implementa essas métricas e as abordagens foi construído, tendo sido aplicado em dois estudos de casos envolvendo projetos reais de desenvolvimento de software. Os resultados obtidos nos estudos foram positivos, coincidindo, em geral, com a percepção de gerentes de projetos sobre o trabalho dos desenvolvedores e apontando para novas ideias de evolução da pesquisa. Consideramos que este é um passo no sentido de entender e caracterizar melhor a forma de trabalho dos desenvolvedores.
15

Průzkum vlastnictví kódu ve velké organizaci / Code Ownership Research in Large Organization

Šimonek, Jan January 2015 (has links)
This master's thesis is about code ownership in software projects and creating a tool that would improve cooperation by identifying code owners. The theoretical foundation for code ownership starts from Extreme Programming, explaining models of code ownership and the impact of code ownership on cooperation among teams and team members. The concept is demonstrated on a concrete software firm, where a potential for improvement is identified. The potential is exploited by a software tool, which is designed in the this thesis. The tool is capable of identifying code owners and experts for specific areas in the code based on data gathered from a version control system. The resulting information is made easily accessible. The tool is used to conduct a code ownership research in several projects, which allows me to confirm accuracy of the results. Usability and benefits of the tool is discussed in the final chapter.
16

Systém pro kontinuální integraci projektu k-Wave / Continuous Integration System for the k-Wave Project

Nečas, Radek January 2016 (has links)
The main goal of this thesis is to describe the implementation of continuous integration into the k-Wave project. The thesis focuses primarily on the version written in the C/C++ language with the usage of the OpenMP library which typically runs on supercomputers. Accordingly, many of popular workflows and approaches ought to be adapted, a few more created. The outcome of the thesis is a complete solution with real and practical usage. The author provides design, tools selection, runtime environment administration and configuration for each one of the used services. Software implementation of the basic framework is used in order to utilize running tests on the supercomputers. Furthermore, the implementation of chosen types of regression and unit tests are performed. Realisation is based on Gitlab and Jenkis services that are running on separated Docker containers.
17

Minimumkrav för ett CI-system

Kiendys, Petrus, Al-Zara, Shadi January 2015 (has links)
När en grupp utvecklare jobbar med samma kodbas kan konflikter uppstå med avseende på implementationen av moduler eller delsystem som varje utvecklare individuellt jobbar på. Dessa konflikter måste snabbt lösas för att projektet ska fortskrida och inte stagnera. Utvecklare som sällan kommunicerar framför ofta okompatibla moduler eller delsystem som kan vara svåra eller omöjliga att integrera i kodbasen, detta leder ofta till s.k. “integration hell” där det kan ta väldigt lång tid att anpassa ny kod till en befintlig kodbas.En strategi som man kan ta till är “continuous integration”, ett arbetssätt som erbjuder en rad fördelar när man jobbar i grupp på en gemensam kodbas. Continuous integration är möjligt att tillämpa utan verktyg eftersom detta är ett arbetssätt. Däremot kan processen stödjas av ett s.k. “CI-system” som är något av en teknisk implementation eller påtagligt införlivande och stöd för arbetsmetoden “continuous integration”.Denna rapport syftar till att ge en inblick i vad ett CI-system är och vad den principiellt består av. Vi undersöker vad ett CI-system absolut måste bestå av genom en litteraturundersökning och en marknadsundersökning. Vi ställer upp dessa beståndsdelar som “funktionella” och “icke-funktionella” krav för ett typiskt CI-system. Vi kan på så vis kvantifiera och kategorisera olika komponenter och funktionaliteter som bör innefattas i ett typiskt CI-system. I denna rapport finns även ett bihang som visar hur man kommer igång med att bygga en egen CI-server mha. CI-systemmjukvaran “TeamCity”.Slutsatsen av vår rapport är att CI-system är ett viktigt redskap som kan underlätta mjukvaruutveckling. Med hjälp av CI-system kan man stödja utvecklingsprocessen genom att bl.a. förhindra integrationsproblem, automatisera vissa delar av arbetsprocessen (kompilering av källkod, testning av mjukvara, notifikation om stabilitet av kodbas och distribution av färdig mjukvara) samt snabbt hitta och lösa integrationsfel. / When a group of developers work on the same code base, conflicts may arise regarding the implementation of modules or subsystems that developers individually work on. These conflicts have to be resolved quickly in order for the project to advance at a steady pace. Developers who do not communicate changes or other necessary deviations may find themselves in a situation where new or modified modules or subsystems are impossible or very difficult to integrate into the mainline code-base. This often leads to so called “integration hell” where it could take huge amounts of time to adapt new code into the current state of the code-base. One strategy, which can be deployed to counteract this trend is called “continuous integration”. This practice offers a wide range of advantages when a group of developers collaborates on writing clean and stable code. Continuous integration can be put into practice without the use of any tools as it is a “way to do things” rather than an actual tool. With that said, it is possible to support the practice with a tangible tool called a CI-system.This study aims to give insight into the makings of a CI-system and what it fundamentally consists of and has to be able to do. A study of contemporary research reports regarding the subject and a survey was performed in order to substantiate claims and conclusions. Core characteristics of CI-systems are grouped into “functional requirements” and “non-functional requirements (quality attributes)”. By doing this, it is possible to quantify and categorize various core components and functionalities of a typical CI-system. This study also contains an attachment which provides instructions of how to get started with implementing your own CI-server using the CI-system software ”TeamCity”. The conclusion of this study is that a CI-system is an important tool that enables a more efficient software development process. By making use of CI-systems developers can refine the development process by preventing integration problems, automating some parts of the work process (build, test, feedback, deployment) and quickly finding and solving integration issues.

Page generated in 0.2192 seconds