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

Prototyp för identifiering av teknisk skuld inom Product Lifecycle Management

Gauffin, Christian, Jonsson, Marcus January 2016 (has links)
Technical debt is a well known term within software development, but has not yet been implemented outside of software development. Because of this, there is no knowledge whether that is possible or not. This thesis investigates how technical debt can be extended to and be identified within a software system for handling Product Lifecycle Management. The purpose of the thesis is to present a prototype, called the ITS-prototype, which shows that it is possible to identify technical debt within Product Lifecycle Management. The thesis has qualitative characteristics and were conducted as a case study. In order to verify that the implementation is correct, two evaluation criterias were established. The first criteria, measuring the degree of coverage, saying that the ITS-prototype should be able to identify 100% of the technical debt defined by each rule. The second criteria consists of an interview with a technical expert on Product Lifecycle Management where the prototype's underlying method is evaluated. The ITS-prototype together with the results of the evaluation shows that technical debt is possible to be implemented and identified in a software system for handling Product Lifecycle Management. The rule-driven implementation that is used, has shown effective and the authors suggests that the development of the ITS-prototype continues in order to better use conveniences that exist within a Product Lifecycle Management-system. / Teknisk skuld är ett vedertaget begrepp inom mjukvaruutveckling men har ännu inte implementerats utanför mjukvara. Således finns det ingen kunskap om huruvida det är praktiskt möjligt att göra detta eller inte. I detta arbete undersöktes om konceptet teknisk skuld kan implementeras i ett mjukvarusystem för hantering av Product Lifecycle Management. Syftet med arbetet är att visa att teknisk skuld kan implementeras inom Product Lifecycle Management genom att presentera en prototyp för identifiering av teknisk skuld inom Product Lifecycle Management, kallad ITS-prototypen. Arbetet är av kvalitativ karaktär och genomfördes som en fallstudie. För att verifiera att implementationen är korrekt upprättades två utvärderingskriterier. Det första mäter prototypens täckningsgrad och säger att ITS-prototypen ska kunna identifiera 100% teknisk skuld definierad av varje regel. Det andra kriteriet består av en utvärderingsintervju med en teknisk expert på Product Lifecycle Management, där prototypens underliggande metod utvärderas. ITS-prototypen tillsammans med resultaten av utvärderingen visar att teknisk skuld är möjlig att implementera i ett mjukvarusystem för hantering av Product Lifecycle Management. Den regeldrivna implementation som använts i ITS-prototypen är effektiv och författarna föreslår att utvecklandet av prototypen fortsätter för att bättre kunna nyttja fördelar i ett PLM-system.
2

Detecting access to sensitive data in software extensions through static analysis / Att upptäcka åtkomst till känslig information i mjukvarutillägg genom statisk analys

Hedlin, Johan, Kahlström, Joakim January 2019 (has links)
Static analysis is a technique to automatically audit code without having to execute or manually read through it. It is highly effective and can scan large amounts of code or text very quickly. This thesis uses static analysis to find potential threats within a software's extension modules. These extensions are developed by third parties and should not be allowed to access information belonging to other extensions. However, due to the structure of the software there is no easy way to restrict this and still keep the software's functionality intact. The use of a static analysis tool could detect such threats by analyzing the code of an extension before it is published online, and therefore keep all current functionality intact. As the software is based on a lesser known language and there is a specific threat by way of information disclosure, a new static analysis tool has to be developed. To achieve this, a combination of language specific functionality and features available in C++ are combined to create an extendable tool which has the capability to detect cross-extension data access.
3

UCov : A Static Analysis Tool for API Usage Coverage Validation / UCov : Ett statiskt analysverktyg för validering av API-användningstäckning

