• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 82
  • 15
  • 14
  • 5
  • 2
  • 2
  • 1
  • 1
  • 1
  • 1
  • 1
  • Tagged with
  • 134
  • 134
  • 134
  • 56
  • 47
  • 29
  • 24
  • 23
  • 20
  • 18
  • 18
  • 18
  • 16
  • 15
  • 15
  • 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.
121

Guidance on Implementing Agile Software Development Methods within a Traditional Environment / Vägledning kring implementering av agila systemutvecklingsmetoder i en traditionell miljö

Wallström, Andreas January 2021 (has links)
Agile software development methods keep increasing in popularity. Many organizations who are using traditional software development methods, such as water-fall and stagegate based methods are switching to agile software development methods. This transition can be challenging, especially for organizations using project governance models that hinder the adoption of agile practices. This study aims to provide guidance to managers on how to introduce agile software development methods in such traditional organizations. The study is a single-case study on a large governmental agency in Sweden. Eight interviews with developers, team-leads and managers were conducted. The study identifies practical tools and ideas that managers can use to introduce a shared definition of agile, adopting an agile mindset, dedicated teams, and CI&CD. Together, this guidance supports managers with the introduction of agile software development methods in organizations utilizing traditional project governance structures and traditional software development methods. / Agila systemutvecklingsmetoder fortsätter öka i popularitet. Många organisationer som använder sig av traditionella systemutvecklingsmetoder så som vattenfallsmodellen byter till agila systemutvecklingsmetoder. Denna övergång kan vara utmanande, speciellt för organisationer som använder sig av projektbaserade förvaltningsmodeller som hindrar implementeringen av agila metoder. Den här studien syftar till att ge vägledningen till chefer kring hur de kan introducera agila systemutvecklingsmetoder iden nyss nämnda typen av traditionella organisationer. Studien är en fallstudie gjort på en stor myndighet i Sverige. Åtta intervjuer med systemutvecklare, lag-ledare och chefer har utförts. Studien identifierar verktyg och idéer som chefer kan använda sig avför att introducera en delad gemensam definition av agilt, anamma ett agilt tankesätt, introducera dedikerade teams och CI&CD. Tillsammans hjälper de här verktygen med introduktionen av agila systemutvecklingsmetoder i organisationer som använder sig av traditionella systemutvecklingsmetoder och förvaltningsmodeller.
122

Förderung der Anerkennung in agilen Softwareentwicklungsprozessen

Schwarzer, Jan, Barnkow, Lorenz, Luck, Kai von January 2013 (has links)
Der Beruf als wesentliche Institution der Anerkennung in der modernen Gesellschaft steht im Wandel und dadurch die Anerkennungschancen und -formen der Arbeit. Fokussiert wird zunehmend Arbeit, die sich an ihrem Erfolg misst und weniger Arbeit, bei welcher die Leistung an sich im Vordergrund steht. Dadurch wird die Wertlosigkeit bestimmter Beschäftigungsgruppen gefördert sowie die De-Institutionalisierung der Anerkennung im Beruf gestärkt. Zudem entfallen durch immer flacher werdende Unternehmens-Hierarchien auch Möglichkeiten Anerkennung durch Positionssymbole auszurücken. Dies bedeutet, dass die Sichtbarmachung von Leistung und des Sich-Sichtbarmachens an Wichtigkeit gewinnt. (...)
123

Measuring Performance in Large Scale Agile Software Development Projects / Mäta Prestanda av Storskaliga Agila Mjukvaruutvecklingsprojekt

