• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 21
  • 3
  • 2
  • 1
  • 1
  • 1
  • 1
  • 1
  • Tagged with
  • 27
  • 27
  • 26
  • 21
  • 20
  • 15
  • 10
  • 9
  • 8
  • 8
  • 7
  • 7
  • 7
  • 7
  • 6
  • 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.
21

A influência do dojo de programação no ensino de práticas ágeis

Luz, Ramiro Batista da 26 August 2013 (has links)
Dojo de Programação é uma atividade dinâmica e colaborativa inspirada em artes marciais onde é possível praticar programação, especialmente técnicas relacionadas a métodos ágeis. Os métodos de ensino atuais tratam todos os alunos da mesma forma. Cada pessoa tem uma história, experiências, habilidades, conhecimentos. Raramente as particularidades de cada indivíduo são respeitadas. Buscamos verificar qual a influência do Dojo de Programação como atividade de ensino a fim de promover a interação entre os alunos. O Dojo de Programação oferece os recursos necessários para ensino acadêmico de programação de computadores? Para responder a questão foram realizados questionários com leigos e participantes ativos de Dojo de Programação, participantes espontâneos de grupos de Dojo de Programação e participantes compulsórios de alunos que participaram de Dojo de Programação em aula de disciplina regular de especialização na Universidade Tecnológica Federal do Paraná. Foram realizadas entrevistas com especialistas organizadores de encontros de Dojo de Programação. Pontos positivos, como a participação dos alunos e negativos, como o fato de não ser uma atividade adequada para apresentação de assuntos teóricos, foram ponderados. Os resultados obtidos sugerem que a atividade pode ser utilizada de forma complementar em disciplinas de programação de computadores a fim de aumentar a participação dos alunos e permitir ao professor conhecer as dificuldades e facilidades de cada aluno individualmente. / Coding Dojo is a dynamic and collaborative activity inspired by martial arts where you can practice programming, especially techniques related to agile methods. The existing teaching methods treat all students the same way. Each person has a story, experiences, skills, knowledge. Rarely the particularities of each individual are respected. The purpose of this research is to verify the influence of the Coding Dojo in teaching agile practices. The Coding Dojo offers the required resources to academic teaching computer programming? To answer the question surveys were conducted with novice and active participants of Coding Dojo, also spontaneous participants in groups of Coding Dojo and students who attended compulsorily in a Coding Dojo during a class of a regular discipline of one specialization course in Federal Technological University of Paraná. Interviews were conducted with experts organizers of meetings of Coding Dojo. Strengths, such as student participation and weaknesses, as not being a suitable practice for presenting theoretical contents were considered. The obtained results suggest that the activity can be used complementary in computer programming disciplines to increase student participation and allow the teacher to know the difficulties and facilities of each student individually.
22

Experiências com desenvolvimento ágil / Experiences with agile development

Dairton Luiz Bassi Filho 18 March 2008 (has links)
A crescente demanda por sistemas e a alta velocidade com que seus requisitos evoluem têm evidenciado que desenvolvimento de software exige flexibilidade, pois muitas decisões precisam ser tomadas durante o projeto. Além disso, as dificuldades para a produção de sistemas vão muito além das questões técnicas. Fatores estratégicos, comerciais e humanos são responsáveis por algumas das variáveis que contribuem para tornar o desenvolvimento de sistemas de software uma atividade altamente complexa. Modelos tradicionais de desenvolvimento de software propõem processos prescritivos que não consideram toda essa complexidade. Por outro lado, Métodos Ágeis de desenvolvimento de software sugerem uma abordagem mais humanística com foco na entrega rápida e constante de software com valor de negócios. Porém, para conseguir isto, é preciso escolher um conjunto de práticas de desenvolvimento adequado às características do projeto e da equipe. Desta forma, a natureza única de cada projeto e a necessidade de alta qualidade e produtividade tornam importante a busca por práticas de desenvolvimento. A partir de projetos que conduzimos usando métodos ágeis na academia e na indústria, identificamos e descrevemos 22 práticas para desenvolvimento de software que podem ser adotadas por equipes para aumentar o seu desempenho e/ou a qualidade do software. / The growing demand for systems and the high speed with which their requirements evolve has shown that software development requires flexibility because many decisions need to be taken during the project. Also, the difficulties for the production of software systems go far beyond the technical issues. Strategic, commercial and human factors are responsible for some variables that contribute to make the software development a highly complex activity. Traditional models of software development propose prescritive processes that do not consider all this complexity. On the other hand, Agile Methods of software development suggest an humanistic approach focused on fast and often business valuable software deliveries. But, in order to get it, one needs to choose an appropriated group of development practices accordingly to the project and team features. In this way, the individuality of each project and the need for better quality and productivity motivate the search for software development practices. Based on projects that we conducted by using agile methods in academic and industry environments we identified and described 22 software development practices that can be used by teams to increase their performance and/or the software quality.
23

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.
24

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.
25

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.
26

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.
27

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.

Page generated in 0.4968 seconds