Requisitos de Métodos de Rastreabilidade entre os Requisitos e o Código de Software
|
|
- Jessica Cesário de Barros
- 7 Há anos
- Visualizações:
Transcrição
1 Requisitos de Métodos de Rastreabilidade entre os Requisitos e o Código de Software Pedro L. R. Leal Jr 1 1 Departamento da Ciência da Computação Universidade Federal de Minas Gerais (UFMG) - Av. Antônio Carlos, Pampulha - Belo Horizonte - MG Pedro.leal.junior@gmail.com Abstract.. Resumo.. 1. Introdução A garantia da conformidade do software com os seus requisitos é uma exigência básica da indústria de desenvolvimento de software, mas nem sempre é alcançada. Com o objetivo de resolver esse problema, surgiram as práticas de Rastreabilidade de Requisitos (RR). Mas, ainda assim, apesar da RR já ser utilizada há alguns anos, códigos fonte freqüentemente evoluem sem a atualização da documentação [Ramesh et al. 1997]. Isso ocorre porque manter a consistência e a rastreabilidade entre abstrações de alto-nível, funcionalidades e componentes de software é custoso e consome tempo [Antoniol et al. 2005]. Tentando minimizar esse problema, pesquisadores e a indústria de software desenvolveram diferentes métodos e ferramentas para aperfeiçoar a gerência de requisitos, que, até então, infelizmente falharam em alcançar uma adoção generalizada [Neumüller et al., 2006]. Conseqüentemente, muitas empresas ainda registram as ligações de rastreabilidade (trace links) manualmente, apesar das abordagens automáticas e semi-automáticas já estarem disponíveis. Os maiores inibidores para o uso desses métodos e ferramentas são, segundo Neumüller et al. (2006), a complexidade da rastreabilidade e o manuseio de um grande volume de informação. Torna-se então importante uma escolha adequada de métodos e ferramentas que resolvam à complexidade da RR para que sua adoção finalmente ocorra de forma generalizada. Não é uma questão de fácil solução, pois a rastreabilidade de requisitos não é uniforme. Só o fato de a rastreabilidade ser feita entre artefatos de naturezas distintas - requisitos, modelos de desenho (Design) de software, código fonte, casos de teste já torna improvável o uso de um mesmo método para toda e qualquer rastreabilidade. Uma ligação de rastreabilidade entre um requisito de software e uma variável de classe em um código escrito em Java é diferente na forma e no conteúdo de outra ligação de rastreabilidade entre o mesmo requisito e uma associação em um diagrama UML. Um código Java é de natureza distinta de um modelo UML. Deve-se considerar a natureza de cada artefato para se escolher o melhor método de rastreabilidade entre eles. No caso da rastreabilidade entre requisitos e códigos fonte, também há ligações de naturezas distintas. Uma ligação de rastreabilidade normalmente possui as características: unidades de origens, unidades de destinos e tipo da ligação. Mas no caso
2 da rastreabilidade entre requisitos e código é possível que os destinos não sejam unidades, mas estejam fragmentados e diluídos em todo o código, caracterizando uma forma de ligação diferente da forma da primeira. É o caso da ligação com alguns requisitos não funcionais. O requisito registrar em arquivo qualquer mudança de estado do software é um exemplo. Ele pode não se ligar em uma área bem definida e delimitada do código, mas a implementação que resolve o requisito pode estar fragmentada em todo o código. Outro caso de ligação de natureza distinta é a ligação indireta. Um requisito pode interferir num código através de um modelo de desenho. O projeto de uma solução arquitetural pode ter sua motivação em um determinado requisito, e então determinar a estrutura final do código. Nesse caso, não há ligação direta entre o requisito e o código, mas através do modelo de desenho que representa a solução arquitetural para o requisito e que é refletida no código. A ligação de rastreabilidade entre o requisito e o código, neste caso, possui características de indireção. Assim, os métodos de rastreabilidade devem considerar a existência de diferentes formas de ligações para poderem cobrir todo seu escopo de rastreabilidade. Para uma visão global do problema de rastreabilidade de requisitos, pode-se consultar o Gotel et al. (1994). Nota-se, pelo que foi exposto até agora, que se pode buscar a solução da questão de que a rastreabilidade de requisitos ainda não alcançou uma adoção generalizada na composição de diferentes métodos especializados em categorias distintas de ligações e artefatos. Este artigo pretende colaborar na solução do problema, discutindo requisitos para os métodos de um dos tipos de ligação: rastreabilidade entre requisitos e código de software. Antoniol et al. (2002) mostra a importância dessas ligações, apesar de não abordar a rastreabilidade entre código e requisitos diretamente, mas entre código e qualquer documentação gerada no processo de ciclo de vida do software. Como um número significativo dos documentos ali tratados são requisitos de software, o seu artigo foi usado como base para o levantamento de interessados na rastreabilidade entre requisitos e código de software e a importância desses requisitos para cada um deles. Começando com os programadores, percebe-se que muitas vezes precisam entender códigos que não foram escritos por eles. Existem modelos cognitivos que compartilham a idéia que a compreensão de programas ocorre da forma de baixo para cima (bottom-up), de cima para baixo (top-down), ou alguma combinação das duas formas. Eles também concordam que programadores usam diferentes tipos de conhecimento durante a compreensão do programa, variando do conhecimento específico do domínio até o conhecimento geral de programação. Ligações de rastreabilidade entre áreas específicas do código e sessões relacionadas em documentos de especificação de requisitos ajudam na compreensão tanto do modelo de baixo para cima, como no de cima para baixo. Na compreensão de cima para baixo, uma vez que a hipótese tenha sido formulada, as ligações de rastreabilidade sugerem onde se deve procurar por sinais de sua confirmação ou negação. Na compreensão de baixo para cima, o principal papel da rastreabilidade é ajudar aos programadores na atribuição de conceitos à pedaços de código e no agrupamento desses pedaços em conceitos mais abstratos. Outra utilidade de ligações de rastreabilidade entre requisitos e código para o programador é a ajuda na identificação das áreas de código diretamente afetadas por uma requisição de manutenção como indicada pelo usuário final.
3 Gerentes de requisitos têm como principal instrumento de trabalho os requisitos e suas ligações. A utilidade para o gerente de requisitos das ligações de rastreabilidade do tipo aqui tratado é que ela é a chave para localizar áreas do código que contribuem na implementação de funcionalidades específicas [Pinheiro et al. (1996), Konclin et al., 1988 e Ramesh et al., 1992]. Isso ajuda garantir a completeza de uma implementação com respeito aos requisitos indicados. Gerentes de testes também aproveitam dessas ligações para planejar casos de testes completos e inferir na cobertura dos testes sobre os requisitos. As ligações são também de grande uso durante a inspeção de código, provendo aos inspetores as conexões entre o código e os seus objetivos e na garantia da qualidade, observando a completeza da implementação. Gerentes de projetos precisam usar a rastreabilidade entre requisitos e código na análise de impacto de uma alteração no projeto. O gerente deve identificar os produtos de trabalho afetados pela alteração proposta [Arnold et al. (1993)]. Alterações podem inicialmente afetar qualquer artefato do sistema e propagar-se por outros produtos de trabalho [Fyson, 1998 e Turver, 1994]. Como exemplo, a alteração que adiciona uma nova funcionalidade em um sistema é, em muitos casos, iniciada alterando as especificações de requisitos. As alterações são então propagadas até o código fonte. O inverso também pode ocorrer: uma alteração no algoritmo ou numa estrutura de dados inicia-se no código fonte e é então documentada em seções relevantes do documento de desenho e pode até mesmo afetar alguns requisitos. Arquitetos corporativos têm nas ligações entre requisitos e código uma sensível ajuda para localizar componentes candidatos a reuso. De fato, desde que software frequentemente não são produzidos para o reuso de seus componentes, ligações de rastreabilidade entre código e seus requisitos podem ser de grande ajuda para indexar os ativos de reuso de acordo com o modelo de domínio da aplicação e implementar mecanismos de busca que os trazem para uma potencial base de reuso. Todos esses profissionais têm a necessidade da rastreabilidade entre os requisitos e o código, que, como já dito, ainda não é largamente utilizada, devido à complexidade de sua implantação e o alto custo da manutenção manual. Sendo assim, precisam de uma ferramenta para dar suporte à rastreabilidade. A escolha de uma boa ferramenta, que implemente métodos de rastreabilidade eficazes, nem sempre é fácil (por isso poucos utilizam com sucesso), devido a variedade e diferenças de características entre os métodos. Este artigo tem como objetivo apresentar um catálogo de requisitos de métodos de rastreabilidade entre os requisitos e o código de software, e assim, ajudar a esses profissionais na escolha de uma boa ferramenta. O catálogo aqui apresentado pode alimentar um critério objetivo de escolha de ferramentas, pelo menos no que diz respeito às características da rastreabilidade entre requisitos e código. Além desses profissionais já citados, esse catálogo também é de interesse de pesquisadores da ciência da computação. Estes precisam dominar a questão da rastreabilidade em todos os seus detalhes para buscarem uma solução que englobe os diversos aspectos do problema. O catálogo aqui mostrado sintetiza os requisitos de uma das dimensões da questão da rastreabilidade, sendo útil para a criação de novos métodos mais eficazes do que os já existentes.
4 Novas ferramentas de gerência de requisitos podem ser desenvolvidas acrescentando à sua lista de requisitos os aqui apresentados. A indústria de software carece de uma base sólida para fabricar ferramentas de gerência de requisitos eficientes e de simples utilização. Este catálogo pode ser usado como parte de requisitos de entrada para um projeto de desenvolvimento de uma ferramenta de gerência de requisitos. Os desenvolvedores de ambientes de desenvolvimento de software (IDE) podem também usar este catálogo como fonte de informação, caso queiram disponibilizar uma integração com ferramentas de gerência de requisitos. A catalogação dos requisitos obedeceu a um critério bem definido: primeiramente a compilação dos requisitos extraídos de artigos que tratam da rastreabilidade de requisitos em geral. É o caso do artigo Ramesh et al (1997). Também se extraiu requisitos das normas e padrões relativos ao ciclo de vida do software. ISO/IEC 12207, MIL-STD-498, DOD-STD-2167A. O segundo passo foi a extração de requisitos, que ainda não constava no catálogo, a partir das necessidades dos interessados listados acima, observadas nos processos de desenvolvimento de software baseados no processo unificado [Jacobson, 1999]. Por fim, utilizou-se de artigos que tratam de métodos para rastreabilidade entre código fonte e outros artefatos. Fez-se uma ligação entre as características desses métodos e os requisitos já catalogados para se descobrir a motivação das características. Para aquelas em que a motivação não estava catalogada, fez-se uma avaliação da universalidade da característica para descobrir se era ou não um novo requisito. Apresenta-se aqui os artigos utilizados neste critério organizados por método, que serão descritos na sessão 2 Modelos e características da Rastreabilidade entre os Requisitos e o Código de Software. Para métodos baseado em cenários, utilizou-se Egyed et al. (2002) e Eisenbarth et al. (2003). Murphy (1995) e Antoniol (2000) para métodos baseados em modelos. No caso de métodos baseados em Recuperação de Informação (information retrieval), usou-se Zhao et al. (2004) e Antoniol (2004). Já para os métodos baseados em semântica, uso-se o Collard (2002). Para efeito deste documento, será utilizada a definição de rastreabilidade de requisitos proposta por Gotel et al. (1994) como sendo a habilidade de descrever e seguir a vida de um requisito nos dois sentidos, de avanço e retorno. 2. Modelos e características da Rastreabilidade entre os Requisitos e o Código de Software 3. Requisitos 4. Aspectos práticos e operacionais
5 5. Conclusão Referências Antoniol, G., Caprile, B., Potrich, A., Tonella, P. (2000) "Design-code traceability for object-oriented systems", Annals of Software Engineering 9, p Antoniol, G., Canfora, G., Casazza, G., De Lucia, A. e Merlo, E. (2002) "Recovering Traceability Links between Code and Documentation", IEEE Transactions on Software Engineering, volume 28, número10. Antoniol, G., Merlo, E., Guéhéneuc, Y., Sahraoui, H. (2005) On Feature Traceability in Object Oriented Programs, TEFSE 05 - Traceability in Emerging Forms of Software Engineering. Arnold, R. e Bohner, S. (1993) Impact Analisys Towards a Framework for Comparison, International Conference Software Maintenance, p Collard, M., Maletic e J., Marcus, A. (2002) "Supporting Document and Data Views of Source Code", Proceedings of the 2002 ACM symposium on Document engineering. Egyed, A., Grünbacher, P. (2002) "Automating Requirements Traceability: Beyond Record & Replay Paradigm", Conference on Automated Software Engineering, Proceedings. ASE th IEEE International. Eisenbarth, T., Koschke, R., Simon, D. (2003) "Locating Features in Source Code", IEEE Transactions On Software Engineering, volume. 29, número 3. Fyson,, M. e Boldyreff, C. (1998) Using Application Understanding to Support Impact Analysis, Journal Software Maintenance Research and Practice, volume 10, p Gotel O. e Finkelstein C. (1994) An analysis of the requirements traceability problem, Proceedings of the First International Conference on Requirements Engineering (IEEE). Jacobson, I., Booch, G., Rumbaugh, J. (1999) The Unified Software Development Process, Addison Wesley, 1a edição. Koncli, J. e Bergen, M. (1988) Gibis: A Hypertext Tool for Exploratory Policy Discussion, ACM Trans. Office Information System, volume 6, no. 4, p Marcus, A., Maletic, J. (2003) "Recovering Documentation-to-Source-Code Traceability Links using Latent Semantic Indexing", 25th International Conference on Software Engineering (ICSE'03) p Neumüller, C., Grünbacher, P. (2006) Automating Software Traceability in Very Small Companies: A Case Study and Lessons Learned, 21st IEEE International Conference on Automated Software Engineering (ASE'06). Pinheiro, F., Goguen, J. (1996) An object-oriented Tool for Tracing Requirements, IEEE Software, vol. 13, no. 2, p
6 Ramesh, B., Stubbs, C. e Powers, T. (1997) Requirements traceability: Theory and practice, In: Annals of Software Engineering 3, p J.C. Baltzer AG, Science Publishers. Ramesh, B., Stubbs, C., Powers, T. e Edwards, M. (1995) "Implementing Requirements Traceability: A Case Study", IEEE International Symposium on Requirements Engineering. Ramesh, B. e Dhar, V. (1992) Supportin Systems Development Using Knowledge Captured During Requirements Engineering, IEEE Trans. Software Eng., volume 9, no. 2, p Turver, R. e Munro, M. (1994) Na Early impact Analisys Techique for Software Maintenance, Journal Software Maintenance Research and Practice, volume 6, no. 1, p Zhao, W., Zhang, L., Liu, Y., Sun, J., Yang, F. (2004) "SNIAFL: Towards a Static Non- Interactive Approach to Feature Location", Proceedings of the 26th International Conference on Software Engineering (ICSE'04).
Requisitos de Métodos de Rastreabilidade entre os Requisitos e o Código de Software
Requisitos de Métodos de Rastreabilidade entre os Requisitos e o Código de Software Pedro L. R. Leal Jr 1 1 Departamento da Ciência da Computação Universidade Federal de Minas Gerais (UFMG) - Av. Antônio
Leia maisRastreabilidade Indutiva Aplicada a Artefatos de Software
Rastreabilidade Indutiva Aplicada a Artefatos de Software Trabalho técnico Raquel Nitsche dos Santos, Raul Sidnei Wazlawick Departamento de Informática e Estatística Programa de Pós-Graduação em Ciência
Leia maisIntrodução à UML. Universidade Federal de Mato Grosso do Sul Sistemas de Informação - CPCX. Prof. Fernando Maia da Mota
Universidade Federal de Mato Grosso do Sul Sistemas de Informação - CPCX Introdução à UML Prof. Fernando Maia da Mota Slides gentilmente cedidos por Profa. Dra. Maria Istela Cagnin Machado UFMS/FACOM Introdução
Leia maisIntrodução. Introdução. Introdução. Planejamento da disciplina. Modelagem de Processos de Negócio. Prof.: Clarindo Isaías Pereira da Silva e Pádua
Modelagem de Processos de Negócio Prof.: Clarindo Isaías Pereira da Silva e Pádua Gestus Departamento de Ciência da Computação - UFMG Bibliografia Eriksson, H-E; Penker, M. Business Modeling with UML:
Leia maisPrograma Analítico de Disciplina INF323 Engenharia de Software II
0 Programa Analítico de Disciplina Departamento de Informática - Centro de Ciências Exatas e Tecnológicas Número de créditos: Teóricas Práticas Total Duração em semanas: 15 Carga horária semanal 0 Períodos
Leia maisUML: Introdução. História Visão geral Modelo conceitual da UML. Bibliografia. UML: introdução
UML: introdução Prof.: Clarindo Isaías Pereira da Silva e Pádua Synergia / Gestus Departamento de Ciência da Computação - UFMG UML: introdução 2 Bibliografia Rumbaugh, J.; Jacobson, I.; Booch, G., The
Leia maisANÁLISE DE EVOLUÇÃO DE SOFTWARE PARA RECUPERAÇÃO DA RASTREABILIDADE ENTRE DOCUMENTAÇÃO E CÓDIGO FONTE BASEADA EM MODELOS DE CARACTERÍSTICAS
ANÁLISE DE EVOLUÇÃO DE SOFTWARE PARA RECUPERAÇÃO DA RASTREABILIDADE ENTRE DOCUMENTAÇÃO E CÓDIGO FONTE BASEADA EM MODELOS DE CARACTERÍSTICAS Autor: Allysson Costa e Silva 1, Orientador: Prof. Dr. Marcelo
Leia maisArquitetura de Software: Documentação
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Arquitetura de Software: Documentação SSC-0527 Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa Tiago Volpato Introdução
Leia maisUm Componente para Manutenção da Rastreabilidade Bidirecional entre Casos de Uso e Código Fonte
Um Componente para Manutenção da Rastreabilidade Bidirecional entre Casos de Uso e Código Fonte Relato de Experiência George P. Ferreira¹, Juliana Martins de Oliveira², Fabio Pinheiro Abreu², Adriano Bessa
Leia maisCiência da Computação. Análise e Projeto Orientado a Objetos UML. Anderson Belgamo
Ciência da Computação Análise e Projeto Orientado a Objetos UML Anderson Belgamo 1 Evolução do Software O rápido crescimento da capacidade computacional das máquinas resultou na demanda por sistemas de
Leia mais5 Processo de Reificação e de Desenvolvimento com ACCA
Uma Arquitetura para a Coordenação e a Composição de Artefatos de Software 53 5 Processo de Reificação e de Desenvolvimento com ACCA Resumo Este capítulo visa esclarecer e descrever atividades existentes
Leia maisRevisão Sistemática da Literatura sobre Métodos de Localização de Características
Revisão Sistemática da Literatura sobre Métodos de Localização de Características Cleice Souza 14 de maio de 2014 Roteiro Introdução Característica ou Feature Planejamento da Revisão Sistemática Condução
Leia maisModelo de Recuperação da Rastreabilidade de Artefatos de Software
Modelo de Recuperação da Rastreabilidade de Artefatos de Software Autor: Felipe Cézar de Castro Antunes 1, Marcelo de Almeida Maia, D.Sc. 1 1 Programa de Pós-Graduação em Ciência da Computação Universidade
Leia maisEngenharia de Software I: Introdução. Graduação em Informática 2009 Profa. Itana Gimenes
Engenharia de Software I: Introdução Graduação em Informática 2009 Profa. Itana Gimenes Programa 1. O processo de engenharia de software 2. Engenharia de requisitos 3. Modelagem de sistemas 4. Conceitos
Leia maisRUP Unified Process. Profª Jocelma Rios
RUP Unified Process Profª Jocelma Rios Nov/2012 O que pretendemos: Reforçar os aspectos que caracterizam o processo iterativo e incremental Identificar como atingir os objetivos dos projetos de software
Leia maisAnálise de Sistemas. Aula 5
Análise de Sistemas Aula 5 Prof. Emerson Klisiewicz CONTEXTUALIZAÇÃO Aula 5 Análise Orientada a Objetos Introdução a UML Histórico e Visão Geral Ferramentas CASE O Sucesso... Clientes satisfeitos Eles
Leia maisIndicações de Abordagens para Rastreabilidade de Requisitos no contexto do MR-MPS-SW por meio de uma Revisão Sistemática da Literatura
Indicações de Abordagens para Rastreabilidade de Requisitos no contexto do MR-MPS-SW por meio de uma Revisão Sistemática da Literatura Paulo Robson Campelo Malcher 1, Sandro Ronaldo Bezerra Oliveira 1
Leia mais02/10/2012. Referências. Processo visando a Usabilidade. Introdução. Engenharia de Usabilidade. Prof.: Clarindo Isaías Pereira da Silva e Pádua
Engenharia de Usabilidade Prof.: Clarindo Isaías Pereira da Silva e Pádua Gestus Departamento de Ciência da Computação - UFMG Referências Hix, D.; Hartson, H. R. Developing User Interfaces: ensuring usability
Leia maisINF1013 MODELAGEM DE SOFTWARE
INF1013 MODELAGEM DE SOFTWARE Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 1 O Paradigma Orientado a Objetos A Linguagem UML Descrição da Arquitetura 1 Programa
Leia mais5º Congresso de Pós-Graduação
5º Congresso de Pós-Graduação UMA FERRAMENTA PARA GERAÇÃO AUTOMÁTICA DE DIAGRAMA DE CLASSES A PARTIR DA ESPECIFICAÇÃO DE REQUISITOS EM LINGUAGEM NATURAL Autor(es) Orientador(es) LUIZ EDUARDO GALVÃO MARTINS
Leia mais5º Congresso de Pós-Graduação
5º Congresso de Pós-Graduação UMA FERRAMENTA PARA GERAÇÃO AUTOMÁTICA DE DIAGRAMA DE CLASSES A PARTIR DA ESPECIFICAÇÃO DE REQUISITOS EM LINGUAGEM NATURAL Autor(es) WILSON CARLOS DA SILVA Orientador(es)
Leia maisProcesso. Processo unificado. Principais Características do UP. Principais Características do UP RUP. Unified Process (Processo Unificado)
Processo UP Unified Process (Processo Unificado) Conjunto de passos que tem como objetivo atingir uma meta Processo de software na ES, processo que visa a produzir o software - de modo eficiente e previsível
Leia maisObjetivo do Curso. Modelagem/Arquitetura de Software. Enfoque do Curso. Conteúdo do Curso
Objetivo do Curso Modelagem/Arquitetura de Software Thaís Vasconcelos Batista Apresentar as tendências atuais para desenvolvimento de aplicações baseadas em, oferecendo uma visão conjunta das tecnologias
Leia maisNotas de Aula 03: Introdução a Orientação a Objetos e a UML
Notas de Aula 03: Introdução a Orientação a Objetos e a UML Objetivos da aula: Introduzir os conceitos da Orientação à Objetos (O.O) Introduzir os conceitos da UML Relacionar os processos às ferramentas
Leia maisArquitetura de Software: Documentação
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Arquitetura de Software: Documentação SCE 526 Análise e Projeto Orientados a Objeto Profa. Elisa Yumi Nakagawa 2. Semestre de
Leia maisALM Aplicações em Linguagem de Montagem. Introdução. A produção de Software é uma atividade build and fix. build. fix
Introdução A produção de Software é uma atividade build and fix. 1 Introdução build 2 Introdução fix 3 1 Introdução 4 P s Só pessoas motivadas e comprometidas com o projeto garantem o respectivo sucesso;
Leia maisTipos para uma Linguagem de Transformação
Universidade Federal de Pernambuco Graduação em Ciência da Computação Centro de Informática Proposta de Trabalho de Graduação Tipos para uma Linguagem de Transformação Aluno: Orientador: Alexandra Barreto
Leia maisMETODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS Keila de Carvalho Freitas 1, Demétrio Renó Magalhães 2, Francisco Antonio Fernandes Reinaldo 3 Abstract This article presents a comparison between two software
Leia maisBibIme - Um Software Gerenciador de Bibliotecas Produzido de Forma Cooperativa
BibIme - Um Software Gerenciador de Bibliotecas Produzido de Forma Cooperativa Dairton Bassi, Kelly Braghetto, Eduardo Colli, Fabio Kon, João Eduardo Ferreira Instituto de Matemática e Estatística Universidade
Leia maisDesenvolvimento de Software para Sistemas Multiagentes
Desenvolvimento de Software para Sistemas Multiagentes Hyggo Oliveira de Almeida 1, Evandro Costa 2, Angelo Perkusich 1 1 Departamento de Engenharia Elétrica Universidade Federal de Campina Grande Av.
Leia maisENGENHARIA DE SOFTWARE
EMENTA ENGENHARIA DE SOFTWARE DISCIPLINA: Estrutura e Fluxo de Informação EMENTA: A disciplina Estrutura e Fluxo de Informação se propõe a capacitar o aluno sobre os fundamentos da Gestão da Informação
Leia maisUma Avaliação sobre Rastreabilidade de Software no Contexto do MPS.BR
Uma Avaliação sobre de Software no Contexto do MPS.BR Marcelio D Oliveira Leal Faculdade de Computação Instituto de Ciências Exatas e Naturais (ICEN) Universidade Federal do Pará (UFPA) - Brasil marcelioleal@gmail.com
Leia maisModelagem/Arquitetura de Software
Modelagem/Arquitetura de Software Thaís Vasconcelos Batista Objetivo do Curso Apresentar as tendências atuais para desenvolvimento de aplicações baseadas em componentes, oferecendo uma visão conjunta das
Leia maisEngenharia de Software II
Faculdade de Ciências e Tecnologia Departamento de Matemática e Computação Bacharelado em Ciência da Computação Engenharia de Software II Aula 07 (rogerio@fct.unesp.br) Conceitos Básicos do Rational Unified
Leia maisRequisitos para Ferramentas de Gestão de Projetos de Software
Requisitos para Ferramentas de Gestão de Projetos de Software Thiago S. F. Silva 1, Rodolfo F. Resende 1 1 Departamento de Ciência da Computação Universidade Federal de Minas Gerais (UFMG) Av. Antônio
Leia maisHalison Miguel Edvan Pontes
Halison Miguel Edvan Pontes Apresentação Surgimento; Conceitos; Características; Elementos Básicos; Estrutura; Disciplina. Surgimento O Processo Unificado Aberto, do inglês Open Unified Process (OpenUP)
Leia maisFUNDAÇÃO UNIVERSIDADE ESTADUAL DE MARINGÁ
FUNDAÇÃO UNIVERSIDADE ESTADUAL DE MARINGÁ Centro de Tecnologia - CTC Departamento de Informática - DIN Programa de Pós-Graduação em Ciência da Computação PCC ESTÁGIO DE DOCÊNCIA II Disciplina: Engenharia
Leia maisENGENHARIA DE REQUISITOS
ENGENHARIA DE REQUISITOS Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Contextualização Estudo realizado pelo Standish Group em 1995, envolvendo 350 companhias e 8.000 projetos
Leia maisUNIVERSIDADE FEDERAL DO PARANÁ UFPR BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO
CI 221 DISCIPLINA: Engenharia de Software AULA NÚMERO: 2 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO Nesta aula serão apresentados e discutidos os conceitos de Processo de desenvolvimento de software e ciclo
Leia maisProf. Fábio Lúcio Meira
Prof. Fábio Lúcio Meira Objetivo Transformar os requisitos no design do futuro sistema Evoluir uma arquitetura robusta do sistema Adaptar o design para adequá-lo ao ambiente de implementação O principal
Leia maisCadeira: Engenharia de Software
Cadeira: Engenharia de Software Aulas 9, 10 15/08/15 Docente: Cláudia Ivete F. Jovo cifjovo@gmail.com or cjovo@up.ac.mz M.Sc. Cláudia Jovo 2017/DI 0 Definição de Eng. Software; Eng. Software Tecnologia
Leia maisEngenharia de Software. Projeto de Arquitetura
Engenharia de Software Projeto de Arquitetura O que já vimos? Introdução a Engenharia de Software Processos de Software Desenvolvimento Ágil de Software Engenharia de Requisitos Modelagem de sistemas (outra
Leia maisMetodologia da Pesquisa em Sistemas de Informação. Aula 3. Projeto de Pesquisa. Revisão Sistemática. Profa. Fátima L. S. Nunes
Metodologia da Pesquisa em Sistemas de Informação Aula 3 Projeto de Pesquisa Revisão Sistemática Profa. Fátima L. S. Nunes Metodologia Pesquisa SI- 1 Como elaborar um projeto? Roteiro 1) Escolha do tema
Leia maisCiclo de vida: fases x atividades
Ciclo de vida Fase de definição Análise e Especificação Estudo de Viabilidade Estimativas Planejamento Fase de desenvolvimento Design Implementação e integração Verificação e Validação Fase de operação
Leia maisEngenharia de Software
Tema da Aula Origens da Modelagem de Retrospectiva Histórica Prof. Cristiano R R Portella portella@widesoft.com.br Origens da Modelagem de A pré-história Antes de 1960: Nenhuma metodologia. Programar computador
Leia maisProcessos de. Desenvolvimento de Software
Processos de Desenvolvimento de Software O processo de software Um conjunto estruturado de atividades, procedimentos, artefatos e ferramentas necessários para o desenvolvimento de um sistema de software
Leia maisProcessos Ágeis de Desenvolvimento de Software
Processos Ágeis de Desenvolvimento de Software -Focono XP - Rodrigo Rebouças de Almeida rodrigor@rodrigor.com Processo Conjunto de atividades ordenadas, restrições e recursos que produzem um resultado
Leia maisINF1404 MODELAGEM DE SISTEMAS
INF1404 MODELAGEM DE SISTEMAS Bacharelado em Sistemas de Informação Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 1 Princípios de Modelagem O Paradigma Funcional O Paradigma Orientado a Objetos
Leia maisUma Ferramenta para Visualização de Relacionamentos de Rastreamentos
Uma Ferramenta para Visualização de Relacionamentos de Rastreamentos Iago Luiz Teixeira de Moraes Orientador: Gilberto A. de A. Cysneiros Filho Plano de Trabalho Individual do Bolsista submetido para o
Leia maisConteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos
Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 09289 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 3. Especificação e Análise de Requisitos
Leia maisRequisitos de Sistemas
Requisitos de Sistemas Unidade II - Processos de Negócio Identificação Conceitos Modelagem - BPM - UML Processos x Requisitos 1 Processo de negócio CONCEITO Um processo de negócio, processo organizacional
Leia maisRequisitos para Integração de Ferramentas de Engenharia de Software
Requisitos para Integração de Ferramentas de Engenharia de Software Rodrigo Eduardo Silva 1 1 Departamento de Ciência da Computação Universidade Federal de Minas Gerais (UFMG) Belo Horizonte, MG Brasil
Leia maisESUCRI. Análise e Projeto de Sistemas
ESUCRI Análise e Projeto de Sistemas Prof. Edson Thizon (2005) Apresentação (mini-currículo) Formação Acadêmica Bacharelado em Ciência da Computação (UNISUL/00) Mestrando em Ciência da Computação (UFSC/03)
Leia maisUML. Trabalho Análise e Projeto de Sistemas. Aluna: Luana Alves Businaro
Curso Técnico Integrado de Informática 2 Ano Projeto Integrador Formação Profissional Trabalho Análise e Projeto de Sistemas UML Aluna: Luana Alves Businaro-1614193 Maio de 2017 Sumário 1 Introdução...
Leia mais4 Caso de Uso no Ambiente Oracle
4 Caso de Uso no Ambiente Oracle No capítulo anterior foi definido o processo para definição de uma estratégia de rastreabilidade. Neste capítulo será realizada uma instanciação do processo em um ambiente
Leia mais26 a 29 de novembro de 2013 Campus de Palmas
Um Sistema para o Gerenciamento de Documentos e Processos das Coordenações de Curso Nome dos autores: Francisco Glaubos Nunes Clímaco 1 ; Marcelo Leineker Costaor 2 1 Aluno do Curso de Ciência da Computação;
Leia mais132 6 Conclusão 6.1. Contribuições da Tese
132 6 Conclusão Esta tese teve como objetivo principal o estudo da aplicação de transformações para manter a rastreabilidade de um sistema de software. Esta abordagem permite a captura automática das informações
Leia maisVisões Arquiteturais. Visões Arquiteturais
Visões Arquiteturais Separar diferentes aspectos em visões separadas com o objetivo de gerenciar complexidade. Cada visão descreve diferentes conceitos da Engenharia. Visões permitem reduzir a quantidade
Leia maisRUP/PSDS. Introdução e Comparação
RUP/PSDS Introdução e Comparação Agenda RUP Introdução Mlehores Práticas Estrutura Tempo Conteúdo Contraponto PSDS Introdução Objetivos Promover planejamento, medição e controle dos projetos Reduzir riscos
Leia maisRoni Fabio Banaszewski UTFPR Universidade Tecnológica Federal do Paraná
Roni Fabio Banaszewski UTFPR Universidade Tecnológica Federal do Paraná Reuso Motivações para reutilização de software Aspecto econômico Produtividade Time to market Qualidade Utilização de artefatos (código,
Leia maisMinistério da Educação UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ. Campus Curitiba PLANO DE ENSINO
Ministério da Educação UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Campus Curitiba PLANO DE ENSINO CURSO Bacharelado em Sistemas de Informação Engenharia de Computação? MATRIZ Vigente FUNDAMENTAÇÃO LEGAL
Leia maisReduzindo mudanças de requisitos no desenvolvimento de software usando Modelagem Independente de Computação e UX Design
Reduzindo mudanças de requisitos no desenvolvimento de software usando Modelagem Independente de Computação e UX Design Rodrigo Kuerten 1, Jandira Guenka Palma 1 1 Departamento de Computação Universidade
Leia maisDEFINING METRIC THRESHOLDS FOR SOFTWARE PRODUCT LINES: A COMPARATIVE STUDY
DEFINING METRIC THRESHOLDS FOR SOFTWARE PRODUCT LINES: A COMPARATIVE STUDY APRESENTADO POR: BRUNO LUAN DE SOUSA QUA L I DA DE E MEDIÇÃO DE SOFTWA R E U N I V E R S I DA D E F E D E R A L D E MINAS G E
Leia maisApresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP:
Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP: 8429016 Definição de MDA OMG (Object Management Group) propôs uma aplicação abrangente das práticas
Leia maisEngenharia de Domínio e Desenvolvimento Baseado em Componentes. Processo DBC-Arch-DE Apoio do Ambiente Odyssey no Processo Considerações Finais
Um Processo de Engenharia de Domínio com foco no Projeto Arquitetural Baseado em Componentes Ana Paula Blois Cláudia Werner Karin Becker Agenda Motivação Engenharia de Domínio e Desenvolvimento Baseado
Leia maisProcesso Unificado Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Introdução
Processo Unificado Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Introdução 1 Processo Unificado (PU) 1.1 Bibliografia Autoria:Aristófanes
Leia maisSuporte automatizado à rastreabilidade em um processo de teste de software baseado em documentação
Suporte automatizado à rastreabilidade em um processo de teste de software baseado em documentação Jorge Luiz da Cruz 1,3, Mario Jino 2, Adalberto Nobiato Crespo 1,4, Miguel Argollo 1,3 1 Centro de Pesquisas
Leia maisOrientação a Objetos. Programação em C++
OO Engenharia Eletrônica Orientação a Objetos - Programação em C++ Slides 9: Programação ou Implementação: uma fase da engenharia de software. Projeto (UML) e Programação (C++,...) Prof. Dr. Jean Marcelo
Leia maisAula 2: Planejamento da RS
Universidade de São Paulo Instituto de Ciências Matemática e de Computação SSC 5905 - Revisão Sistemática Aula 2: da RS Profa. Dra. Elisa Yumi Nakagawa 1. Semestre de 2013 Processo de Revisão Sistemática
Leia maisUNIVERSIDADE FEDERAL DA BAHIA
UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA E ESTATÍSTICA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO RECUPERAÇÃO DE ARQUITETURA DE SOFTWARE UTILIZANDO ALGORITMOS DE AGRUPAMENTO ALUNO: DENNIS LESSA
Leia maisMódulo I Princípios e Padrões de Projeto de SW em Java
Módulo I Princípios e Padrões de Projeto de SW em Java Professores Eduardo Bezerra edubezerra@gmail.com Ismael H F Santos ismael@tecgraf.puc-rio.br April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br
Leia maisAgenda da Aula. Reuso de Software. Tipos de Reuso. Potenciais Problemas. Vantagens de Reuso. Introdução a Reuso de Software
Reuso de Software Aula 02 Agenda da Aula Introdução a Reuso de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com Introdução a Reuso de Software Abordagens de Reuso
Leia maisUML (Unified Modelling Language)
UML (Unified Modelling Language) Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Booch, G. et al. The Unified Modeling Language User Guide
Leia maisespecificação por meio de exemplos não é garantia de corretude, mas a experiência mostra que tende a ser melhor do que o estado da prática hoje
1 Introdução Testar é o conjunto de tarefas ou passos executados para verificar se um produto ou serviço atende à sua proposta. Dessa forma, a execução de testes em um programa contribui para a melhoria
Leia maisSIGERAR: Uma Ferramenta para Gerenciamento de Requisitos
SIGERAR: Uma Ferramenta para Gerenciamento de Requisitos José Inácio De Grande, Luiz Eduardo G. Martins Programa de Mestrado em Ciência da Computação Faculdade de Ciências Exatas e da Natureza UNIMEP -
Leia mais! Introdução. " Motivação para Processos de Software. ! Processo Unificado (USDP) " Definições " RUP x USDP " Características do Processo Unificado
Agenda Rodrigo Reis Cleidson de Souza! Introdução " Motivação para Processos de Software! (USDP) " Definições " RUP x USDP " Características do! Descrição detalhada do! Processos Derivados! Templates simplificados!
Leia maisUma meta-ferramenta de geração de diagramas utilizada na engenharia reversa de sistemas legados.
Rodnei Silva Couto Uma meta-ferramenta de geração de diagramas utilizada na engenharia reversa de sistemas legados. Dissertação de Mestrado Dissertação apresentada como requisito parcial para obtenção
Leia maisIntrodução à Análise e Projeto de Sistemas
Introdução à I. O Que vamos fazer na Disciplina? Saber uma linguagem de programação orientada a objeto (OO) não é suficiente para criar sistemas OO Tem que saber Análise e Projeto OO (APOO) Isto é, Análise
Leia mais- Engenharia Reversa - Evolução de Sofware. Desenvolvimento como. Requisitos o que. Sistema porque. Profa. Dra. Sandra Fabbri. operacional.
Unidade V Evolução de Sofware - Engenharia Reversa - Profa. Dra. Sandra Fabbri Fases Genéricas do Ciclo de Vida Engenharia Sistemas Análise Projeto Codificação Manutenção Teste Sistema Requisitos Desenvolvimento
Leia maisDESENHO DE CARGOS E TAREFAS
Faculdade de Tecnologia SENAC GO Gestão de Pessoas Professor: Itair Pereira da Silva Grupo: Luís Miguel Nogueira de Resende, Valdivino de Carvalho, Rodrigo Neres Magalhães e Venicyus Venceslencio da Paz.
Leia maisLições Aprendidas no Processo de Manutenção do Ambiente WebAPSEE 1
Lições Aprendidas no Processo de Manutenção do Ambiente WebAPSEE 1 Adailton Magalhães Lima, Breno Bernard N. de França, Anderson Costa, Ernani de Oliveira Sales, Carla A. Lima Reis, Rodrigo Quites Reis
Leia maisIntrodução. Diagramas de Interação. Introdução. Introdução. Introdução. Introdução. Os modelos de análise não respondem a algumas perguntas:
Diagramas de Interação Os modelos de análise não respondem a algumas perguntas: Como as operações do sistema são executadas internamente? A que classes estas operações internas pertencem? Quais objetos
Leia maisMANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO
MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO Sumário PREFÁCIO...3 MODELO DA DOCUMENTAÇÃO...3 1. INTRODUÇÃO AO DOCUMENTO...3 1.1. Tema...3 2. DESCRIÇÃO
Leia maisAula 1 - Introdução à disciplina e Processos de desenvolvimento de software e suas atividades básicas
Aula 1 - Introdução à disciplina e Processos de desenvolvimento de software e suas atividades básicas Análise de Sistemas Prof. Filipe Arantes Fernandes filipe.arantes@ifsudestemg.edu.br Nome da disciplina:
Leia maisEngenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS. Nome:
Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS Nome: 1. A figura abaixo representa, simplificadamente, as fases do Modelo de Ciclo de Vida Cascata.
Leia mais4/14/11. Processos de Engenharia de Requisitos. Engenharia de requisitos. Elicitação e análise. A espiral de requisitos
Processos de engenharia de requisitos Processos de Engenharia de Requisitos Os requisitos e as formas de obtê-los e documentálos variam drasticamente de um projeto para o outro Contudo, existe uma série
Leia maisModelando sistemas Multiagentes Analisando Metodologias
Modelando sistemas Multiagentes Analisando Metodologias Ricardo Almeida Venieris Ricardo.almeida@les.inf.puc-rio.br Modelagem e Implementação OO de Sistemas Multi-Agentes Dissertação apresentada ao Departamento
Leia maisVisão Geral da Norma ISO/IEC 12207
UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Visão Geral da Norma ISO/IEC 12207 Engenharia de Software 2o. Semestre
Leia maisFUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS. Projeto de Programas PPR0001
FUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS Projeto de Programas PPR0001 2 Introdução Antes de desenvolver ou construir qualquer produto ou sistema em engenharia é necessário um... o PROJETO O que é um
Leia maisEngenharia de Software Processo de Desenvolvimento de Software
Engenharia de Software Processo de Desenvolvimento de Software Prof. Elias Ferreira Elaborador por: Prof. Edison A. M. Morais Objetivo (1/1) Conceituar PROCESSO E CICLO DE VIDA, identificar e conceituar
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Universidade Federal de Uberlândia Prof. Fabiano Dorça - O que é um paradigma? É uma forma de abordar um problema, segundo um conjunto de procedimentos, valores ou conceitos
Leia maisUML Visão Geral UML Visão geral v.1.1, Novembro de 2001
UML Visão Geral 1 Índice Introdução Diagramas O que é a UML? Diagrama de casos de utilização Valor da UML Diagrama de classes Origens da UML Diagrama de objectos Parceiros da UML Diagrama de componentes
Leia maisEngenharia de Software. Herbert Rausch Fernandes
Engenharia de Software Herbert Rausch Fernandes O Processo Unificado É uma tentativa de unir os melhores recursos e características dos modelos convencionais; Reconhece a importância da comunicação com
Leia maisUNIVERSIDADE REGIONAL DE BLUMENAU FERRAMENTA DE GERÊNCIA DE REQUISITOS DE SOFTWARE INTEGRADA COM ENTERPRISE ARCHITECT
UNIVERSIDADE REGIONAL DE BLUMENAU FERRAMENTA DE GERÊNCIA DE REQUISITOS DE SOFTWARE INTEGRADA COM ENTERPRISE ARCHITECT Raphael Marcos Batista Profa. Fabiane Barreto Vavassori Benitti, Drª Eng. Roteiro da
Leia maisEngenharia de Software II
Engenharia de Software II Aula 4 http://www.ic.uff.br/~bianca/engsoft2/ Aula 4-03/05/2006 1 Modelos Prescritivos de Processo Modelo em cascata Modelos incrementais Modelo incremental Modelo RAD Modelos
Leia maisUma Ferramenta de Apoio à Gerência de Requisitos Integrada a um Ambiente de Desenvolvimento de Software Centrado em Processos
Uma Ferramenta de Apoio à Gerência de Requisitos Integrada a um Ambiente de Desenvolvimento de Software Centrado em Processos Murilo F. Sales, Ernani de O. Sales, Carla A. Lima Reis, Rodrigo Q. Reis Laboratório
Leia maisDesenvolvimento Orientado a Modelos
Desenvolvimento Orientado a Modelos João Paulo A. Almeida (jpalmeida@ieee.org) http://nemo.inf.ufes.br Departamento de Informática / Programa de Pós-Graduação em Informática Universidade Federal do Espírito
Leia maisVisão Geral do RUP.
Visão Geral do RUP hermano@cin.ufpe.br Objetivos Apresentar as características RUP Discutir os conceitos da metodologia: fases, fluxos de atividades (workflows), iterações, responsáveis, atividades e artefatos
Leia mais