Magnusson, Evelina, Westlund, Moa January 2021 (has links)
The increased usage and need for software as part of products has challenged traditional project management, nevertheless for hardware heavy organisations that are used to rely on the linear prediction and tracking of project outcomes. The developments in projects with embedded systems have countless dependencies and almost impossible to predict. Literature shows that software development projects have problems meeting the initial goals of budget, time, and scope. This is discovered too late due to insufficient methods of tracking progress. The purpose of this thesis was to investigate how large agile software development projects can continuously be followed to evaluate their performance and meet initial customer agreements fixed in time, budget, and scope. The thesis was conducted at Saab, active in the defense and security industry. This qualitative exploratory study was conducted with semistructured interviews and focus group discussions at the case company Saab, benchmark interviews with two additional companies, and an extensive literature study. The issues with the existing tracking approach were explored to determine how progress tracking may be created to continuously measure progress and indicate if project goals will be accomplished or not. The more general challenges in software development were also investigated to provide knowledge about areas in need of additional metrics which could indicate the problem and mitigate it. One industry-specific challenge is the security aspect that is unavoidable and requires a lot of documentation that holds up the development activities. Other detected challenges were difficulties in understanding requirements that lead to faulty estimations and work in the wrong direction, undiscovered dependencies that lead to a lot of rework and waiting for additional parts, insufficient testing environments that lead to late feedback, and holds up the development. It was also visible that the projects were conducted with different management approaches and no best-proven practice existed for tracking performance. From an analysis of the empirical data and existing literature, a suggestion of method tracking design was developed for large agile software projects with fixed contracts. The models were proposed to allow flexibility, enable control, and provide a holistic view. As Saab intends to introduce Earned Value Management in their software projects, this method was complemented with COMOD, TRL, IRL, and SRL to provide these three characteristics. Transparency and visibility of both products and processes are also found to be key to project success, thus additional metrics to increase visibility in projects are suggested to enable efficient project leading. / Den ökade användningen och behovet av mjukvara har utmanat traditionell projektledning, speciellt för hårdvaruorganisationer som är vana att kunna förlita sig på den linjära utvecklingen av ett projek. Utvecklingen av projekt som inkluderar inbyggda system med otaliga beroenden är nästan omöjliga att förutsäga. Litteratur visar att mjukvaruutvecklingsprojekt har problem att nå de ursprungliga målen för budget, tid och omfattning. Detta upptäcks för sent på grund av otillräckliga metoder för att mäta framsteg i projekt. Detta examensarbete genomfördes som en fallstudie på Saab, aktiv inom försvar- och säkerhetssektorn. Syftet med denna avhandling har varit att utvärdera hur projektledning för stora agila mjukvaruutvecklingsprojekt kontinuerligt kan följa utvecklingen för att möta de ursprungliga kundavtalen som är fastställda i tid, budget och omfattning. Denna kvalitativa undersökningsstudie genomfördes med semistrukturerade intervjuer och fokusgrupp intervjuer på företaget Saab, benchmarking intervjuer med ytterligare två företag och en omfattande litteraturstudie. För att utvärdera hur en metod för utvärdering av projektstatus ska utformas för att i tid ange om projektmålen inte kommer att uppnås, undersöktes utmaningarna med mjukvaruutveckling och därifrån har möjliga mätvärden och metoder för att mildra eller upptäcka dessa problem utvärderats. Några av de upptäckta problemen verkar överlappa flera industrier medan andra verkar vara mer specifika för just militär- och försvarsindustrin. En branschspecifik utmaning är säkerhetsaspekten som är oundviklig och kräver mycket dokumentation som stannar upp utvecklingsaktiviteterna. Andra upptäckta utmaningar var svårigheter att förstå krav som leder till felaktiga uppskattningar och arbete i fel riktning, oupptäckta beroenden som leder till mycket omarbetning och väntande på ytterligare delar, otillräckliga testmiljöer som leder till sen feedback och håller upp utvecklingen. Stora skillnader i de metoder som idag tillämpas från projektledning i dessa projekt var synligt under projektet, vilket indikerar på att det idag inte finns någon accepteras bästa metod i uppföjlning. Från analys av samlad empirisk data samt befintlig litteratur utvecklades ett förslag på hur en metod för uppföljning av stora agila mjukvaruprojekt skulle kunna se ut. Design på föreslagen modell skulle möjliggöra flexibilitet och kontroll samt förmedla ett helhetsperpektiv. Eftersom Saab avser att introducera Earned Value Management i sina mjukvaruprojekt kompletterades denna metod med COMOD, TRL, IRL och SRL för att få dessa tre egenskaper. Öppenhet och synlighet för både produkt och process visar sig också vara nyckeln till framgång i projektutveckling, vilket är möjligt med ytterligare mått för att öka synligheten i projektet.
124

