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

Perception and effects of implementing Kotlin in existing projects : A case study about language adoption

Sundin, Emil January 2018 (has links)
The Kotlin programming language has seen an increase of adoption since its launch in 2011. In late 2017 Google announced first-class support for Kotlin on the Android platform which further popularized the language. With this increase in popularity we felt it was interesting to investigate how Kotlin affects the developer experience. We performed a case study to see how Java developers perceive the Kotlin language, and how it meets the requirements of these developers. To gather the developer requirements and their perception of Kotlin we performed two sets of interviews and rewrote parts of their codebase. The first set of interviews identified developer requirements and the second set of interviews showcased the Kotlin language and its potential use in their codebase. The results show that Kotlin can meet most of the developer requirements and that the perception of Kotlin is positive. Kotlin’s ability to be incrementally adopted was a prominent feature which reduced the inherent risks of technology adoption while providing them the ability to further evaluate the language. The expressiveness of a programming language has previously been found to be a prominent factor of language adoption. In this study, we identified the expressive nature of Kotlin as a major factor of its adoption potential.
2

Game developer experience : A cognitive task analysis with different game engines

Flomén, Rasmus, Gustafsson, Micaela January 2020 (has links)
Context: Today there are a lot of different kinds of game engines to choose from, but is one of these engines more suitable for a developer with a beginners' experience in game development? Objective: This is something we explore in order to help teachers choose a suitable engine for teaching game development to beginners.In this study, two teams of two persons each compare two of these engines, Godot and Unity. Method: We conducted a study, consisting of six iterations, to observe the development of a prototype game using the two engines. We collected data during the development of the game using a think-aloud protocol and a questionnaire, and after the development using a questionnaire that included the SUS scale for assessing the overall usability of the game engines. Results: The Godot engine have been focused on completing their documentation and the documentation is somewhat directed to more experienced developers. In comparison the Unity engine got more solutions outside of the documentation and also got their own special guides towards beginners.Although Godot engine got a more simpler GUI which will be easier at first but as the tasks became more difficult this became more of a disadvantage and some solutions were not found easily among the documentation. In comparison the Unity engine got more menus and can seem a lot to a beginner but became to be more helpful the harder the tasks became and even though most solutions were not found among the documentation, there were enough information from other sources to solve all problems with an easy search.Neither of the engines provided with a lot of helpful information within the tool, although the Godot engine had some cases where the tool would let the developers know a certain component was needed. Conclusion: Our main conclusion is that Godot is a good entry point into game development but as the tasks gets more difficult students would need the teacher’s help in order to solve the tasks as easy as with Unity. In contrast, Unity starts more difficult but as tasks gets more difficult Unity have more solutions online, which makes it more suitable if students are to develop on their own.\\This study is rather small with only four participants and this limits the results, for future studies it would be best to have more participants. Keywords: Cognitive task analysis, game developer experience, Godot, Unity, game engine, usability
3

Defining and Evaluating Design System Usability for Improved Developer Experience

Wirstad Gustafsson, Ella January 2021 (has links)
The recent growth of the software industry has drawn attention to strategies aimed at improving collaboration within the development team. Shown to frequently encounter dilemmas associated with cross-disciplinary work are User Experience designers and software developers, whose effective collaboration are essential for the success of the development process. Design systems have evolved as a response to the demand for efficient collaboration as a collection of reusable patterns and documentation used to establish a common language within software development teams. The popularity of using design systems within software development projects has grown rapidly in recent years, but little research has yet been conducted on its usability in development work. The goal of this thesis is to study design systems from a developer perspective, and evaluate its ability to facilitate the collaboration within software development teams. By building upon previous work on developer experience, this study proposes a method for assessing design system usability from a developer perspective. In this study, participating software developers were tasked with implementing user interface design in code with the help of a design system, followed by interview questions based on the Cognitive Dimensions Framework. Thematic analysis was used to analyze the data. Results provide insights into design system usability and developer experience. Findings include aspects of design system usability in general, such as the importance of developers' autonomy and flexibility of the system, as well as implications from the tested method in particular, such as the relevance of context of implementation. The results implicated an inherent dilemma of approaching design system development through conventions and best practices rather than with a systems theory and systems thinking perspective. / Senaste tidens tillväxt inom mjukvaruutvecklingsindustrin har resulterat i ett ökat intresse för att effektivisera samarbetet inom utvecklingsteamet. Två yrkesgrupper som påvisats stöta på dilemman associerade med multidisciplinärt arbete är de som designar och utvecklar mjukvara, vars samarbete är avgörande för utvecklingsprocessens framgång. Designsystem har vuxit fram som ett svar på en ökad efterfrågan på effektivt samarbete som en samling återanvändbara mönster och dokumentation som syftar till att etablera en gemensam vokabulär och inom mjukvaruutvecklingsteam. Trots att användandet av designsystem inom mjukvaruutveckling har ökat under de senaste åren har inte mycket forskning gjorts på dess användbarhet i utvecklingsarbetet. Denna uppsats syftar till att studera designsystem från ett utvecklarperspektiv, och utvärdera dess förmåga att facilitera samarbetet inom mjukvaruutvecklingsteam. Genom att ta avstamp i tidigare forskning kring utvecklarupplevelse föreslår denna studie en metod för att bedöma användbarheten och utvecklarupplevelsen av ett designsystem. Deltagande mjukvaruutvecklare fick i denna studie i uppgift att implementera gränssnittsdesign i kod med hjälp av ett designsystem, följt av intervjufrågor baserade på ramverket för Cognitive Dimensions. Tematisk analys användes för att analysera data. Resultaten ger inblick i användbarhet och designsystem i allmänhet, så som vikten av utvecklarens autonomi och systemets flexibilitet, samt implikationer från det testade design systemet i synnerhet, så som implementationskontextens relevans. Resultaten antyder att det finns svårigheter med att närma sig mjukvaruutveckling med designsystem genom konventioner och god praxis snarare än med ett systemteoretiskt perspektiv.
4

