Spelling suggestions: "subject:"5oftware ¿ devevelopment"" "subject:"5oftware ¿ agentdevelopment""
111 |
A contribuição da indústria da manufatura no desenvolvimento de software / The contribution of manufacturing industry in software developmentEduardo Teruo Katayama 20 October 2011 (has links)
Os Métodos Ágeis surgiram no final da década de 90, como uma alternativa aos métodos prescritivos de desenvolvimento de software. Eles propõem uma nova abordagem de desenvolvimento, eliminando gastos com documentação excessiva e burocrática, enfatizando a interação entre as pessoas e as atividades que efetivamente trazem valor ao cliente. Nos últimos anos, diversos princípios e práticas baseados na indústria de manufatura foram incorporadas pelos Métodos Ágeis de desenvolvimento de software. Um dos princípios absorvidos é o de melhorar a eficácia de uma organização através de melhorias globais. Embora este princípio seja bem difundido nos Métodos Ágeis, utilizá-lo não é uma tarefa fácil. Nem sempre é fácil ter uma visão global do processo de desenvolvimento. Além disso, para realizar melhorias globais é necessário descobrir a causa para possíveis problemas, o que também pode ser uma tarefa difícil. Esse trabalho investiga duas abordagens da indústria de manufatura que enxergam uma organização como um sistema no qual todas as partes são inter-relacionadas. Com base nelas, três abordagens de desenvolvimento de software existentes são analisadas. Finalmente, um estudo comparativo foi feito para avaliar as principais características dos métodos de desenvolvimento estudados. Esse estudo estende o trabalho feito por Abrahamssom et al., no livro Agile Software Development: Current Research and Future Directions, avaliando o desempenho dos métodos seguindo o arcabouço proposto pelos mesmos autores. / Agile methods appeared in the late 90\'s as an alternative approach to the classic prescriptive planning approaches to software development. They propose a new style of development, eliminating excessive and bureaucratic documentation, and emphasizing the interactions between people collaborating to achieve high productivity and deliver high-quality software. In the last few years, several principles and practices based on the manufacturing industry were incorporated by Agile software development. One of the principles absorbed is to improve the effectiveness of an organization through an overall improvement. Although this principle is quite widespread in Agile Methods, using it is not an easy task. It is not easy to get the big picture of the development process. Moreover, to achieve overall improvements is necessary to discover the cause of possible problems, which can also be a difficult task. This work investigates two approaches in the manufacturing industry that shares the assumption that the whole organization is focused on overall throughput, not on micro-optimization. Based on then, three approaches to existing software development are analyzed. Finally, a comparative study was done to assess the main characteristics of the studied methods. This study extends the work done by Abrahamssom et al. In the book Agile Software Development: Current Research and Future Directions, evaluating the performance of the methods following the framework proposed by the same authors.
|
112 |
Supporting mobile developers through a Java IDEOgunleye, Olalekan Samuel January 2008 (has links)
Includes bibliographical references (pages 95-105). / There exist several challenges in supporting mobile applications. For example, creating a separate target application for each device type, leaving developers with a huge maintenance chore. Most desktop applications run on largely homogenous hardware so instead of writing the same code over and over again, developers only need to write modules to implement a particular need. This is because even though there are differences in PC hardware configurations, the same desktop application will work fine on any hardware as the operating system provides an abstract layer. This is the way mobile applications are expected to work. However, this has been divided into dozens of ill-assorted versions. Java mobile applications developers spend more time rewriting code to run on different versions of mobile devices more than they do actually creating application in the first place. This is an intolerable burden for small mobile developers, and it stifles mobile software innovation overall. Mobile devices differ in a variety of attributes, such as screen size, colour depth and the optional hardware devices they support such as cameras, GPS etc. The differences often require special code or project settings for successful deployment for each device a developer is targeting but this creates a huge logistical overhead. One potential solution that is shipped with NetBeans IDE is to add a new configuration for each device, modify the project properties, add some pre-processing code, then build and deploy the application. In most cases, one configuration for each distribution of the Java Archive (JAR) one plans to build for the project is created. For example, if a developer is planning to support three· different screen sizes using two sets of vendor specific APIs, one needs to create six configurations. This reduces the performance of the application drastically and increases the size at the same time. This is not acceptable for mobile devices where memory size and processor performance are limited. The goal of this research work is to support mobile application development through a Java IDE (the NetBeans IDE in this case). Therefore, our approach will be to modify the NetBeans IDE to better address the difficulty that was mentioned above - namely targeting applications for different platforms. Our solution is to integrate another type of a preprocessor into the NetBeans IDE that will help alleviate the problems of the existing tool. Our approach is to directly implement this inside the NetBeans IDE to further support mobile application development with the NetBeans IDE.
|
113 |
Robotic Software Development using DevOpsRonanki, Krishna Chaitanya January 2021 (has links)
Background: Due to the complexity involved in robotic software development, the progress in the field has been slow. Component-based software engineering was observed to have a strong influence on the improvement of the robotic software development process and its adoption achieved good results. DevOps was seen to be compatible and produced efficient results in software engineering. Objectives: The aim of this thesis work is to present the potential usage of DevOps practices in robotic software development. 15 DevOps practices were selected from prior research from software engineering and mapped to the robotic software development process and checked for success in terms of applicability and effectiveness. Methods: By performing a research synthesis of the literature, the usage of DevOps practices in robotic software development is proposed and presented. Interview based survey was performed by approaching industry experts on robotic software development to get their response on the results of the research synthesis. Results: The applicability of the DevOps practices in robotic software development is presented and the implications of the potential usage of the practices in the proposed manner are discussed. The potential advantages and limitations of the proposed mapping are discussed and presented. Conclusions: DevOps, like other software development frameworks, has various observable advantages when applied in robotic software development. The interviews confirmed the need for DevOps to be adapted into robotic software development and the benefits it has.
|
114 |
The level of adoption and effectiveness of software development methodologies in the software development industry in South AfricaRamnath, Vishal 21 February 2011 (has links)
The purpose of this study was to describe the software development industry in South Africa by determining the current and future trends in adopting software development methodologies. The main objective was to determine which factors influence the selection of software development methodologies and whether they are effective in delivering projects successfully within the South African context. This study found that the Agile method is the most dominant methodology adopted in the software development industry in South Africa and is also the preferred methodology to be used in the future. It is common practice for companies to adopt more than one software development methodology and the Waterfall method is the next methodology most widely used. There is little adoption of CMMI. All identified factors influence the selection of software development methodologies, however, the distinguishing factors influencing the selection of Agile methods over the Waterfall method in the South African context is team size of between one and five members, project duration of less than three months, iteration length of between two and four weeks and the use of new technology. The most important measurement of project success within the South African context is the delivery of projects on time. The majority of respondents believe that their current dominant methodology is effective in delivering projects successfully. Copyright / Dissertation (MBA)--University of Pretoria, 2010. / Gordon Institute of Business Science (GIBS) / unrestricted
|
115 |
Designing an effective user interface for the Android tablet environmentChang, Genevieve January 2015 (has links)
Includes bibliographical references / With over 1.3 million applications on the Android marketplace, there is increasing competition between mobile applications for customer sales. As usability is a significant factor in an application's success, many mobile developers refer to the Android design guidelines when designing the user interface (UI). These principles help to provide consistency of navigation and aesthetics, with the rest of the Android platform. However, misinterpretation of the abstract guidelines may mean that patterns and elements selected to organise content of an application do not improve the usability. Therefore, usability tests would be beneficial to ensure that an application meets objectives efficiently and improve on user experience. Usability testing is an important and crucial step in the mobile development process Many freelance developers, however, have limited resources for usability testing, even though the advantages of usability feedback during initial development stages are clear and can save time and money in the long-run. In this thesis, we investigate which method of usability testing is most useful for resource constrained mobile developers. To test the efficacy of Android guidelines, three alternate designs of a unique Android tablet application, Glycano, are developed. High-fidelity paper prototypes were presented to end-users for usability testing and to usability experts for heuristic evaluations. Both usability and heuristic tests demonstrated that following the Android guidelines aids in user familiarity and learnability. Regardless of the different UI designs of the three mockups, Android guidelines provided an initial level of usability by providing familiarity to proficient users and an intuitiveness of certain patterns to new users. However, efficiency in building Glycano schematics was an issue that arose consistently. Testing with end-users and experts, revealed several navigational problems. Usability experts uncovered more general UI problems than the end-user group, who focused more on the content of the application. More refinements and suggestions of additional features to enhance usability and user experience were provided by the experts. Use of usability experts would therefore be most advantageous in initial design stages of an application. Feedback from usability testing is, however, also beneficial and is more valuable than not performing any test at all.
|
116 |
SSDE : structured software development environmentNorman, Michael John January 1990 (has links)
Bibliography: pages 219-230. / Software engineers have identified many problem areas regarding the development of software. There is a need for improving system and program quality at design level, ensuring that design costs remain within the budget, and increasing the productivity of designers. Structured Software Development Environment (SSDE) provides the system designer with an interactive menu-driven environment, and a framework within which he can conveniently express and manipulate his proposed solution. This representation is in terms of both a conceptual model and a detailed software logic definition. Thus SSDE provides tools for both high-level (or logical) and low-level (or physical) design. It allows a user to follow his own preferred methodology rather than restricting him to one specific strategy. SSDE builds and maintains databases that record all design decisions. It provides the system designer with a mechanism whereby systems can easily be modified and new systems can evolve from similar existing systems. There are several auxiliary facilities as productivity aids. SSDE generates PASCAL code for low-level design constructs, ·full documentation of both the high- and low-level designs for inclusion in the project file, as well as a skeleton manual. The system was evaluated by a number of independent users. This exercise clearly demonstrated its success as an aid in expressing, understanding, manipulating and solving software development problems.
|
117 |
AI Supported Software Development: Moving Beyond Code CompletionPudari, Rohith 30 August 2022 (has links)
AI-supported programming has arrived, as shown by the introduction and successes of large language models for code, such as Copilot/Codex (Github/OpenAI) and AlphaCode (DeepMind). Above-average human performance on programming challenges is now possible. However, software development is much more than solving programming contests. Moving beyond code completion to AI-supported software development will require an AI system that can, among other things, understand how to avoid code smells, follow language idioms, and eventually (maybe!) propose rational software designs.
In this study, we explore the current limitations of Copilot and offer a simple taxonomy for understanding the classification of AI-supported code completion tools in this space. We first perform an exploratory study on Copilot’s code suggestions for language idioms and code smells. Copilot does not follow language idioms and avoid code smells in most of our test scenarios. We then conduct additional investigation to determine the current boundaries of Copilot by introducing a taxonomy of software abstraction hierarchies where ‘basic programming functionality’ such as code compilation and syntax checking is at the least abstract level, software architecture analysis and design are at the most abstract level. We conclude by providing a discussion on challenges for future development of AI-supported code completion tools to reach the design level of abstraction in our taxonomy. / Graduate
|
118 |
Modulär Programutveckling : Hur kan modularisering användas för att effektivisera utvecklingsprocessen? / Modular Software Development : How can modular software components streamline the development process?Nyrén, Paul, von Sydow Yllenius, Trolle, Isaksson, Oscar January 2017 (has links)
Den här studien avser undersöka behovet av modularitet inom mjukvaruutveckling, dess implikationer på utvecklingsprocessen samt dess affärsnytta, men berör också tekniker för att uppnå modularitet. Detta är en fallstudie kring utvecklingen av Control Center, en flexibel och konfigurerbar plattform för data-management. Control Center har utvecklats för, och tillsammans med, Tuzame AB. Control Center är kundens interface för att hantera sin data och sin digitala plattform. Möjligheten att skapa en flexibel plattform för att snabbt kunna skapa olika typer av kundlösningar genom att välja komponenter från en testad kodbas kommer att undersökas. Rapporten har två huvudsakliga målsättningar; dels att beskriva hur utvecklingsarbetet kring en modulär plattform kan gå till, och dels att undersöka vilken påverkan en modulär plattform kan ha på utvecklingsprocessen av ett data management-verktyg på ett litet företag. “CC is highly configurable and flexible data management tool which gives an easy and reliable way to access and modify data” - Pavel Getta, utvecklare på Tuzame AB / This study aims at investigating the need for modularity in software development, what implications it might have on the development process, what business value it might hold and touches on some techniques for achieving modularity. The study was done as a case study regarding the development of Control Center, a highly configurable and flexible data management tool. Control Center has been developed for, and in collaboration with, Tuzame AB. Control Center is the customer interface for handling their data and digital platform. The possibility to create a flexible platform to quickly create different types of customer solutions by selecting components from a tested code base will be investigated. The report has two main objectives; to describe how software development based on a modular platform can improve the workflow, and to investigate the extent to which a modular platform can affect the development process of a data management tool in a small business. “CC is highly configurable and flexible data management tool which gives an easy and reliable way to access and modify data” - Pavel Getta, developer at Tuzame AB.
|
119 |
LABVIEW SOFTWARE DEVELOPMENT FOR INPUT AND OUTPUT MEASUREMENT AND CONTROL OF FLEXLABSaunders, Carrie L. January 2006 (has links)
No description available.
|
120 |
Developing Scientific Computing Software: Current Processes and Future DirectionsTang, Jin 05 1900 (has links)
<p> Considerable emphasis in scientific computing (SC) software development has been placed on the software qualities of performance and correctness. However, other software qualities have received less attention, such as the qualities of usability, maintainability, testability and reusability. </p> <p> Presented in this work is a survey titled "Survey on Developing Scientific Computing Software," which is apparently the first conducted to explore the current approaches to SC software development and to determine which qualities of SC software are in most need of improvement. From the survey, we found that systematic development process is frequently not adopted in the SC software community, since 58% of respondents mentioned that their entire development process potentially consists only of coding and debugging. Moreover, semi-formal and formal specification is rarely used when developing SC software, which is suggested by the fact that 70% of respondents indicate that they only use informal specification. </p> <p> In terms of the problems in SC software development, which are discovered by analyzing the survey results, a solution is proposed to improve the quality of SC software by using SE methodologies, concretely, using a modified Parnas' Rational Design Process (PRDP) and the Unified Software Development Process (USDP). A comparison of the two candidate processes is provided to help SC software practitioners determine which of the two processes fits their particular situation. To clarify the discussion of PRDP and USDP for SC software and to help SC software practitioners better understand how to use PRDP and USDP in SC software, a completely documented one-dimensional numerical integration solver (ONIS) example is presented for both PRDP and USDP. </p> / Thesis / Master of Applied Science (MASc)
|
Page generated in 0.0592 seconds