網際網路企業對敏捷軟體開發程序採用的成功案例 -以AUTOTRADECENTER為例 / A case study on autotradecenter - an internet business successfully adopted agile software development process to create agility as core competence

黃薇如 Unknown Date (has links)
逐漸崛起的網際網路經濟在科技及商業環境的快速變化中促使軟體開發程序漸漸進化成因應需求而調整式的程序,敏捷開發程序的演化在過去十幾年已幫助許多網際網路商業設立而且使其可以保持競爭力。 採用敏捷開發程序的網際網路商業組織較具有彈性,可以在任何軟體開發的階段中對於針對需求的改變而改變軟體的開發。主要加快軟體完成的因素是保持一個輕量級並有密切及通暢溝通的團隊。快速的軟體開發週期以及原形的開發使得初步可行性研究較簡單,也因此可以幫助需求單位提早測試軟體並提早提供回饋。 開放原始碼技術能幫助敏捷組織創新。知識轉移與技術管理在沒有很多文件紀錄的敏捷軟體開發環境中也扮演非常重要的角色。 處於隨時因應需求而敏捷調整步調成為組織的核心競爭力。組織的文化與價值需要根據組織要求的敏捷特性來調整。在事者應當用社會控制體系來管理其員工,而非用傳統式的正式控制體系。 AutoTradeCenter成功的採用敏捷方法而成為一個敏捷的組織。它採用開放原始碼技術並強調創新管理。也建立組織的文化與價值來支持其「敏捷開發系統」的建立。該公司的高度敏捷度在2000年代初期的不景氣時候仍讓其保持競爭力。 本研究建議任何新成立的網際網路商業公司可以嚐試使用AutoTradeCenter所採用的敏捷開發方式來建立組織的競爭力。 / The fast change technology and business environment from the emerging Internet economy have resulted in the evolution of the software development process into an adaptive process. This evolution of the agile software development process has helped numerous new Internet businesses to enter the field and to stay competitive over the past decades. Internet businesses, which adopted the agile software development methodology, are able to remain flexible and address changes in any stage of software development process. A lightweight team with close and good communications is the key ingredient to speedily deliver software products. Quick cycles and prototypes make feasibility studies easier and allow business people to test and provide feedback thereby allowing creation of the innovative products that truly address the market requirements. Open source technology has helped agile organizations to innovate and materialize the innovation. Knowledge transfer and technology management play important roles in an agile software development environment without a need for excess documentations. Organizations stay adaptive with agility as their core competence. The organizational values and culture need to be shaped accordingly to support the agile spirit across organizations. Incumbents should motivate the members using social control system rather than the formal control system. AutoTradeCenter, a case study used in this research, successfully formed an agile organization by adopting the agile methodology, utilizing and managing the open source technology, and creating an adaptive culture and value. The agility helped the company staying competitive during the economic downturn in early 2000. This research suggested that any Internet startup can adopt the same path that AutoTradeCenter chose to create its competitive advantages. Keywords: Agile Software Development, Open Source Technology, Knowledge Management, Organizational Culture, Core Competence, Competitive Advantage, Internet Business Model, AutoTradeCenter
125

ScrumUX: uma abordagem para integrar design de interação do usuário ao processo Scrum / ScrumUX: an approach to integrate user interaction design at the scrum process