Developer Experience of a Low-Code Platform: An exploratory study

Dahlberg, Daniel January 2020 (has links)
In recent years, low-code development has become increasingly popular, enabling developers to write less code and focus on the objective. However, while proven efficient, little attention has been given to how developers experience working in these development environments. This is significant as providing unpleasant experiences could reduce the benefits of low-code platforms by leaving the developers unhappy. As such, this study aims to gain an understanding of developer experience in low-code environments. The study was conducted with an IT-company recently specialized in low-code solutions, where participants were chosen based on having prior experience with low-code development. This ensued in interviews with six low-code developers as well as a project leader. Main positive experiences found were, feeling more productive, improved customer relations, focus on the objective, shared developer understanding, and quick learnability. Key negative experiences found were, having work constrained, limited freedom and creativity, inadequate documentation, and overview, and having poor and unsafe teamwork capabilities. To the best of my knowledge this is the first study to explore developer experience in low-code development environments and stands as groundwork for future studies in low-code developer experience.
5

ChatGPT as a Software Development Tool : The Future of Development

Hörnemalm, Adam January 2023 (has links)
The purpose of this master’s thesis was to research and evaluate how ChatGPT can be used as a tool in software developers’ daily work activities. In order to do this, the thesis was conducted in two phases, the initial exploration phase and the data collection phase. In the initial exploration phase, five senior-level developers were interviewed about their day-to-day work, opinions of generative AI, and the profession of software developers as a whole. From these interviews, a theoretical foundation for software development was formed, categorizing the daily work tasks of a software developer into either coding, communication, or planning. This theoretical foundation was then used as the basis for the tasks and interviews used during the data collection phase. In the data collection phase, seven developers, ranging from students to industry veterans, were asked to complete a set of representative tasks with the help of ChatGPT and afterward participate in an interview. The tasks were based upon the theoretical foundation of software development and aimed to serve as representative tasks that software developers have to do in their day-to-day work. Based on the tasks and interviews it was found that the use of ChatGPT did in fact help make software developers more effective when it came to coding and planning-based tasks, but not without risk since it was shown that junior developers trusted and relied more on the answers given by ChatGPT. Although ChatGPT showed a positive effect, the tooling still needs improvement, since the developers had trouble with the text formatting when completing communication-based tasks, as well as them expressing a desire for the tooling to be more integrated. However, this desire was not unexpected, since all of the developers involved showed interest in working with generative AI tooling for work-related tasks in the future.
6

Evaluation of the Effectiveness of Implementing a UI Library in FinTech Applications / Implementing a UI Library in FinTech Applications : An Evaluation of the Effectiveness

Hallberg, Emil January 2021 (has links)
Implementing new technology into a complex software developing environment comes with many challenges in terms of code, user interface design, and developer experience. It is well-established that the pressing demand for security and regulations within financial technology makes it even more essential to implement new technologies with care and minimised risks. This work aims to determine the effectiveness of such implementations. Specifically, it evaluates the effectiveness of implementing a UI library in a FinTech application to find the most suitable approach. In this context, a UI library defines as a robust set of user interface components available in one place and a FinTech application as an application in financial technology with complex developing infrastructure. In order to successfully evaluate the effectiveness of implementing a UI library in a FinTech application, a thorough literature survey was performed to identify decisive factors relating to code quality, user interface, and developer experience. In a case study in which a FinTech company served as an example, a solution consisting of their product and UI library was developed. The solution was tested by collecting data from code evaluation, questionnaires, and interviews. The result shows that the solution has higher code quality, fulfils the FinTech UI requirements, and perceived as an improvement of the development infrastructure.  On this basis, the utilised methodology and the recognised factors in this work should be taken into account to identify the most suitable approach when implementing a UI library in a FinTech application.
7

Designing for Programming Without Coding : User Experience of Mobile Low-code Software

Korczak, Anna January 2023 (has links)
In our progressively digitized world, the escalating demand for software solutions intensifies the need for proficient developers. Low-Code Development Platforms (LCDPs) present a promising approach to address this necessity, empowering individuals without traditional programming skills to create software applications. However, despite their potential, these platforms are often not accessible or intuitive for non-professional developers. This research examines the design of LCDPs, with an emphasis on enhancing the user experience for non-programmers. By investigating the usability of LCDPs and designing a prototype based on the findings, my aim is to contribute to the ongoing discussion about the democratization of software development and to propose enhancements that could make LCDPs more user-friendly, inclusive, and usable across devices. The research involves a combination of literature review, interviews, prototype development, and user testing, providing a multifaceted perspective on the topic. Moreover, it discusses potential implications for the design of LCDPs, as well as for the broader field of interaction design.

Page generated in 0.087 seconds