Couturou, Thomas January 2023 (has links)
Nowadays, all software projects are based on a large number of libraries, so they do not have to start from scratch. These libraries evolve over time, whether to add functionality or to simplify their use. These updates are necessary to improve their libraries, but can lead to errors in their clients’ code. Developers are thus faced with the problem of breaking changes and need to be able to inform their clients as soon as possible of the arrival of these changes. To limit the impact of these breaking changes, this Master thesis presents UCov. UCov is a static analysis tool that gives library developers a quick overview of the usage coverage of their tests compared with the coverage of their clients. This lets them to compare which elements of their library are being tested with those being used by their clients and also how they are being used. This will enable developers to improve their test suite according to how their clients use their library, to get a better overview of how their library is used, and also to give their clients the best possible warning of changes that may impact their code, thanks to release notes. In this study, we explain the implementation of UCov and test it on various libraries. The results obtained on these libraries are satisfactory. They enable us to highlight potential breaking changes. They also show that there are elements of the libraries’ APIs that are used by clients but never tested. Finally, these results show that UCov offers developers a new tool enabling them to limit the impact of their breaking changes by gaining a better understanding of how clients use their libraries. / Numera baseras alla programvaruprojekt på ett stort antal bibliotek, så att man inte behöver börja från noll. Biblioteksutvecklare ställs därför allt oftare inför problemet med “breaking changes". Dessa är nödvändiga för att förbättra deras bibliotek, men kan leda till fel i deras kunders kod. Utvecklarna måste därför kunna ge sina kunder så mycket förvarning som möjligt om att det kommer att komma inbrytande ändringar. För att begränsa effekterna av dessa förändringar presenterar denna masteruppsats UCov. UCov är ett statiskt analysverktyg som ger biblioteksutvecklare en snabb överblick över användartäckningen för deras tester jämfört med täckningen för deras klienter. Detta gör det möjligt för dem att jämföra vilka element i deras bibliotek som testas med de som används av deras kunder, och även hur de används. Detta gör det möjligt för utvecklare att förbättra sin testsvit enligt hur deras kunder använder deras bibliotek, för att få en bättre överblick över hur deras bibliotek används, och även för att ge sina kunder bästa möjliga varning för ändringar som kan påverka deras kod, tack vare release notes. I den här studien förklarar vi implementeringen av UCov och testar den på olika bibliotek. Resultaten från dessa bibliotek är tillfredsställande. De gör det möjligt för oss att lyfta fram potentiella brytande ändringar. De visar också att det finns delar av bibliotekens API:er som används av klienter men som aldrig testas. Slutligen visar dessa resultat att UCov erbjuder utvecklare ett nytt verktyg som gör det möjligt för dem att begränsa effekterna av sina skadliga ändringar genom att få en bättre förståelse för hur kunderna använder sina bibliotek.
4

Simulation driven design : An iterative approach for mechanical engineers with focus on static analysis

Karlsson, Filip January 1900 (has links)
This thesis of 15 hp has been implemented at Halmstad University, in collaboration with Saab Dynamics in Linköping. Saab Dynamics is a company operating in the defence industry where competition is tough. This necessitates new ways to increase efficiency in the company, which is the basis for this thesis. Saab Dynamics wants to introduce simulation driven design. Since Saab Dynamics engineers have little experience of simulation, required a user methodology with clear guidelines. Due to lack of time, they chose to assign the task to students, which resulted in this thesis. The aim of the thesis is to develop a methodology in mechanical design, where the designer uses the FE analysis early in the design process to develop the structures' mechanical properties. The methodology should be seen as a guide and a source of information to enable an iterative approach with FE-analysis, which is the basis of simulation-driven design. The iterative process of simulation driven design, which can lead to reduced lead times and cost savings in the design process. The work was carried out by three students from the mechanical engineering program between December 2014 and May 2015. Because of the scale of the project, it has been carried out by a total of three students with individual focus areas. The work has followed a self-developed method and the project began with theoretical studies of the topic to get an understanding of what has been done and what research in simulation driven design. Then conducted an empirical study on the Saab Dynamics in Linköping, in order to increase understanding of how the design process looks like. Meanwhile, sustainable development and ethical aspects has been taken into account. Much time has been devoted to investigate the possibilities and limitations of 3D Experience, which is Dassault Systèmes latest platform for 3D modelling- and simulation software. 3D Experience is the software, the methodology is based on. This thesis has resulted in a methodology for simulating at the designer level that the project team in consultation with the supervisor at Saab Dynamics managed to adapt to the company's requirements.
5

Simulation driven design : An iterative approach for mechanical engineerswith focus on mesh, quality and convergence