Choma, Joelma 10 November 2015 (has links)
Submitted by Milena Rubi (milenarubi@ufscar.br) on 2016-10-19T11:30:53Z No. of bitstreams: 1 Choma_Joelma_2015.pdf: 93651349 bytes, checksum: 4f1e422a507384b78e63a797fc7488f8 (MD5) / Approved for entry into archive by Milena Rubi (milenarubi@ufscar.br) on 2016-10-19T11:31:08Z (GMT) No. of bitstreams: 1 Choma_Joelma_2015.pdf: 93651349 bytes, checksum: 4f1e422a507384b78e63a797fc7488f8 (MD5) / Approved for entry into archive by Milena Rubi (milenarubi@ufscar.br) on 2016-10-19T11:31:20Z (GMT) No. of bitstreams: 1 Choma_Joelma_2015.pdf: 93651349 bytes, checksum: 4f1e422a507384b78e63a797fc7488f8 (MD5) / Made available in DSpace on 2016-10-19T11:31:30Z (GMT). No. of bitstreams: 1 Choma_Joelma_2015.pdf: 93651349 bytes, checksum: 4f1e422a507384b78e63a797fc7488f8 (MD5) Previous issue date: 2015-11-10 / Não recebi financiamento / Agile development principles ensure that continuous attention to technical excellence combined with a good design contributes to increased agility ensuring products with higher quality. Usability is one of the quality attributes, and is related to making the experience enjoyable user through an efficient and intuitive interface design. Agile methods are committed to deliver valuable software to the satisfaction of the customer. At times, they deliver only the utility, without covering aspects of usability. Design solutions providing greater usability and more appropriate to the users’ context is the main concern of the Interaction Design (IxD). The IxD is based on user-centered design, which takes into account the users needs and wants, aiming to promote interaction more enjoyable experience. In recent years, the attention in integrating user-centered design practices into agile methodologies has increased. However, a very limited number of contributions have addressed the integration into a broader level, gathering practices and providing guidance to the organization of work within a software development roadmap. This dissertation presents an approach to integrate user interaction design into Scrum process through activities and artifacts. In the first stage of the study, a literature study was performed to determine possible strategies for integrating IxD into Scrum process. Furthermore, an action research approach was applied to define and evaluate the artifacts that would support the ScrumUX integration approach, closely with the professionals in the software development industry. In the second stage, an experimental study was carried out to evaluate the proposed ScrumUX integration compared to traditional Scrum approach. The experiment was carried out in an academic context, in which nineteen students divided into five teams worked in software development projects, in the ERP systems domain. Statistical tests confirmed a significant difference between the experimental and control groups, noting that the teams who used the ScrumUX approach produced software with better degree of usability in the task support perspective, considering ERP systems’ users opinion. / Princípios do desenvolvimento ágil asseguram que a atenção contínua á excelência técnica aliada á um bom design contribui para o aumento de agilidade garantindo produtos com maior qualidade. A usabilidade é um dos atributos da qualidade, e está relacionada com tornar a experiência do usuário agradável por meio de um design de interface eficiente e intuitivo. Métodos ágeis estão comprometidos em satisfazer os clientes entregando software de valor. Mas, por vezes, acabam entregando somente a utilidade, sem cobrir os aspectos de usabilidade. Projetar soluções com maior usabilidade e mais apropriadas ao contexto dos usuários é a principal preocupação do Design de Interação (DxI). O DxI fundamenta-se no design centrado no usuário, que leva em conta as necessidades e desejos dos usuários para promover a mais agradável experiência de interação. O interesse em integrar práticas de design centrado no usuário com metodologias ágeis tem aumentado nos últimos anos. Contudo, um número bem limitado de contribuições têm abordado a integração em um nível mais abrangente, reunindo práticas e fornecendo orientações para a organização do trabalho dentro de um roteiro de desenvolvimento de software. Esta dissertação apresenta uma abordagem para integrar o Design de Interação do usuário ao processo Scrum por meio de atividades e artefatos. Na primeira etapa do estudo, realizou-se um estudo bibliográfico para verificar as possíveis estratégias para a integração do DxI com o processo Scrum, e em paralelo uma abordagem de pesquisa-ação foi aplicada, junto á profissionais da indústria de desenvolvimento de software, para definir e avaliar os artefatos que dariam suporte á abordagem de integração ScrumUX. Na segunda etapa, um estudo experimental foi conduzido com objetivo de avaliar a proposta de integração ScrumUX em relação ao Scrum tradicional. O experimento foi realizado em contexto acadêmico, onde dezenove alunos divididos em cinco equipes atuaram em projetos de desenvolvimento de software no domínio de sistemas ERP. Os testes estatísticos confirmaram uma diferença significativa entre os grupos experimentais e de controle, apontando que as equipes que utilizaram a abordagem ScrumUX produziram softwares com melhor grau de usabilidade na perspectiva de suporte á tarefas, considerando o ponto de vista de usuários de sistemas ERP.
126

WS-TDD: uma abordagem ágil para o desenvolvimento de serviços WEB / WS-TDD: an agile approach to WEB services development

Bissi, Wilson 23 March 2016 (has links)
Test Driven Development (TDD) é uma prática ágil que ganhou popularidade ao ser definida como parte fundamental na eXtreme Programming (XP). Essa prática determina que os testes devem ser escritos antes da implementação do código. TDD e seus efeitos têm sido amplamente estudados e comparados com a prática Test Last Development (TLD) em diversos trabalhos. Entretanto, poucos estudos abordam TDD no desenvolvimento de Web Services (WS), devido à complexidade em testar as dependências entre os componentes distribuídos e as particularidades da Service Oriented Architecture (SOA). Este trabalho tem por objetivo definir e validar uma abordagem para o desenvolvimento de WS baseada na prática de TDD, denominada WS-TDD. Essa abordagem guia os desenvolvedores no uso de TDD durante o desenvolvimento de WS, sugerindo ferramentas e técnicas para lidar com as dependências e as particularidades de SOA, com foco na criação dos testes unitários e integrados automatizados na linguagem Java. No intuito de definir e validar a abordagem proposta, quatro métodos de pesquisa foram executados: (i) questionário presencial; (ii) experimento; (iii) entrevista presencial com cada participante do experimento e (iv) triangulação dos resultados com as pessoas que participaram nos três métodos anteriores. De acordo com os resultados obtidos, a WS-TDD mostrou-se mais eficiente quando comparada a TLD, aumentando a qualidade interna do software e a produtividade dos desenvolvedores. No entanto, a qualidade externa do software diminuiu, apresentando um maior número de defeitos quando comparada a TLD. Por fim, é importante destacar que a abordagem proposta surge como uma alternativa simples e prática para a adoção de TDD no desenvolvimento de WS, trazendo benefícios a qualidade interna e contribuindo para aumentar a produtividade dos desenvolvedores. Porém, a qualidade externa do software diminuiu ao utilizar a WS-TDD. / Test Driven Development (TDD) is an agile practice that gained popularity when defined as a fundamental part in eXtreme Programming (XP). This practice determines that the tests should be written before implementing the code. TDD and its effects have been widely studied and compared with the Test Last Development (TLD) in several studies. However, few studies address TDD practice in the development of Web Services (WS), due to the complexity of testing the dependencies among distributed components and the specific characteristics of Service Oriented Architecture (SOA). This study aims to define and validate an approach to develop WS based on the practice of TDD, called WS-TDD. This approach guides developers to use TDD to develop WS, suggesting tools and techniques to deal with SOA particularities and dependencies, focusing on the creation of the unitary and integrated automated tests in Java. In order to define and validate the proposed approach, four research methods have been carried out: (i) questionnaire; (ii) practical experiment; (iii) personal interview with each participant in the experiment and (iv) triangulation of the results with the people who participated in the three previous methods. According to the obtained results, WS-TDD was more efficient compared to TLD, increasing internal software quality and developer productivity. However, the external software quality has decreased due to a greater number of defects compared to the TLD approach. Finally, it is important to highlight that the proposed approach is a simple and practical alternative for the adoption of TDD in the development of WS, bringing benefits to internal quality and contributing to increase the developers’ productivity. However, the external software quality has decreased when using WS-TDD.
127

Priorização de testes de sistema automatizados por meio de grafos de chamadas / Test case prioritization of automated system tests using call graphs