Truedsson, Stefan January 2015 (has links)
This thesis of 15 hp has been implemented at Halmstad University, incollaboration with Saab Dynamics in Linköping. Saab Dynamics is a companyoperating in the defence industry where competition is tough. This necessitatesnew ways to increase efficiency in the company, which is the basis for this thesis.Saab Dynamics wants to introduce simulation driven design. Since SaabDynamics engineers have little experience of simulation, required a usermethodology with clear guidelines. Due to lack of time, they chose to assign thetask to students, which resulted in this thesis.The aim of the thesis is to develop a methodology in mechanical design, wherethe designer uses the FE analysis early in the design process to develop thestructures' mechanical properties. The methodology should be seen as a guide anda source of information to enable an iterative approach with FE-analysis, which isthe basis of simulation-driven design. The iterative process of simulation drivendesign, which can lead to reduced lead times and cost savings in the designprocess.The work was carried out by three students from the mechanical engineeringprogram between December 2014 and May 2015. Because of the scale of theproject, it has been carried out by a total of three students with individual focusareas.The work has followed a self-developed method and the project began withtheoretical studies of the topic to get an understanding of what has been done andwhat research in simulation driven design. Then conducted an empirical study onthe Saab Dynamics in Linköping, in order to increase understanding of how thedesign process looks like. Meanwhile, sustainable development and ethicalaspects has been taken into account.Much time has been devoted to investigate the possibilities and limitations of 3DExperience, which is Dassault Systèmes latest platform for 3D modelling- andsimulation software. 3D Experience is the software, the methodology is based on.This thesis has resulted in a methodology for simulating at the designer level thatthe project team in consultation with the supervisor at Saab Dynamics managed toadapt to the company's requirements.
6

Ballastfritt spår : Förslag till dimensioneringsmetoder / Slab track : Proposed design methods

Hagman, Olle, Berhane, Henok January 2015 (has links)
Ballastfria spår har på senare tid börjat byggas i allt större utsträckning. En anledning till detta är höjda krav på järnvägstransporter. Ett ballastfritt spår är ofta utformat som en långsträckt betongplatta på mark som för ned lasten från rälerna till underbyggnaden. I nuläget saknar Sverige dimensioneringsprinciper för ballastfria spår. Principerna är redan etablerade i andra länder men behöver inordnas för svenska förhållanden. År 2012 gjorde regeringen bedömningen att en ny stambana för snabbtåg bör byggas. För detta ändamål har Trafikverket utarbetat en ny teknisk systemstandard för höghastighetsbanor. De traditionella ballasterade spåren är inte optimerade för höga hastigheter. Trafikverkets nya systemstandard förutsätter därför att stora delar av den nya stambanan utförs med ballastfritt spår. Syftet med detta examensarbete är att studera dimensionering med hänsyn till det statiska beteendet hos ballastfria spår och skapa en grundläggande förståelse för spårreaktioner. Med hjälp av handberäkningar och datorstödda metoder undersöks elementärfall av belastningar samt sambandet mellan plattans erforderliga böjstyvhet och underbyggnadens styvhet. Handberäkningsmodeller som antas i detta arbete är bland annat Winklerbäddmodellen och diverse vedertagna tvärsnittsmodeller. De datorstödda metoderna som används är FEM-programmet BRIGADE/Plus och BEM-programmet BE-platte. I BRIGADE/Plus används en tvådimensionell modell där marken modelleras som ett elastiskt underlag. I BE-platte används en tredimensionell modell med en markmodell enligt Winklerbäddmodellen. Resultaten från de olika metoderna kontrolleras mot varandra för att verifiera erhållna resultat. Sambandet mellan elasticitetsmodul i plattornas underlag, plattjocklek och lastreaktioner åskådliggörs i diagram samt tvärkraftstabell i kapitel 4. Beräkningsmodellernas beteende diskuteras och jämförs i kapitel 5. / Recently slab tracks have been built more frequently, among other things due to an increasing demand on rail transport. A slab track is often designed as a continuous concrete slab on grade that carries down the load from the rails to the substructure. At present, Sweden lacks design principles for slab tracks. Principles are established in other countries but must be adapted to Swedish conditions. In 2012 the Swedish government made the assessment that a new mainline for high-speed trains should be built. For this purpose, the Swedish Transport Administration prepared a new technical standard for high-speed tracks. Traditional ballasted tracks are not optimized for high speed trains and therefore the new standard requires large parts of the new mainline to be built with slab track. The aim of this thesis is to study the design of slab tracks with respect to their static behavior and create a fundamental understanding of force reactions acting on them. For elementary load cases the relation between required slab bending stiffness and the stiffness of the substructure will be investigated using hand calculations and computer-assisted methods. Models for hand calculation adopted in this work include the Winkler-bed model and various conventional cross-sectional models. The computer-assisted methods used are FEM software BRIGADE/Plus and BEM software BE-Platte. In BRIGADE/Plus the models are two-dimensional and the soil is modeled as an elastic base. In BE-Platte the models are three-dimensional and the soil is modeled according to Winkler-bed model. The results of the various methods are cross-checked against each other to verify the results obtained. The relationship between the modulus of elasticity of the subsoil, plate thickness and load reactions is illustrated in charts and a shear force table in Chapter 4. The behavior of the calculation models is discussed and compared in Chapter 5.
7