Meros, Jader Elias 31 March 2016 (has links)
Com a necessidade cada vez maior de agilizar a entrega de novos desenvolvimentos ao cliente e de diminuir o tempo de desenvolvimento das aplicações, a priorização de casos de teste possibilita a detecção das falhas presentes na aplicação mais rapidamente por meio da ordenação dos casos de teste a serem executados. E, com isso, possibilita também que a correção destas falhas inicie o mais brevemente possível. Entretanto, quando os casos de teste a serem priorizados são testes automatizados de sistema, critérios tradicionais utilizados na literatura como cobertura de código ou modelos do sistema deixam de ser interessantes, dada a característica inerente deste tipo de teste na qual a organização e a modelagem adotadas são ignoradas por se tratarem de testes de caixa preta. Considerando a hipótese de que casos de teste automatizados grandes testam mais partes da aplicação e que casos de teste similares podem estar testando a mesma área da aplicação, parece válido crer que a execução dos casos de teste de sistema priorizando os testes mais complexos pode alcançar resultados positivos quando comparada à execução não ordenada dos casos de teste. É neste cenário que este trabalho propõe o uso dos grafos de chamadas dos próprios casos de teste como critério para priorização destes, priorizando assim a execução dos casos de teste com a maior quantidade de nós no seu grafo. A abordagem proposta neste trabalho mostrou, por meio de dois estudos de caso, ser capaz de melhorar a taxa de detecção de falhas em relação à execução não ordenada dos casos de teste. Além disso, a abordagem proposta obteve resultados semelhantes as abordagens tradicionais de priorização utilizando cobertura de código da aplicação. / With the increasing need to streamline the delivery of new developments to the customer and reduce application development time, test case prioritization allows a quicker detection of faults present in the application through the ordering of test cases to be executed. Besides that, a quicker detection enables also the correction of these faults to start as soon as possible. However, when the test cases to be prioritized are automated system tests, traditional criteria used in the literature like code coverage or system models become uninteresting, given that this type of test case, classified as black box test, ignores how the application was coded or modeled. Considering the hypothesis that bigger automated test cases verify more parts of the application and that similar test cases may be testing the same application areas, it seems valid to believe that giving a higher priority to more complex test cases to be executed first can accomplish positive results when compared to the unordered execution of test cases. It is on this scenario that this project studies the usage of call graphs from test cases as the criterion to prioritize them, increasing the priority of the execution of test cases with the higher number of nodes on the graph. The approach proposed in this document showed through two case studies that it is capable of improving fault detection rate compared to unordered test cases. Furthermore, the proposed approach achieved similar results when compared to a traditional prioritization approach using code coverage of the application.
128

WS-TDD: uma abordagem ágil para o desenvolvimento de serviços WEB / WS-TDD: an agile approach to WEB services development

Bissi, Wilson 23 March 2016 (has links)
Test Driven Development (TDD) é uma prática ágil que ganhou popularidade ao ser definida como parte fundamental na eXtreme Programming (XP). Essa prática determina que os testes devem ser escritos antes da implementação do código. TDD e seus efeitos têm sido amplamente estudados e comparados com a prática Test Last Development (TLD) em diversos trabalhos. Entretanto, poucos estudos abordam TDD no desenvolvimento de Web Services (WS), devido à complexidade em testar as dependências entre os componentes distribuídos e as particularidades da Service Oriented Architecture (SOA). Este trabalho tem por objetivo definir e validar uma abordagem para o desenvolvimento de WS baseada na prática de TDD, denominada WS-TDD. Essa abordagem guia os desenvolvedores no uso de TDD durante o desenvolvimento de WS, sugerindo ferramentas e técnicas para lidar com as dependências e as particularidades de SOA, com foco na criação dos testes unitários e integrados automatizados na linguagem Java. No intuito de definir e validar a abordagem proposta, quatro métodos de pesquisa foram executados: (i) questionário presencial; (ii) experimento; (iii) entrevista presencial com cada participante do experimento e (iv) triangulação dos resultados com as pessoas que participaram nos três métodos anteriores. De acordo com os resultados obtidos, a WS-TDD mostrou-se mais eficiente quando comparada a TLD, aumentando a qualidade interna do software e a produtividade dos desenvolvedores. No entanto, a qualidade externa do software diminuiu, apresentando um maior número de defeitos quando comparada a TLD. Por fim, é importante destacar que a abordagem proposta surge como uma alternativa simples e prática para a adoção de TDD no desenvolvimento de WS, trazendo benefícios a qualidade interna e contribuindo para aumentar a produtividade dos desenvolvedores. Porém, a qualidade externa do software diminuiu ao utilizar a WS-TDD. / Test Driven Development (TDD) is an agile practice that gained popularity when defined as a fundamental part in eXtreme Programming (XP). This practice determines that the tests should be written before implementing the code. TDD and its effects have been widely studied and compared with the Test Last Development (TLD) in several studies. However, few studies address TDD practice in the development of Web Services (WS), due to the complexity of testing the dependencies among distributed components and the specific characteristics of Service Oriented Architecture (SOA). This study aims to define and validate an approach to develop WS based on the practice of TDD, called WS-TDD. This approach guides developers to use TDD to develop WS, suggesting tools and techniques to deal with SOA particularities and dependencies, focusing on the creation of the unitary and integrated automated tests in Java. In order to define and validate the proposed approach, four research methods have been carried out: (i) questionnaire; (ii) practical experiment; (iii) personal interview with each participant in the experiment and (iv) triangulation of the results with the people who participated in the three previous methods. According to the obtained results, WS-TDD was more efficient compared to TLD, increasing internal software quality and developer productivity. However, the external software quality has decreased due to a greater number of defects compared to the TLD approach. Finally, it is important to highlight that the proposed approach is a simple and practical alternative for the adoption of TDD in the development of WS, bringing benefits to internal quality and contributing to increase the developers’ productivity. However, the external software quality has decreased when using WS-TDD.
129

Priorização de testes de sistema automatizados por meio de grafos de chamadas / Test case prioritization of automated system tests using call graphs

Meros, Jader Elias 31 March 2016 (has links)
Com a necessidade cada vez maior de agilizar a entrega de novos desenvolvimentos ao cliente e de diminuir o tempo de desenvolvimento das aplicações, a priorização de casos de teste possibilita a detecção das falhas presentes na aplicação mais rapidamente por meio da ordenação dos casos de teste a serem executados. E, com isso, possibilita também que a correção destas falhas inicie o mais brevemente possível. Entretanto, quando os casos de teste a serem priorizados são testes automatizados de sistema, critérios tradicionais utilizados na literatura como cobertura de código ou modelos do sistema deixam de ser interessantes, dada a característica inerente deste tipo de teste na qual a organização e a modelagem adotadas são ignoradas por se tratarem de testes de caixa preta. Considerando a hipótese de que casos de teste automatizados grandes testam mais partes da aplicação e que casos de teste similares podem estar testando a mesma área da aplicação, parece válido crer que a execução dos casos de teste de sistema priorizando os testes mais complexos pode alcançar resultados positivos quando comparada à execução não ordenada dos casos de teste. É neste cenário que este trabalho propõe o uso dos grafos de chamadas dos próprios casos de teste como critério para priorização destes, priorizando assim a execução dos casos de teste com a maior quantidade de nós no seu grafo. A abordagem proposta neste trabalho mostrou, por meio de dois estudos de caso, ser capaz de melhorar a taxa de detecção de falhas em relação à execução não ordenada dos casos de teste. Além disso, a abordagem proposta obteve resultados semelhantes as abordagens tradicionais de priorização utilizando cobertura de código da aplicação. / With the increasing need to streamline the delivery of new developments to the customer and reduce application development time, test case prioritization allows a quicker detection of faults present in the application through the ordering of test cases to be executed. Besides that, a quicker detection enables also the correction of these faults to start as soon as possible. However, when the test cases to be prioritized are automated system tests, traditional criteria used in the literature like code coverage or system models become uninteresting, given that this type of test case, classified as black box test, ignores how the application was coded or modeled. Considering the hypothesis that bigger automated test cases verify more parts of the application and that similar test cases may be testing the same application areas, it seems valid to believe that giving a higher priority to more complex test cases to be executed first can accomplish positive results when compared to the unordered execution of test cases. It is on this scenario that this project studies the usage of call graphs from test cases as the criterion to prioritize them, increasing the priority of the execution of test cases with the higher number of nodes on the graph. The approach proposed in this document showed through two case studies that it is capable of improving fault detection rate compared to unordered test cases. Furthermore, the proposed approach achieved similar results when compared to a traditional prioritization approach using code coverage of the application.
130