Exploring the Usage of Neural Networks for Repairing Static Analysis Warnings / Utforsking av användningen av neurala nätverk för att reparera varningar för statisk analys

Lohse, Vincent Paul January 2021 (has links)
C# provides static analysis libraries for template-based code analysis and code fixing. These libraries have been used by the open-source community to generate numerous NuGet packages for different use-cases. However, due to the unstructured vastness of these packages, it is difficult to find the ones required for a project and creating new analyzers and fixers take time and effort to create. Therefore, this thesis proposes a neural network, which firstly imitates existing fixers and secondly extrapolates to fixes of unseen diagnostics. To do so, the state-of-the-art of static analysis NuGet packages is examined and further used to generate a dataset with diagnostics and corresponding code fixes for 24,622 data points. Since many C# fixers apply formatting changes, all formatting is preserved in the dataset. Furthermore, since the fixers also apply identifier changes, the tokenization of the dataset is varied between splitting identifiers by camelcase and preserving them. The neural network uses a sequence-to-sequence learning approach with the Transformer model and takes file context, diagnostic message and location as input and predicts a diff as output. It is capable of imitating 46.3% of the fixes, normalized by diagnostic type, and for data points with unseen diagnostics, it is able to extrapolate to 11.9% of normalized data points. For both experiments, splitting identifiers by camelcase produces the best results. Lastly, it is found that a higher proportion of formatting tokens in input has minimal positive impact on prediction success rates, whereas the proportion of formatting in output has no impact on success rates. / C# tillhandahåller statiska analysbibliotek för mallbaserad kodanalys och kodfixering. Dessa bibliotek har använts av open source-gemenskapen för att generera många NuGet-paket för olika användningsfall. Men på grund av mängden av dessa paket är det svårt att hitta de som krävs för ett projekt och att skapa nya analysatorer och fixare tar tid och ansträngning att skapa. Därför föreslår denna avhandling ett neuralt nätverk, som för det första imiterar befintliga korrigeringar och för det andra extrapolerar till korrigeringar av osynlig diagnostik. För att göra det har det senaste inom statisk analys NuGetpaketen undersökts och vidare använts för att generera en datauppsättning med diagnostik och motsvarande kodfixar för 24 622 datapunkter. Eftersom många C# fixers tillämpar formateringsändringar, bevaras all formatering i datasetet. Dessutom, eftersom fixarna också tillämpar identifieringsändringar, varieras tokeniseringen av datamängden mellan att dela upp identifierare efter camelcase och att bevara dem. Det neurala nätverket använder en sekvenstill- sekvens-inlärningsmetod med Transformer-modellen och tar filkontext, diagnostiskt meddelande och plats som indata och förutsäger en skillnad som utdata. Den kan imitera 46,3% av korrigeringarna, normaliserade efter diagnostisk typ, och för datapunkter med osynlig diagnostik kan den extrapolera till 11,9% av normaliserade datapunkter. För båda experimenten ger uppdelning av identifierare efter camelcase de bästa resultaten. Slutligen har det visat sig att en högre andel formateringstokens i indata har minimal positiv inverkan på åndelen korrekta förutsägelser, medan andelen formatering i utdata inte har någon inverkan på åndelen korrekta förutsägelser.
8