Dysfunctional aspects of Software Development : An analysis of how lip-service, deception and organisational politics may side-track the result of well-intended methodologies / Problematiska aspekter inom programvaruutveckling : En analys av hur läpparnas bekännelser, vilseledande och organisationspolitik kan förstöra välmenande metoder

Gislen, Mikael January 2012 (has links)
This paper tries to identify and understand the human social obstacles for developing quality software. These include lip-service, cutting corners, deception and effects of internal politics. These obstacles can undermine the good intentions behind the software methodologies. The paper draws from the literature in different disciplines and uses an ethnographic research methodology to create a rich picture of the concerning aspects in the framework of one software development company in India. What stands out among the findings are that internal audits has mainly focused on finding errors in documentation procedures but study of the actual practices has often been shallow. In addition the understanding of business risks by the internal auditors have often been weak. Context. The human based obstacles affecting Software Development Methodology analysed in the context of an ISO 9000 quality system in an Indian Software Development company working mainly with Swedish companies. Objectives. Identifying and increasing the understanding of intrinsic negative social aspects such as lip service, cheating and politics which are affecting the results of Software Development Methodologies and if possible suggest some means to mitigate them. In particular to create a deeper understanding of why people cheat and pay lip service to methodologies and to try to understand the political aspects of methodology and quality systems. There are other positive social aspects, but they are not considered since the objective is about understanding the negative aspects and possibly mitigate them. Methods. Ethnographic research using analysis of ISO 9000 and design artefacts, semi-structured interviews, participation in internal audits, Results. Most focus in audits was on documentation and very less focus on underlying methodologies, some indications of lip-service to process and processes were also mainly managed on a higher level in the organization while the understanding and practices were less well established on lower level. It was hard to get a grip on the internal political aspects since the perception of the subject in the informants view was that it is mainly malicious and therefore embarrassing to speak about. Some conflicts between internal quality goals and customers’ needs were also identified. Conclusions. An ethnographic research methodology gives a rich picture. The analysis gives deeper understanding of the problem areas, but not necessary solutions. The author suggests that at the heart of the problem is a difference in world view. Software professionals generally tend to resolve [technical] problems using a reductionist approach, while these intricate challenges cannot easily be resolved by this approach. A more holistic systemic approach is required and while the software methodology is useful to structure the development it does not resolve these dysfunctions. They have to be resolved on another level. It was also found that further studies is required in particular to better understand Internal politics, the effect of Positive and Negative Incentives, the effect of software metrics on quality performance and subjectivity in customers’ perception and expectation. / Uppsatsen försöker förstå mänskliga sociala hinder för att utveckla programvara med hög kvalitet. Dessa hinder inkluderar "läpparnas bekännelser", ta genvägar, vilseleda och internpolitik. Sådana hinder kan underminera utvecklingsmetoder. Denna uppsats bygger på literatur från olika discipliner och använder etnografisk forskningsmetodik för att skapa en rik bild av dessa oroande aspekter inom ramen för ett IT-företag i Indien. Vad står ut är att intern kvalitetsrevision fokuserar för mycket på att finna fel i dokumentationsprocesser medan revision av hur utvecklingsarbetet faktiskt sker har varit för ytligt. Dessutom har de interna revisorernas förståelse av affärsrisker varit svag.

Page generated in 0.4997 seconds