Alternating Control Flow Graph Reconstruction by Combining Constant Propagation and Strided Intervals with Directed Symbolic Execution / Alternerande kontrollflödesgrafsrekonstruktion genom att kombinera propagerande av konstanter och klivande intervaller med riktad symbolisk exekvering

Peterson, Thomas January 2019 (has links)
In this thesis we address the problem of control flow reconstruction in the presence of indirect jumps. We introduce an alternating approach which combines both overand under-approximation to increase the precision of the reconstructed control flow automaton compared to pure over-approximation. More specifically, the abstract interpretation based tool, Jakstab, from earlier work by Kinder, is used for the over-approximation. Furthermore, directed symbolic execution is applied to under-approximate successors of instructions when these can not be over-approximated precisely. The results of our experiments show that our approach can improve the precision of the reconstructed CFA compared to only using Jakstab. However, they reveal that our approach consumes a large amount of memory since it requires extraction and temporary storage of a large number of possible paths to the unresolved locations. As such, its usability is limited to control flow automatas of limited complexity. Further, the results show that strided interval analysis suffers in performance when encountering particularly challenging loops in the control flow automaton. / I detta examensarbete studeras hur rekonstruktion av kontrollflöde kan utföras i närvaro av indirekta hoppinstruktioner. I examensarbetet introduceras ett alternerande tillvägagångssätt som kombinerar både överoch underapproximation för att öka precisionen av den rekonstruerade kontrollflödesautomaten jämfört med endast överapproximation. Mer specifikt används det abstrakta tolknings-baserade verktyget, Jakstab, tidigare utvecklat av Kinder, för överapproximation. Vidare nyttjas riktad symbolisk exekvering för att underapproximera efterträdare till instruktioner när dessa inte kunnat överapproximeras med hög precision. Resultaten av våra experiment visar att vårt tillvägagångssätt kan förbättra precisionen hos den rekonstruerade kontrollflödesautomaten jämfört med att endast använda Jakstab. Dock visar de att vårt tillvägagångssätt kan fordra en stor mängd minne då det kräver extraktion och tillfällig lagring av ett stort antal möjliga vandringar från programmets ingång till de olösta programpositionerna. Därmed är dess användbarhet limiterad till kontrollflödesautomater av begränsad complexitet. Vidare visar resultaten av våra experiment även att analyser baserade på klivande intervaller tappar i prestanda när de möter en vis typ av loopar i kontrollflödesautomaten.
9

Automated Security Analysis of Firmware

Bolandi, Farrokh January 2022 (has links)
Internet of Things (IoT) devices are omnipresent in both industries and our homes. These devices are controlled by a software called firmware. Firmware like any other software may contain security vulnerabilities and the sole entity responsible to provide secure firmware is the vendor of the device. There are many analysis reports for individual devices that have found vulnerabilities however this is a manual process and unscalable. Several tools exist today for security analysis but usually with focus on a single aspect of firmware analysis. In this thesis, to better understand challenges with respect to automation of securityfocused analysis of firmware images in largescale, a framework is implemented by combining a number of existing tools using both static and dynamic analysis. A dataset of 241 firmware images from 7 vendors was collected. After evaluation of the framework on the dataset, it was shown that 85 images contained several known vulnerabilities which for some images a high percentage of these already were known before the firmware release date. / Internet of Things (IoT) enheter är allestädes närvarande i både industrier och våra hem. Dessa enheter styrs av en programvara som kallas firmware. Firmware som alla andra programvara kan innehålla säkerhetsbrister och den enda entiet som är ansvarig för att tillhandahålla säker firmware är leverantören av enheten. Det finns många analysrapporter för enskilda enheter som har hittat sårbarheter men detta är en manuell process och oskalbar. Flera verktyg finns idag för säkerhetsanalys men oftast med fokus på en enda aspekt av firmwareanalys. I denna avhandling, för att bättre förstå utmaningar med avseende på automatisering av säkerhet fokuserad analys av firmwarebilder i stor skala, implementeras ett ramverk genom att kombinera ett antal befintliga verktyg med både statisk och dynamisk analys. A datauppsättning av 241 firmwarebilder från 7 leverantörer samlades in. Efter utvärdering av ramverket på datamängden visades det att 85 bilder innehöll flera kända sårbarheter som för vissa bilder en hög andel av dessa redan var kända före releasedatumet för den fasta programvaran.
10

Static Analysis Of Client-Side JavaScript Code To Detect Server-Side Business Logic Vulnerabilities / Statisk analys av JavaScript-kod på klientsidan för att upptäcka sårbarheter i affärslogiken på serversidan

van der Windt, Frederick January 2023 (has links)
In the real world, web applications are crucial in various domains, from e-commerce to finance and healthcare. However, these applications are not immune to vulnerabilities, particularly in business logic. Detecting such vulnerabilities can be challenging due to the complexity and diversity of application functionality. Consequently, there is a growing need for automated tools and techniques to aid in identifying business logic vulnerabilities. This research study investigates the efficacy of static analysis techniques in detecting server-side business logic vulnerabilities through the analysis of client-side JavaScript code. The study explores various analysis techniques, including code parsing, data flow analysis as detection methods, and their application in identifying potential vulnerabilities. This thesis also identifies common flaws contributing to business logic vulnerabilities, such as insufficient input validation, insecure access controls, and flawed decision-making logic. The effectiveness of static analysis techniques in pinpointing server-side business logic vulnerabilities is evaluated, revealing promising results, particularly in detecting parameter manipulation vulnerabilities. Notably, the study discovered vulnerabilities in two live applications that could lead to severe financial problems, underscoring the real-world implications of these vulnerabilities. However, challenges such as false positives and the need for manual verification are also acknowledged. The study concludes by proposing improvements and future research directions, including exploring advanced techniques like machine learning and natural language processing and integrating dynamic analysis and real-world testing scenarios to enhance the accuracy and efficiency of static analysis. The findings contribute to the understanding of utilizing static analysis techniques for detecting server-side business logic vulnerabilities, offering insights for developing more robust and efficient vulnerability detection tools. / I den verkliga världen är webbapplikationer avgörande inom olika områden, från e-handel till finans och sjukvård. Dessa applikationer är dock inte immuna mot sårbarheter, särskilt inte i affärslogiken. Att upptäcka sådana sårbarheter kan vara en utmaning på grund av komplexiteten och mångfalden i applikationernas funktionalitet. Därför finns det ett växande behov av automatiserade verktyg och tekniker som kan hjälpa till att identifiera sårbarheter i affärslogiken. Denna forskningsstudie undersöker hur effektiva statiska analystekniker är för att upptäcka sårbarheter i affärslogiken på serversidan genom analys av JavaScript-kod på klientsidan. Studien utforskar olika analystekniker, inklusive kodparsing, dataflödesanalys som detektionsmetoder, och deras tillämpning för att identifiera potentiella sårbarheter. Avhandlingen identifierar också vanliga brister som bidrar till sårbarheter i affärslogiken, såsom otillräcklig validering av indata, osäkra åtkomstkontroller och bristfällig logik för beslutsfattande. Effektiviteten hos statiska analystekniker för att hitta sårbarheter i affärslogiken på serversidan utvärderas och visar på lovande resultat, särskilt när det gäller att upptäcka sårbarheter i parametermanipulation. I studien upptäcktes sårbarheter i två live-applikationer som kan leda till allvarliga ekonomiska problem, vilket understryker de verkliga konsekvenserna av dessa sårbarheter. Utmaningar som falska positiva resultat och behovet av manuell verifiering erkänns dock också. Studien avslutas med förslag på förbättringar och framtida forskningsinriktningar, inklusive utforskning av avancerade tekniker som maskininlärning och naturlig språkbehandling och integrering av dynamisk analys och verkliga testscenarier för att förbättra noggrannheten och effektiviteten hos statisk analys. Resultaten bidrar till förståelsen för att använda statiska analystekniker för att upptäcka sårbarheter i affärslogik på serversidan, och ger insikter för att utveckla mer robusta och effektiva verktyg för sårbarhetsdetektering.

Page generated in 0.462 seconds