Análise de Casos de Teste Estatisticamente Relevantes Através da Descrição Formal de Programas

Tamanho: px
Começar a partir da página:

Download "Análise de Casos de Teste Estatisticamente Relevantes Através da Descrição Formal de Programas"

Transcrição

1 Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Pós-Graduação em Ciência da Computação Análise de Casos de Teste Estatisticamente Relevantes Através da Descrição Formal de Programas Cristiano Bertolini Dissertação apresentada como requisito parcial à obtenção do grau de mestre em Ciência da Computação Orientador: Prof. Dr. Paulo Henrique Lemelle Fernandes Porto Alegre, janeiro de 2006

2 "Not Everything that counts can be counted, and not everything that can be counted counts." Albert Einstein

3 iii Resumo Este trabalho aborda a qualidade da geração estatística de casos de teste no teste estatístico através da descrição formal de programas. A principal contribuição consiste na proposta de uma métrica para o cálculo de índice de cobertura baseado em trajetórias; ou seja, é formalizada uma métrica que verifica a relevância de conjuntos de casos de teste. São utilizadas Cadeias de Markov (MC) e Redes de Autômatos Estocásticos (SAN) como métodos formais de descrição de modelos de uso, no sentido de verificar vantagens e desvantagens no processo de teste estatístico utilizado. No decorrer do trabalho, discute-se uma análise quantitativa da geração de casos de teste, bem como sua eficiência para os formalismos MC e SAN. Como resultado, são apresentadas uma análise quantitativa da geração de casos de teste e a evolução de resultados numéricos para a métrica proposta. Verificou-se com a análise quantitativa que a implementação em SAN apresentou uma pequena vantagem na geração de casos de teste. Com a métrica proposta pode-se avaliar tanto para SAN quanto para MC o índice de cobertura de uma determinada amostra de casos de teste.

4 iv Abstract This work focus on the quality of test case generation through the formal program description. The main contribution of this dissertation is a new metric to compute coverage test case index based on model trajectories. The proposed metric verifies the statistical relevance of a given set of test cases. Markov Chains (MC) and Stochastic Automata Network (SAN) are used as formal methods to describe usage models in order to investigate the benefits in the applied statistical testing process. It is discussed a quantitative analysis of the test cases generation and its efficiency to MC and SAN formalisms. As results of this work, it is presented a quantitative analysis of test case generation and a numerical evaluation to the metric coverage test case index.

5 Sumário RESUMO ABSTRACT LISTA DE TABELAS LISTA DE FIGURAS LISTA DE SÍMBOLOS E ABREVIATURAS iii iv viii ix x Capítulo 1: Introdução 1 Capítulo 2: Teste Estatístico Teste de Software Técnicas e Processos de Testes Modelos de Uso Benefícios e Limitações dos Modelos de Uso no Teste Estatístico de Software Especificação Baseada em Modelos Formais Cadeias de Markov - MC Definição Formal Definição Informal Redes de Autômatos Estocásticos - SAN Definição Formal Definição Informal Capítulo 3: Estudos de Caso Exemplo: Sistema de Login Estudo de Caso 1: Simple Counter Navigation v

6 SUMÁRIO vi Descrição da Aplicação Modelo de Cadeia de Markov Modelo SAN Estudo de Caso 2: Calendar Manager Descrição da Aplicação Modelo de Cadeia de Markov Modelo SAN Estudo de Caso 3: Docs Editor Capítulo 4: Geração Estatística de Casos de Teste Ferramentas de Geração Estatística STAGE-Model STAGE-Test Capítulo 5: Análise Quantitativa Diversidade de Geração Tempo de Geração Capítulo 6: Métricas de Qualidade Qualidade de Test Suites Comparação Baseada em Transições Comparação Baseada em Eventos Índice de Cobertura Baseado em Trajetórias Probabilidade dos Casos de Teste Exemplo: Sistema de Login Resultados Capítulo 7: Conclusões Construção dos Modelos de Uso Geração dos Casos de Teste Métricas de Qualidade Trabalhos Futuros REFERÊNCIAS BIBLIOGRÁFICAS 62 Apêndice A: Probabilidades 67 A.1 Probabilidades Condicionais

7 SUMÁRIO vii Apêndice B: Sistema de Login 69 B.1 Modelo PEPS Apêndice C: Simple Counter Navigation 70 C.1 Modelo PEPS Apêndice D: Calendar Manager 72 D.1 Modelo PEPS Apêndice E: Docs Editor 75 E.1 Modelo PEPS ÍNDICE REMISSIVO 78

8 Lista de Tabelas 3.1 Correspondência dos estados da MC: Sistema de Login Correspondência dos estados da MC: Simple Counter Navigation Correspondência dos estados da MC: Calendar Manager Probabilidade dos estados atingíveis: Sistema de Login Probabilidade dos casos de teste: Sistema de Login Valores - Simple Counter Navigation Valores - Calendar Manager Valores - Docs Editor viii

9 Lista de Figuras 2.1 Exemplo de MC Exemplo SAN com dois autômatos independentes Exemplo SAN de um evento sincronizante Exemplo SAN utilizando taxa funcional Sistema de Login Modelo MC: Sistema de Login Modelo SAN: Sistema de Login Modelo MC: Simple Counter Navigation Modelo SAN: Simple Counter Navigation Modelo MC: Calendar Manager Modelo SAN: Calendar Manager Modelo SAN: Docs Editor STAGE Framework STAGE-Model STAGE-Test Análise de diversidade: Calendar Manager Análise de diversidade: Docs Editor Análise de eficiência: Simple Counter Navigation Análise de eficiência: Calendar Manager Análise de eficiência: Docs Editor Índice de cobertura: Sistema de Login Índice de cobertura: Simple Counter Navigation Índice de cobertura: Calendar Manager Índice de cobertura: Docs Editor ix

10 Lista de Símbolos e Abreviaturas MC Markov Chains 2 SAN Stochastic Automata Networks 2 UML Unified Modeling language. 9 FSM Finite State Machine 9 CTMC Continuous Time Markov Chain 10 HTML HyperText Markup Language. 20 JSP Java Server Pages 24 CPTS Centro de Pesquisa em Teste de Software. 32 STAGE State Based Test Generator 33 XML Extensible Markup Language 33 EMC Embedded Markov Chains 60 DTMC Discrete Time Markov Chains 60 x

11 Capítulo 1 Introdução Com a crescente demanda por sistemas de computação mais robustos, estes tornamse cada vez mais complexos e requerem um maior grau de precisão, por exemplo, sistemas web onde performance e confiabilidade são requisitos necessários para o sucesso desses sistemas e satisfação dos usuários [29]. Há uma crescente necessidade de software com alta confiabilidade e qualidade, como aplicações críticas, Web, médicas e outros sistemas de controle. Neste sentido, muitas formas de melhoria dos processos de desenvolvimento de software são utilizadas e diversos artefatos e ferramentas buscam melhorar o desenvolvimento, como a utilização de métodos formais para descrever requerimentos, especificações, designs e testes [1]. As inovações e melhorias dos processos de desenvolvimento de software ajudam a ter software com alta qualidade e de alta confiabilidade, mas continua a necessidade deles serem testados, o que significa que os métodos utilizados para testes devem ser eficientes para que problemas possam ser detectados e corrigidos antes de chegaram ao usuário final. Assim, métodos formais tornam-se uma boa abordagem a ser utilizada, podendo ser utilizados desde a fase de requisitos até a fase de teste [1,11]. Muitos sistemas atuais são expostos a uma quantidade exaustiva de testes na tentativa de minimizar possíveis falhas e, mesmo assim, a confiabilidade não é garantida na maioria dos casos. No entanto, nem sempre é possível realizar testes de forma exaustiva devido ao alto custo e tempo gasto; assim, necessitamos de técnicas que tornem a prática de testar viável e com bons resultados [48]. Muitas técnicas, conceitos e estilos de teste são descritos na literatura devido à popularização da orientação a objetos e modelos em engenharia de software. Assim, tem sido grande a utilização de teste de software baseado em modelos (model-based testing) [13], que possui como base um modelo formal da aplicação onde torna-se possível a geração de casos de teste. Considerando sistemas complexos, sistemas que necessitam de confiabilidade, ou sistemas que necessitam de uma quantidade de testes mais apurados, então 1

12 CAPÍTULO 1. INTRODUÇÃO 2 existe a necessidade de uma geração de casos de teste automática. Entre os benefícios da geração automática de testes pode-se citar a economia de tempo e recursos (pessoas). Adicionalmente, através da geração estatística de casos de teste, pode-se estimar a confiabilidade de um determinado sistema. Apoiado em técnicas tradicionais de teste de software, como o teste funcional e o teste estrutural, o teste estatístico compreende a aplicação da ciência estatística para a solução de problemas de teste de software [42]. A utilização de teste estatístico usualmente requer a utilização de procedimentos randômicos como procedimentos de amostragem, algoritmos randômicos ou construções randômicas [10]. Neste contexto, a utilização do teste estatístico deve-se apoiar em ferramentas que suportem todo este processo de teste. Outro fator importante na automatização do processo de teste estatístico é a forma como a aplicação é representada. Desta forma, são construídos modelos que buscam expressar a realidade de um sistema. Estes modelos além de representarem características do sistema podem ser utilizados na geração de casos de teste. Os formalismos para a construção de modelos adotados neste trabalho são as Cadeias de Markov (MC) [43], pela grande utilização na construção de modelos de uso, e as Redes de Autômatos Estocásticos (SAN) [36] que representam um formalismo mais sofisticado, onde os modelos são representados de forma modular e com isso torna-se mais fácil e viável a construção de modelos maiores. Tais formalismos utilizam a noção de "estado do sistema"e as transições levam a um novo estado do sistema. Em [14] é apresentada a primeira utilização das SAN no teste estatístico, assim, essa dissertação busca dar continuação a este trabalho focando em questões como métricas de qualidade no teste estatístico, visto que o trabalho, anteriormente realizado, apenas introduzia a utilização de SAN no contexto de teste estatístico. Para a consolidação do referencial teórico sobre os modelos de uso utilizando métodos formais (MC e SAN), três estudos de caso foram realizados. Nos estudos de caso buscou-se explorar a sua equivalência com as Cadeias de Markov através da construção da Cadeia de Markov correspondente a SAN, e a sua verificação através da ferramenta PEPS [6]. O intuito foi avaliar quantitativamente os casos de teste e verificar através de experimentos a eficiência da geração automática. A avaliação mostrou a eficiência na geração através da análise de tempo dos algoritmos de geração e a qualidade na geração através da diversidade de casos de teste gerados, ou seja, a cada novo conjunto de casos de teste gerados, casos de teste únicos eram gerados. Um dos pontos de investigação deste trabalho compreende a análise de métricas para o teste estatístico. Algumas métricas são propostas na literatura como técnicas de comparação de vetores para MC. No entanto, como essas técnicas correspondem a comparação das freqüências das transições dos modelos em MC, para SAN elas não se aplicam da mesma forma devido à semântica dada às transições

13 CAPÍTULO 1. INTRODUÇÃO 3 através dos eventos. Desta forma, também é proposta uma métrica de cálculo do índice de cobertura baseado em trajetórias, que é aplicada tanto para MC quanto para SAN. Os objetivos gerais desse trabalho são de consolidar a utilização de SAN para a construção de modelos de uso e propor uma métrica de análise de cobertura da geração de casos de teste baseada nas probabilidades dos estados do modelo. Os objetivos específicos correspondem a análise dos casos de teste gerados, traçando um comparativo entre MC e SAN; descrição do processo de teste utilizado na geração de casos de teste; e cálculo do índice de cobertura de cada caso de teste. Cabe ressaltar que o comparativo realizado teve como base uma ferramenta de geração estatística chamada STAGE que será apresentada no decorrer do trabalho. Este trabalho está estruturado da seguinte forma. O Capítulo 2 apresenta o referencial teórico sobre teste estatístico de software utilizando modelos de uso, bem como alguns formalismos existentes e utilizados no decorrer do trabalho. O Capítulo 3 apresenta os estudos de caso realizados. No Capítulo 4 é apresentado o processo de teste estatístico utilizado e as ferramentas de automação. No Capítulo 5 são apresentados os resultados numéricos para a análise quantitativa da geração de casos de teste. O Capítulo 6 apresenta a métrica de cálculo do índice de cobertura dos casos de teste. Por fim, são apresentados as conclusões e o referencial bibliográfico utilizado.

14 Capítulo 2 Teste Estatístico Este capítulo apresenta um embasamento teórico e um panorama histórico do uso de teste de software, enfocando no teste estatístico de software com a utilização de modelos de uso. Para tanto, divide-se em uma abordagem sobre teste de software em geral partindo para a definição de teste estatístico apoiado em modelos de uso. Logo após, são descritos alguns formalismos utilizados no teste estatístico de software para a geração de casos de teste. 2.1 Teste de Software Em um processo de desenvolvimento de sistemas, o ciclo de testes é responsável por garantir que o produto tenha sido construído com qualidade e para que sejam corrigidos erros de execução e especificação. A alta qualidade gerada é uma das principais motivações para se ter processos de teste de software bem definidos e eficientes. Alguns importantes conceitos que estão presentes nesta seção são confiabilidade e falhas. Confiabilidade em software pode ser definida como a probabilidade que o software não irá falhar durante o uso operacional [48]. Em [24] são apresentados definições diferentes para erro, falha e defeito: Falha (Fault): Corresponde a uma condição anômala, causada por erros de projeto, problemas de fabricação ou distúrbios externos. Uma falha em um sistema ocorre quando o comportamento deste sistema foge de sua normalidade, a qual é especificada na fase de projeto. Erro (Error): Corresponde à manifestação de uma falha no sistema, causando disparidade nas respostas apresentadas, que diferem do valor previsto. Defeito (Defect): Corresponde à incapacidade de algum componente em realizar a função para o qual foi projetado. 4

15 CAPÍTULO 2. TESTE ESTATÍSTICO 5 No entanto para fins de entendimento deste trabalho e por conveniência, assumese que erro, falha e defeito são sinônimos e ocorrem quando o software não é executado de acordo com sua especificação. Assim, segundo Myers [33] teste é o processo de executar um programa com a intenção de encontrar erros, isto é, aplicar processos de validação e verificação através da análise do software, buscando encontrar falhas de execução e funcionalidade. As atividades de testes podem compreender um esforço grande no desenvolvimento de um software, e muitas vezes não contemplam todas as funcionalidades e rotinas de execução. Várias estratégias podem ser empregadas para assegurar a correta execução do software. Em [40] são apresentadas três fases de teste: Teste de unidade (Unit testing): Nesta fase cada unidade que compõe o sistema é testada separadamente, desde que as unidades sejam pequenas (e possam ser testadas separadamente), buscando encontrar erros de especificação e implementação em cada unidade [25]. Teste de integração (Integration testing): Nesta fase as unidades são agrupadas formando subsistemas, por exemplo, interfaces. Os módulos são testados adicionando as unidades de forma incremental ao subsistema. Assim a unidade responsável por uma falha é mais facilmente identificada [25]. Teste de sistema (System testing): Nesta fase o objetivo é identificar erros de funções e características de desempenho que não estejam de acordo com a especificação [38]. Além dessas fases, em [30] duas outras fases são apresentadas, o teste de aceitação e o teste de regressão. O teste de aceitação tem por objetivo avaliar a confiabilidade e performance do sistema em um comportamento operacional, requer então uma coleção de informações sobre como o usuário gostaria de usar o sistema, o que é chamado de alfa teste, e muitas vezes seguido pelo beta teste que envolve a utilização do software pelos usuários. O teste de regressão é feito em uma nova versão para assegurar que não houve perda de confiabilidade, quando importantes adições ou modificações são feitas para uma versão existente. 2.2 Técnicas e Processos de Testes As técnicas de teste são classificadas de acordo com a origem da informação que é utilizada para estabelecer os requisitos de testes [40], e têm por objetivo encontrar falhas no software. As principais técnicas de teste são o teste funcional, o teste estrutural e o teste estatístico.

16 CAPÍTULO 2. TESTE ESTATÍSTICO 6 O teste funcional, conhecido também como caixa-preta (black-box), enxerga o sistema como uma caixa fechada onde não se tem conhecimento sobre sua implementação ou seu comportamento interno. No teste funcional os testes são gerados somente considerando os valores de entrada e saída do sistema utilizando como base a sua especificação [30]. O teste estrutural, também conhecido como caixa branca (white-box), estabelece os requisitos do software baseados na sua implementação. Sendo assim, a geração dos testes leva em conta as estruturas lógicas e funcionais implementadas, verificando se as funcionalidades e resultados gerados estão de acordo com a especificação [33]. Estas duas primeiras técnicas de teste são usualmente as mais utilizadas. Os testes funcionais são aplicados geralmente em testes de unidades, enquanto os testes estruturais são aplicados geralmente em testes de integração e testes de sistema [2]. O teste estatístico é visto como um excelente complemento para as técnicas de teste existentes podendo ser utilizado não como uma diferente técnica de testes, mas como uma técnica que visa somar confiabilidade às demais técnicas [20]. Portanto, o teste estatístico pode ser definido como a aplicação da ciência estatística para a solução de problemas de teste de software [42] e é desenvolvido para caracterizar a população que utiliza o software. 2.3 Modelos de Uso Os modelos de uso caracterizam-se pelo uso operacional do software e são baseados em especificações funcionais e no uso das especificações para o desenvolvimento do software. Assim todas as informações necessárias para desenvolver o modelo devem ser disponíveis antes do começo da implementação, o que torna os modelos de uso artefatos importantes para o desenvolvimento, por exemplo, de funções em termos de probabilidade de uso [48]. Também é apresentada uma metodologia para a criação de modelos de uso dividida em oito etapas [48], como segue: 1. Revisar a especificação do software: Nesta etapa a especificação do software é revisada e compreendida, para que o modelo de uso possa refletir o uso do software partindo de uma especificação funcional completa. 2. Identificar o uso do software, usuário e ambiente de uso: Nesta etapa é definido o ambiente operacional o qual o software vai ser aplicado [48]: Usuário: Compreende a entidade que interage com o software, e pode ser uma pessoa, um periférico ou outro sistema.

17 CAPÍTULO 2. TESTE ESTATÍSTICO 7 Uso: Compreende a maneira como o software é processado, e pode ser uma seção de trabalho, transações ou qualquer outra unidade de serviço. Ambiente: Compreende os fatores externos ao software que podem interferir no seu funcionamento, e pode ser interações com outros sistemas (banco de dados, dispositivos de E / S), plataforma, integridade de dados, necessidade de acessos simultâneos, etc. 3. Definir parâmetros de ambiente: Existe uma grande quantidade de combinações de valores para os parâmetros utilizados por um software, incluindo múltiplos estímulos aplicados simultaneamente. Nesta etapa são definidos os parâmetros que serão suficientes e que satisfaçam o sistema e contribuem para o desenvolvimento de modelos de uso de forma que estes se tornem simples e eficazes. 4. Determinar o nível de granularidade: A granularidade dos modelos de uso tendem a aumentar com seu custo de desenvolvimento e manutenção. Nesta etapa, para determinar os níveis de granularidade deve-se periodicamente analisar o custo de desenvolvimento e manutenção do modelo e os benefícios de se ter um teste de melhor qualidade. 5. Desenvolver a estrutura do modelo de uso: Os modelos de uso são compostos por eventos e transições entre os eventos, sendo que os eventos partem de um estado para outro. Nesta etapa o modelo de uso pode ser representado por um grafo, gramática formal, MC ou SAN. 6. Verificar se a estrutura do modelo de uso está de acordo com a especificação: Nesta etapa todos os parâmetros que afetam a estrutura dos modelos devem ser verificados, como classes de usuários e funções críticas do sistema, entre outros. 7. Desenvolver a distribuição da probabilidade para o modelo: Nesta etapa, para cada transição é definida uma probabilidade, e um conjunto de transições que definem a distribuição da probabilidade. Essa distribuição é a base para que o teste estatístico de software possa ser executado. 8. Verificar a distribuição da probabilidade: Nesta etapa é feita uma verificação da distribuição da probabilidade na tentativa de minimizar erros. Estas etapas incluem todos os passos necessários para a construção de um modelo de uso. No entanto, cabe ressaltar que um modelo de uso define apenas aspectos funcionais de um software, não considerando aspectos não funcionais ou estruturais do software modelado.

18 CAPÍTULO 2. TESTE ESTATÍSTICO Benefícios e Limitações dos Modelos de Uso no Teste Estatístico de Software É notório que o teste estatístico baseado nos modelos de uso possui muitos benefícios, mas por outro lado, também possui algumas limitações. Como a modelagem é feita baseada em estados surge o problema da explosão dos estados, ou seja, modelos muito complexos que necessitam de uma modelagem com muitos estados pode tornar a sua construção impraticável. Este problema pode ser contornado adicionando uma maior abstração ao modelo, no entanto outro problema é gerado: A perda de informações [26]. Uma alternativa é a utilização de redes de autômatos estocásticos (SAN) que será discutida adiante. Há muitos benefícios no teste estatístico de software com modelos de uso; alguns podem ser vistos em [37], como: Fonte para estimativas de planejamento: Os resultados obtidos podem ser utilizados para estimar custo e tempo no desenvolvimento de novos software. Geração de testes automática: A utilização de modelos de uso torna-se ideal para a geração automática de testes, por exemplo, utilizando cadeias de Markov para a execução de testes estatísticos de software. Testes eficientes: Os testes tornam-se bem estruturados e contribuem para a obtenção de resultados mais eficientes. Gerenciamento quantitativo dos testes: Os resultados quantitativos dos testes acabam ajudando no gerenciamento e tomadas de decisão. Verificação de confiabilidade: Com a utilização dos modelos de uso as métricas de confiabilidade têm melhorado e, portanto, tornado as aplicações mais confiáveis. Cabe ressaltar que a utilização dos modelos de uso não garante todos os benefícios; algumas vezes alguns são mais enfatizados ou priorizados. Neste sentido, nesta dissertação os benefícios dos modelos de uso que buscou-se explorar foram a geração de testes automática, gerenciamento quantitativo dos casos de teste e verificação de confiabilidade. 2.4 Especificação Baseada em Modelos Formais Modelos são usados para compreender, especificar e desenvolver sistemas em muitas áreas [4]. No desenvolvimento de casos de teste e análise de confiabilidade estes modelos tornam-se muito interessantes, principalmente em sistemas complexos e

19 CAPÍTULO 2. TESTE ESTATÍSTICO 9 difíceis de serem testados exaustivamente [5]. O teste baseado em modelos significa representar as informações de um determinado sistema em um modelo. Há uma grande quantidade de modelos atualmente e cada um descreve diferentes aspectos do comportamento do software, como: Controle de fluxo, fluxo de dados, grafos, máquinas de estado, entre outros [13]. Atualmente os formalismos mais populares para a geração de casos de teste são baseados em estados, ou seja, os modelos utilizam-se de um conjunto de estados para a representação de um comportamento do sistema. Dentre os formalismos utilizados, é crescente a utilização dos modelos da UML, que substituem a simples representação de estilo gráfico por uma poderosa estrutura de linguagem. Portanto, UML é uma linguagem para construção de modelos de software dos mais simples até os mais complexos e vem sendo utilizada com muitos fins. Além da UML ser utilizada em diversas fases do desenvolvimento de sistemas, também podemos encontrar diversos trabalhos sobre teste baseado em UML, como, por exemplo, em [39] onde é proposto uma geração estatística de casos de teste baseada na utilização do diagrama de estados da UML. Como este trabalho representa uma continuação ao trabalho desenvolvido em [14], os modelos formais utilizados são as Cadeias de Markov (MC) e Redes de Autômatos Estocásticos (SAN). As MC são muito utilizadas na construção de modelos de uso para o teste estatístico, e as SAN possuem o mesmo poder de representação das MC, no entanto, de forma modular. Com isso, este trabalho não visa discutir outras formas de representação formal dos modelos de uso, mas busca explorar as MC e SAN no sentido de avaliar métricas e resultados na geração de casos de teste. A seguir, é apresentada uma descrição formal e informal dos modelos utilizados nesta dissertação, ou seja, as Cadeias de Markov e as Redes de Autômatos Estocásticos Cadeias de Markov - MC Uma máquina de estados finita (FSM) é representada por arcos que correspondem a transições que interligam estados. Cada transição contém o estado origem, um evento de entrada, saída ou uma ação e o próximo estado [5, 19]. Máquina de estados finitos também são conhecidas como autômatos finitos e são aplicadas para qualquer modelo que possa ser descrito com precisão por um número finito de estados e geralmente pequeno [13]. As FSM também são empregadas no teste de software como visto em [28]. Grafos são equivalentes a máquinas de estados finitos e modelam sistemas complexos e de tempo-real. Grafos fornecem um framework para especificar máquinas de estados em uma hierarquia, ou seja, um simples estado pode ser expandido em

20 CAPÍTULO 2. TESTE ESTATÍSTICO 10 outra máquina de estados e eles também agregam características especiais para máquinas de estados concorrentes [13]. As Cadeias de Markov (MC) são por sua vez uma extensão das máquinas de estados e grafos onde as transições possuem taxas ou probabilidades Definição Formal Considera-se a formalização de um modelo em Cadeias de Markov a Escala de Tempo Contínuo 1 (CTMC - Continuous Time Markov Chain) compreendendo um conjunto finito de estados e transições. Dado um conjunto finito E de estados, uma MC é definida como: Onde: (E,T x,y ) E = E 1,E 2,...,E n representa um conjunto de estados, onde n é um número inteiro, positivo e finito. T x,y representa uma taxa (não nula) de ocorrência de uma transição do estado E x para o estado E y. Outra definição formal das MC pode ser encontrada em [49] Definição Informal Um processo estocástico é definido como um conjunto de variáveis randômicas definidas em um espaço de probabilidade e indexadas por um parâmetro t, onde t representa um intervalo de tempo que pode variar de (, + ). Os valores assumidos pelo conjunto de variáveis randômicas são chamados de estados. O processo estocástico é discreto quando o intervalo de tempo é discreto e, portanto chamado de processo estocástico discreto, (ex. T = (0, 1, 2,...)). O processo estocástico é contínuo quando o intervalo de tempo é contínuo, e chamado de processo estocástico contínuo (ex. T = (0 t + )) [43]. O processo estocástico é definido como estacionário quando independe de mudanças do tempo inicial. Portanto, processo Markoviano é um processo estocástico quando é caracterizado por não possuir memória em relação ao passado do sistema, isto é, somente o estado atual do sistema pode influenciar no próximo estado [34]. Os estados em um processo Markoviano representam o estado do software. As ações executadas pelos usuários do sistema são definidas como transições entre 1 Nos modelos em CTMC as transições entre os estados podem ocorrer em qualquer instante de tempo [43].

21 CAPÍTULO 2. TESTE ESTATÍSTICO 11 os estados (representadas por arcos). Assim, as MC são definidas como modelos matemáticos para a resolução de fenômenos randômicos em um tempo. Esse tempo é considerado discreto e possui um número de estados finitos e enumeráveis. As MC no contexto de modelos de uso podem ser descritas em duas fases de construção: A fase estrutural onde os estados e arcos da cadeia são definidos, e a fase estatística onde são atribuídas as probabilidades de transições. Como visto na Figura 2.1, o modelo pode ser descrito em um alto nível de abstração. Por exemplo, em uma aplicação o modelo possui um estado inicial (Invocation) e um estado final (Termination). O estado de uso (Usage) representa um conjunto de estados que determina as ações executadas no software em questão [50]. Invocation Usage Termination Figura 2.1: Exemplo de MC. A utilização das MC como um modelo para a geração de casos de teste é bastante difundida na literatura, podendo ser encontrados diversos trabalhos [3, 45 47,51] Redes de Autômatos Estocásticos - SAN As SAN foram propostas por Plateau [36] e consistem em um conjunto de subsistemas representados por autômatos estocásticos e a interação entre os subsistemas é feita através de regras estabelecidas entre os estados internos de cada autômato. As SAN são muito apropriadas para a modelagem de sistemas paralelos e distribuídos que podem, muitas vezes, ser vistos como coleções de componentes que atuam de forma independente, requerendo somente eventuais interações como ações sincronizadas [36] Definição Formal A descrição formal aqui apresentada é dada de forma diferente da descrição formal apresentada nos trabalhos de Fernandes e Plateau [16,17,35,36]. Dados n conjuntos S i de estados (estados locais), uma SAN é definido a partir de A = {A 1,A 2,...A n } sendo um conjunto de autômatos, onde cada autômato A i é composto por estados de S i. Uma SAN é uma estrutura: (G,E,R,P,I)

22 CAPÍTULO 2. TESTE ESTATÍSTICO 12 Onde: G = {G 1,G 2,...G m } é um conjunto de estados globais, tal que cada G i é um elemento de A 1 A2 A n. Em outras palavras, cada estado global é uma combinação de estados locais de um autômato. E = {E 1,E 2,...E k } é um conjunto de eventos. Cada evento é uma função E i : G P(G). Ou seja, cada evento mapeia estados locais em conjuntos de estados globais. Quando um evento é disparado, a SAN pode ir para qualquer elemento do conjunto especificado por uma função, dependendo das probabilidades associadas ao evento. Assumindo que um estado global é uma lista de estados locais, a função descreve para cada autômato A i em uma rede, o que acontece no autômato quando o evento é disparado. Eventos podem ser classificados como locais e sincronizantes. Um evento local muda o estado de somente um autômato e um evento sincronizante muda o estado de dois ou mais autômatos. R = {R 1,R 2,...R k } é um conjunto de taxas funcionais, uma para cada evento. Cada função R i : G R + descreve a taxa de ocorrência do evento de cada estado global. P = {P 1,P 2,...P k } é um conjunto de funções de probabilidade de transição (possivelmente vazio), um para cada tupla (evento, estado global). Como definido acima, para um evento i, quando a SAN está em um estado global G i e o evento é disparado, a SAN vai para o estado G j o qual deve ser um elemento de E i (G i ). A função de probabilidade de transição descreve a probabilidade de diferentes elementos de E i (G i ) estarem selecionados. Usualmente, E i (G i ) tem somente um estado, então a definição dessa probabilidade é opcional. I G é um conjunto (possivelmente vazio) de estados iniciais. Na definição original SAN não possui um estado inicial, mas um conjunto de estados atingíveis. A definição de estados iniciais é útil em modelos de uso, e não muda o formalismo SAN. Qualquer SAN pode ser convertida em uma MC correspondente [16]. Os estados da MC correspondem aos estados globais da SAN. As SAN têm demonstrado um grande número de vantagens para a modelagem de sistemas complexos em comparação com as MC [18, 41]. Para o teste estatístico baseado em modelos de uso as vantagens também são evidentes e os modelos SAN são construídos sem perda de informações. Modelos de uso descritos com SAN têm algumas características interessantes [15]:

23 CAPÍTULO 2. TESTE ESTATÍSTICO 13 requisitos do ambiente podem ser explicitamente modelados, por exemplo, servidores, comunicação entre ambientes diferentes, etc; a representação é modular, melhorando a manutenção e leitura do modelo; um uso individual é uma seqüência de estados globais em uma SAN, assim, sua descrição é mais detalhada, o que torna simples o mapeamento de uso em casos de teste Definição Informal Como mencionado, no formalismo SAN os estados globais são definidos como a combinação de estados de cada autômato, chamados estados locais. Na Figura 2.2 pode ser visto um exemplo de um modelo SAN com dois autômatos completamente independentes. A (1) A (2) x (1) u (2) e 3 e 1 z (1) y (1) e 5 e 4 e 2 w (2) Tipo Evento Taxa Tipo Evento Taxa Loc e 1 τ 1 Loc e 4 τ 4 Loc e 2 τ 2 Loc e 5 τ 5 Loc e 3 τ 3 Figura 2.2: Exemplo SAN com dois autômatos independentes. O autômato A (1) possui três estados locais (x (1), y (1), z (1) ). O autômato A (2) possui dois estados locais (u (2), w (2) ). Os eventos nesse exemplo são considerados locais, pois cada evento altera apenas o estado de um autômato. Por exemplo, caso o autômato A (1) encontre-se no estado x (1) e o autômato A (2) encontre-se no estado u (2), o autômato A (1) pode passar do estado x (1) para y (1), conforme o evento e1, independente em que estado o autômato A (2) se encontre. O estado local de um autômato em um tempo t é justamente o estado em que ele ocupa no tempo t, e o estado global em um tempo t é dado pelo estado local em cada um dos autômatos da SAN ocupa neste mesmo tempo t. Seguindo o exemplo

24 CAPÍTULO 2. TESTE ESTATÍSTICO 14 da Figura 2.2 alguns estados globais são x (1) u (2), y (1) u (2), y (1) w (2), z (1) w (2), y (1) u (2). Há basicamente duas formas que as SAN interagem [44]: A taxa em que uma transição pode ocorrer em um autômato pode ser uma função de um estado de outro autômato. Assim transições são chamadas de taxas funcionais. Transições que não são funcionais são chamadas de constantes. Uma transição em um autômato pode forçar a ocorrência de uma transição em um ou mais autômatos. Este tipo de transição é dita como transições sincronizantes. Uma transição sincronizante também pode ser representada por uma taxa funcional ou constante. Em uma rede de autômatos estocásticos os estados dos autômatos podem sofrer mudanças. Quando um evento local muda de estado sem interferir no estado dos demais autômatos, o evento é chamado de evento local. Quando um evento muda não somente o seu estado, mas também o estado de outros autômatos simultaneamente, então é chamado de evento sincronizante. Na Figura 2.3 observamos o evento sincronizante s que representa transições disparadas simultaneamente nos autômatos A (1) e A (2), onde uma alteração no estado global do modelo ocorre através de uma alteração nos estados locais de ambos os autômatos. Também podemos observar no exemplo os eventos locais e1, e2, e3 do autômato A (1), e e4 do autômato A (2) que representam as transições que ocorrem no seu autômato através da alteração no estado local do autômato. A (1) A (2) x (1) u (2) sπ 1 e 1 e 3 sπ 2 s e 4 z (1) y (1) e 2 w (2) Tipo Evento Taxa Tipo Evento Taxa Loc e 1 τ 1 Loc e 4 τ 4 Loc e 2 τ 2 Syn s τ 5 Loc e 3 τ 3 Figura 2.3: Exemplo SAN de um evento sincronizante. Um evento sincronizante é associado a um conjunto de no mínimo duas transições. As transições sincronizantes possuem estruturas chamadas tripla de sin-

25 CAPÍTULO 2. TESTE ESTATÍSTICO 15 cronização que é definida por um identificador do evento sincronizante, uma taxa de disparo e uma probabilidade de ocorrência [17]: Nome do evento sincronizante: É o identificador do evento, onde cada evento sincronizante possui um nome único identificando que a transição ocorre simultaneamente. Taxa de disparo: É a taxa em que o evento ocorre. A taxa é apresentada apenas em um autômato, sendo omitida dos demais (π 1 e π 2 na Figura 2.3). Probabilidade de ocorrência: Cada transição que sai de um mesmo estado local recebe uma probabilidade de ocorrência, sendo que essas transições não ocorrem simultaneamente e a soma das probabilidades é igual a um. Considerando os tipos de eventos, locais e sincronizantes, podemos ter taxas constantes apresentadas como números reais não negativos, e taxas funcionais representadas por uma função para um único número real não negativo. As taxas funcionais e os eventos sincronizantes representam as duas formas de interação entre autômatos em uma SAN [44]. Os estados da SAN indicam qual é a taxa utilizada no momento da transição. No exemplo da Figura 2.4, o autômato A (2) apresenta, além do evento local l4, a taxa funcional f, definida como: λ1 se A (1) estiver no estado x (1) f = 0 se A (1) estiver no estado y (1) (2.1) λ2 se A (1) estiver no estado z (1) Assim, a transição do estado u (2) para o estado w (2) irá ocorrer com a taxa de λ 1 se o autômato A (1) estiver no estado x (1). Se o se o autômato A (1) estiver em z (1) a taxa de transição será de λ2. Caso o autômato A (1) esteja no estado y (1), a transição u (2) para w (2) não irá ocorrer, portanto com taxa igual a zero. Neste exemplo, a taxa funcional está sendo utilizada com um evento local, porém ela não está limitada a apenas eventos locais, podendo ser utilizada com eventos sincronizantes. As SAN representam uma importante ferramenta de modelagem que se torna muito útil principalmente para sistemas paralelos e distribuídos. Estes sistemas podem dispor de muitos estados e, portanto, a sua representação utilizando MC pode resultar no problema de explosão de estados. Além disso, tais sistemas freqüentemente podem ser vistos como módulos ou coleções de componentes e, portanto, o aspecto modular que as SAN agregam acaba sendo uma importante vantagem frente às MC [44].

26 CAPÍTULO 2. TESTE ESTATÍSTICO 16 A (1) A (2) x (1) u (2) e 1 sπ 1 e 3 sπ s 2 e 4 z (1) y (1) e 2 w (2) Tipo Evento Taxa Tipo Evento Taxa Loc e 1 τ 1 Loc e 4 f Loc e 2 τ 2 Syn s τ 5 Loc e 3 τ 3 Figura 2.4: Exemplo SAN utilizando taxa funcional.

27 Capítulo 3 Estudos de Caso Este capítulo descreve os estudos de caso realizados com a finalidade de evoluir alguns resultados numéricos na geração estatística de casos de teste. Um pequeno exemplo de um sistema de login é apresentado por completo, demonstrando todo o processo de construção de um modelo de uso. O primeiro estudo de caso referese à aplicação Simple Counter Navigation, que corresponde a uma aplicação de navegação entre páginas Web. Para o segundo estudo de caso utilizou-se a aplicação Calendar Manager, que se caracteriza por um sistema de gerenciamento do calendário acadêmico, com funcionalidades de edição de calendários e seus respectivos eventos. No terceiro estudo de caso, modelou-se a aplicação Docs Editor que consiste em um editor de planos de teste. 3.1 Exemplo: Sistema de Login Considere um simples sistema de login com dois diálogos: O primeiro é o diálogo de login (Figura 3.1a), onde o usuário entra com seu nome e senha; se o nome e senha estiverem incorretos, a aplicação apresenta uma mensagem de erro (Figura 3.1b); o segundo diálogo apresenta um menu onde o usuário pode simplesmente sair da aplicação (Figura 3.1c). Na Figura 3.2, a Cadeia de Markov (MC) equivalente descreve a aplicação com 4 estados e 7 transições. Cada estado corresponde a: Estado Start: Representa o estado inicial da aplicação. Quando a transição com taxa τ 1 é executada a aplicação é iniciada. Estado Password: Representa a tela de validação do nome e senha (Figura 3.1a). Estando neste estado a aplicação pode passar para o estado PNotOK com uma taxa de transição τ 5 ou para o estado menu executando a taxa de 17

28 CAPÍTULO 3. ESTUDOS DE CASO 18 Invalid Username/Password Valid Username/Password (b) (a) (c) Figura 3.1: Sistema de Login. τ 3. Se a transição com taxa τ 2 é executada a aplicação é finalizada voltando para o estado inicial. Estado PNotOK: Representa a mensagem de erro (Figura 3.1b). Executando a transição com taxa τ 4 a aplicação volta para o estado Password. Se a transição com taxa τ 2 é executada a aplicação é finalizada voltando para o estado inicial. Estado Menu: Representa o menu da aplicação (Figura 3.1c). Quando a transição com taxa τ 2 é executada a aplicação é finalizada voltando para o estado inicial. Start τ 2 τ 2 τ 2 τ 1 Menu τ 3 Password τ 5 τ 4 PNotOK Figura 3.2: Modelo MC: Sistema de Login. Na Figura 3.3 esta mesma aplicação é descrita por uma SAN com dois autômatos representando em que tela estamos e qual o status da tela. Neste modelo temos cinco eventos possíveis: Evento ST: Representa o início da execução, ou seja, a alteração do estado inicial [Start, Waiting] para o estado global [Password, Waiting].

29 CAPÍTULO 3. ESTUDOS DE CASO 19 Evento QT: Representa o fim da execução por interrupção ou término normal, ou seja, a alteração do estado [Password, Waiting] para [Start, Waiting] ou estado [Menu, Waiting] para [Start, Waiting] ou estado [Menu, POK] para [Start, Waiting]. Evento S: Representa a entrada de um usuário no sistema, ou seja, a alteração do estado [Password, Waiting] para [POK, Menu]. Evento l 1 : Representa um usuário inválido, ou seja, a alteração do estado [Password, Waiting] para [Password, PNotOk]. Evento l 2 : Representa a saída da mensagem de erro e retorno para a tela de login, ou seja, a alteração do estado [Password, PNotOk] para [Password, Waiting]. QT W indows Start Menu QT S ST Password Tipo Evento Taxa PNotOK Status l 1 l 2 ST QT S Waiting Tipo Evento Taxa QT Sync ST 2.0 Sync S 1.5 Sync QT 0.1 Loc l Loc l 1 f f = [st Windows == Password] 0.5 POK Figura 3.3: Modelo SAN: Sistema de Login. ST, QT e S são eventos sincronizantes, enquanto l 1 e l2 são locais. O evento local l 1 tem uma taxa funcional f. Segundo a definição de f, este evento só poderá ocorrer quando o autômato Windows estiver no estado Password. Observa-se que o modelo SAN possui nove estados globais onde apenas quatro são atingíveis (Tabela 3.1). Neste sentido, o modelo SAN acaba não se tornando mais compacto que seu modelo equivalente MC. Mesmo assim, o objetivo em apresentar esse modelo é o entendimento de como as aplicações são modeladas. As taxas reais para os modelos de uso são obtidas por logs de usuários, ou seja, a aplicação é monitorada por um determinado período de tempo e os logs gerados são convertidos em taxas. Desta forma, a aplicação é utilizada por um tempo arbitrário e então logs contendo informações de uso (links visitados, formulários preenchidos, etc) são gerados. O percentual de ocorrência de transições (MC) ou eventos (SAN) é interpretado como taxa de ocorrência. Por exemplo, se o evento

30 CAPÍTULO 3. ESTUDOS DE CASO 20 Tabela 3.1: Correspondência dos estados da MC: Sistema de Login. SAN - Estado global MC - Estado (Start, Waiting) Start (Start, PNokOK) (Start, POK) (Password, Wainting) Password (Password, PNokOK) PNotOK (Password, POK) (Menu, Waiting) (Menu, PNokOK) (Menu, POK) Menu S ocorre dez vezes em um total de vinte vezes, logo, sua taxa é igual à 0.5. Um exemplo desse processo pode ser visto em [29]. 3.2 Estudo de Caso 1: Simple Counter Navigation Para o primeiro estudo de caso utilizou-se uma aplicação chamada Simple Counter Navigation a qual foi desenvolvida pelo CPTS. Primeiramente é apresentada uma descrição da aplicação, e logo após seu modelo MC seguido pelo modelo SAN equivalente Descrição da Aplicação A aplicação consiste em páginas HTML e JavaScript. A aplicação é apresentada da seguinte forma: Tela Inicial (estado Start): Apresenta o início da aplicação e possui dois links: link NEXT1 que vai para a próxima janela e link CLOSE que fecha a aplicação. Janela 1 (estado main): Apresenta uma única opção disponível e o link NEXT2 para a janela 2. Janela 2 (estado win01): Apresenta dois links para caminhos diferentes. No link CAMINHO1 a aplicação retorna a tela inicial, e no link CAMINHO2 a aplicação passa para a janela 3.

31 CAPÍTULO 3. ESTUDOS DE CASO 21 Janela 3 (estados win03 0 1, win01 0 1, win03 0 2, win04 0 2, win03 0 3): Apresenta um contador com valor inicial igual a 0 e cada vez que o link NEXT5 é acionado, a aplicação passa para a janela 4, onde o contador é incrementado. Quando o contador tiver o valor 2 a próxima vez em que o link NEXT5 for acionado a aplicação retorna a tela inicial. Janela 4 (estado win02): Apresenta a última tela da aplicação onde é possível voltar para a tela inicial através do link NEXT7 ou retornar a tela anterior através do link BACK Modelo de Cadeia de Markov O modelo MC para a aplicação Simple Counter Navigation possui nove estados conforme apresentado na Figura 3.4. ST main LV L2 win02 start QT L1 win01 T S L3 win03_01 win04_01 L4 V win03_02 T L5 V L6 win04_02 T win03_03 Figura 3.4: Modelo MC: Simple Counter Navigation Modelo SAN O modelo de uso da aplicação considera os seguintes elementos: A aplicação ativa e não ativa. A navegabilidade da aplicação, ou seja, as telas e as opções (links) de navegação disponíveis ao usuário. O contador existente na janela 3.

32 CAPÍTULO 3. ESTUDOS DE CASO 22 Sendo assim, foram definidos três autômatos para a aplicação: Autômato Application: Representa o início da aplicação (estado run) e o fechamento da aplicação, fazendo a aplicação voltar a um estado inicial start. Autômato Navigation: Representa as possibilidades de navegação entre as telas da aplicação. Autômato Count: Representa o contador da aplicação. O modelo SAN apresentado na Figura 3.5 possui cinco eventos sincronizantes e sete eventos locais, possuindo um total de 60 estados, sendo que apenas 9 são atingíveis. Na situação inicial da aplicação (tela inicial), ela encontra-se no estado run do autômato Aplication, estado main do autômato N avigation e no estado start do autômato Cont. Os eventos sincronizantes são: Evento ST: Ocorre quando a aplicação é iniciada passando do estado start, start, start para o estado run,main,start. Evento QT: Ocorre quando a aplicação é encerrada, ou seja quando o usuário acionar o link CLOSE na tela inicial. Evento S: Ocorre quando a aplicação passa para a tela onde possui o contador (Janela 3). Evento V e T: Ocorrem quando o usuário volta para a tela inicial. Os eventos locais são: Evento L 1 : Ocorre quando a aplicação passa do estado main para o estado win01 do autômato Navigation. Evento L 2 : Ocorre quando a aplicação passa do estado win01 para o estado win02 do autômato Navigation. Evento L 3 : Ocorre quando a aplicação passa do estado win03_01 para o estado win04_01 do autômato Cont. Evento L 4 : Ocorre quando a aplicação passa do estado win04_01 para o estado win03_02 do autômato Cont. Evento L 5 : Ocorre quando a aplicação passa do estado win03_02 para o estado win04_02 do autômato Cont.

33 CAPÍTULO 3. ESTUDOS DE CASO 23 Aut Aplication (AA) ST start QT run Aut Navigation (AN) main ST LV L2 win02 start QT L1 win01 V T S win03 Aut Cont (AC) T T ST S f win03_01 win04_01 win04_02 start T L3 L4 L5 L6 win03_02 win03_03 V V Figura 3.5: Modelo SAN: Simple Counter Navigation. Evento L 6 : Ocorre quando a aplicação passa do estado win04_02 para o estado win03_03 do autômato Cont. Evento LV : Ocorre quando a aplicação passa do estado win02 para o estado main do autômato Navigation. Logo após, foi gerada a descrição textual do modelo SAN conforme apresentada no Apêndice C. Tal descrição é utilizada para a obtenção das probabilidades dos estados que serão utilizadas para o cálculo da métrica. O modelo SAN corresponde a MC apresentada na Tabela 3.2, onde observa-se a equivalência dos estados da MC para o formalismo SAN.

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como: Plano de Teste (resumo do documento) I Introdução Identificador do Plano de Teste Esse campo deve especificar um identificador único para reconhecimento do Plano de Teste. Pode ser inclusive um código

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

Se observarmos nos diferentes livros. Planejamento de Testes a partir de Casos de Uso

Se observarmos nos diferentes livros. Planejamento de Testes a partir de Casos de Uso Planejamento de Testes a partir de Casos de Uso Arilo Cláudio Dias Neto ariloclaudio@gmail.com É Bacharel em Ciência da Computação formado na Universidade Federal do Amazonas, Mestre em Engenharia de Sistemas

Leia mais

Levantamento de Requisitos

Levantamento de Requisitos Levantamento de Requisitos 1 Segurança No início do programa, a primeira tela a aprecer será uma tela denominada Login. Só terá acesso ao sistema da locadora quem estiver logado e cadastrado no sistema

Leia mais

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Pós-Graduação em Gerenciamento de Projetos práticas do PMI Pós-Graduação em Gerenciamento de Projetos práticas do PMI Planejamento do Gerenciamento das Comunicações (10) e das Partes Interessadas (13) PLANEJAMENTO 2 PLANEJAMENTO Sem 1 Sem 2 Sem 3 Sem 4 Sem 5 ABRIL

Leia mais

4 Segmentação. 4.1. Algoritmo proposto

4 Segmentação. 4.1. Algoritmo proposto 4 Segmentação Este capítulo apresenta primeiramente o algoritmo proposto para a segmentação do áudio em detalhes. Em seguida, são analisadas as inovações apresentadas. É importante mencionar que as mudanças

Leia mais

Testes de Software. Testes de Software. Teste de Validação. Teste de Defeito. Modelo de Entrada e Saída. Modelo de Entrada e Saída

Testes de Software. Testes de Software. Teste de Validação. Teste de Defeito. Modelo de Entrada e Saída. Modelo de Entrada e Saída DCC / ICEx / UFMG Testes de Software Testes de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Teste de software buscam por erros ou anomalias em requisitos funcionais e não funcionais Classificação

Leia mais

Manual Geral do OASIS

Manual Geral do OASIS Manual Geral do OASIS SISTEMA DE GESTÃO DE DEMANDA, PROJETO E SERVIÇO DE TECNOLOGIA DA INFORMAÇÃO OASIS Introdução Esse manual tem como objetivo auxiliar aos usuários nos procedimentos de execução do sistema

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Fundamentos em Teste de Software. Vinicius V. Pessoni viniciuspessoni@gmail.com

Fundamentos em Teste de Software. Vinicius V. Pessoni viniciuspessoni@gmail.com Fundamentos em Teste de Software Vinicius V. Pessoni viniciuspessoni@gmail.com Objetivos do treinamento 1. Expor os fundamentos de Teste de Software; 2. Conceituar os Níveis de Teste; 3. Detalhar sobre

Leia mais

Persistência e Banco de Dados em Jogos Digitais

Persistência e Banco de Dados em Jogos Digitais Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem

Leia mais

Manual do sistema SMARsa Web

Manual do sistema SMARsa Web Manual do sistema SMARsa Web Módulo Gestão de atividades RS/OS Requisição de serviço/ordem de serviço 1 Sumário INTRODUÇÃO...3 OBJETIVO...3 Bem-vindo ao sistema SMARsa WEB: Módulo gestão de atividades...4

Leia mais

Tecnologia em Gestão Pública Desenvolvimento de Projetos - Aula 9 Prof. Rafael Roesler

Tecnologia em Gestão Pública Desenvolvimento de Projetos - Aula 9 Prof. Rafael Roesler Tecnologia em Gestão Pública Desenvolvimento de Projetos - Aula 9 Prof. Rafael Roesler Introdução Objetivos da Gestão dos Custos Processos da Gerência de Custos Planejamento dos recursos Estimativa dos

Leia mais

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi Metodologias de Desenvolvimento de Sistemas Analise de Sistemas I UNIPAC Rodrigo Videschi Histórico Uso de Metodologias Histórico Uso de Metodologias Era da Pré-Metodologia 1960-1970 Era da Metodologia

Leia mais

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS O termo metodologia não possui uma definição amplamente aceita, sendo entendido na maioria das vezes como um conjunto de passos e procedimentos que

Leia mais

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas PIM PROGRAMA DE INTEGRAÇÃO COM O MERCADO GUIA DE CURSO Tecnologia em Sistemas de Informação Tecnologia em Desenvolvimento Web Tecnologia em Análise e Desenvolvimento de Sistemas Tecnologia em Sistemas

Leia mais

INTRODUÇÃO 2 ACESSO AO SIGTECWEB 3 TEMPO DE CONEXÃO 5 NAVEGAÇÃO 7 BARRA DE AÇÕES 7 COMPORTAMENTO DOS BOTÕES 7 FILTROS PARA PESQUISA 8

INTRODUÇÃO 2 ACESSO AO SIGTECWEB 3 TEMPO DE CONEXÃO 5 NAVEGAÇÃO 7 BARRA DE AÇÕES 7 COMPORTAMENTO DOS BOTÕES 7 FILTROS PARA PESQUISA 8 ÍNDICE INTRODUÇÃO 2 ACESSO AO SIGTECWEB 3 TEMPO DE CONEXÃO 5 NAVEGAÇÃO 7 BARRA DE AÇÕES 7 COMPORTAMENTO DOS BOTÕES 7 FILTROS PARA PESQUISA 8 ACESSO ÀS FERRAMENTAS 9 FUNÇÕES 12 MENSAGENS 14 CAMPOS OBRIGATÓRIOS

Leia mais

Programa de Capacitação em Gestão do PPA Curso PPA: Elaboração e Gestão Ciclo Básico. Elaboração de Planos Gerenciais dos Programas do PPA

Programa de Capacitação em Gestão do PPA Curso PPA: Elaboração e Gestão Ciclo Básico. Elaboração de Planos Gerenciais dos Programas do PPA Programa de Capacitação em Gestão do PPA Curso PPA: Elaboração e Gestão Ciclo Básico Elaboração de Planos Gerenciais dos Programas do PPA Brasília, abril/2006 APRESENTAÇÃO O presente manual tem por objetivo

Leia mais

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2 .:: Universidade Estadual de Maringá Bacharelado em Informática Eng. de Software III :. Sistema de Gerenciamento de Eventos - Equipe 09 EPSI Event Programming System Interface Metodologia e Gerenciamento

Leia mais

Projeto de Sistemas I

Projeto de Sistemas I Instituto Federal de Educação, Ciência e Tecnologia de São Paulo Projeto de Sistemas I Professora: Kelly de Paula Cunha E-mail:kellypcsoares@ifsp.edu.br Requisitos: base para todo projeto, definindo o

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Introdução a Engenharia de Requisitos Professor: Ricardo Argenton Ramos Aula 08 Slide 1 Objetivos Introduzir a noção de requisitos do sistema e o processo da engenharia de requisitos.

Leia mais

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio 32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio

Leia mais

Unidade VI. Validação e Verificação de Software Teste de Software. Conteúdo. Técnicas de Teste. Estratégias de Teste

Unidade VI. Validação e Verificação de Software Teste de Software. Conteúdo. Técnicas de Teste. Estratégias de Teste Unidade VI Validação e Verificação de Software Teste de Software Profa. Dra. Sandra Fabbri Conteúdo Técnicas de Teste Funcional Estrutural Baseada em Erros Estratégias de Teste Teste de Unidade Teste de

Leia mais

MANUAL DE UTILIZAÇÃO DO SISTEMA GLPI

MANUAL DE UTILIZAÇÃO DO SISTEMA GLPI MANUAL DE UTILIZAÇÃO DO SISTEMA GLPI PERFIL TÉCNICO Versão 2.0 DEPARTAMENTO DE INFORMÁTICA E TELECOMUNICAÇÕES PREFEITURA DE GUARULHOS SP 1 Objetivo: Esse manual tem como objetivo principal instruir os

Leia mais

DarkStat para BrazilFW

DarkStat para BrazilFW DarkStat para BrazilFW ÍNDICE Índice Página 1 O que é o DarkStat Página 2 DarkStat e a inicialização do sistema Página 2 DarkStat e a finalização do sistema Página 2 Tela Principal do DarkStat Página 3

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

Casos de teste semânticos. Casos de teste valorados. Determinar resultados esperados. Gerar script de teste automatizado.

Casos de teste semânticos. Casos de teste valorados. Determinar resultados esperados. Gerar script de teste automatizado. 1 Introdução Testes são importantes técnicas de controle da qualidade do software. Entretanto, testes tendem a ser pouco eficazes devido à inadequação das ferramentas de teste existentes [NIST, 2002].

Leia mais

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO AGOSTO DE 2013 SUMÁRIO STI/UFF - Sistema de Gerenciamento de Projetos do PDI SUMÁRIO... 2 1 Introdução... 3 1.1 O que é e qual a finalidade

Leia mais

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010.

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010. Visão Geral do Sistema Prof. Raul Sidnei Wazlawick UFSC-CTC-INE 2010 Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010. A fase de concepção do UP consiste

Leia mais

Fundamentos de Teste de Software

Fundamentos de Teste de Software Núcleo de Excelência em Testes de Sistemas Fundamentos de Teste de Software Módulo 2- Teste Estático e Teste Dinâmico Aula 4 Projeto de Teste 1 SUMÁRIO INTRODUÇÃO... 3 ANÁLISE E PROJETO DE TESTE... 3 1.

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

4 O Workflow e a Máquina de Regras

4 O Workflow e a Máquina de Regras 4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu

Leia mais

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET I Sumário 1. Objetivo do Documento... 1 2. Início... 1 3. Cadastro de Pessoa Física... 3 3.1. Preenchimentos Obrigatórios.... 4 3.2. Acesso aos Campos

Leia mais

Funções de Posicionamento para Controle de Eixos

Funções de Posicionamento para Controle de Eixos Funções de Posicionamento para Controle de Eixos Resumo Atualmente muitos Controladores Programáveis (CPs) classificados como de pequeno porte possuem, integrados em um único invólucro, uma densidade significativa

Leia mais

MANUAL DE UTILIZAÇÃO Aplicativo Controle de Estoque Desktop

MANUAL DE UTILIZAÇÃO Aplicativo Controle de Estoque Desktop MANUAL DE UTILIZAÇÃO Aplicativo Controle de Estoque Desktop 1 1 INICIANDO O APLICATIVO PELA PRIMEIRA VEZ... 3 2 PÁGINA PRINCIPAL DO APLICATIVO... 4 2.1 INTERFACE INICIAL... 4 3 INICIANDO PROCESSO DE LEITURA...

Leia mais

Qualidade de Software. Profa. Cátia dos Reis Machado catia@ifc-camboriu.edu.br

Qualidade de Software. Profa. Cátia dos Reis Machado catia@ifc-camboriu.edu.br Qualidade de Software Profa. Cátia dos Reis Machado catia@ifc-camboriu.edu.br Verificação x validação Verificação prova que o produto vai ao encontro dos requerimentos especificados no desenvolvimento

Leia mais

Gerenciamento de Riscos do Projeto Eventos Adversos

Gerenciamento de Riscos do Projeto Eventos Adversos Gerenciamento de Riscos do Projeto Eventos Adversos 11. Gerenciamento de riscos do projeto PMBOK 2000 PMBOK 2004 11.1 Planejamento de gerenciamento de riscos 11.1 Planejamento de gerenciamento de riscos

Leia mais

Apesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma:

Apesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma: 1 Introdução A utilização de frameworks como base para a construção de aplicativos tem sido adotada pelos desenvolvedores com três objetivos básicos. Primeiramente para adotar um padrão de projeto que

Leia mais

Registro e Acompanhamento de Chamados

Registro e Acompanhamento de Chamados Registro e Acompanhamento de Chamados Contatos da Central de Serviços de TI do TJPE Por telefone: (81) 2123-9500 Pela intranet: no link Central de Serviços de TI Web (www.tjpe.jus.br/intranet) APRESENTAÇÃO

Leia mais

Guia de utilização da notação BPMN

Guia de utilização da notação BPMN 1 Guia de utilização da notação BPMN Agosto 2011 2 Sumário de Informações do Documento Documento: Guia_de_utilização_da_notação_BPMN.odt Número de páginas: 31 Versão Data Mudanças Autor 1.0 15/09/11 Criação

Leia mais

Testes de Software. Testes de Software. Teste de Validação. Teste de Defeito. Modelo de Entrada e Saída. Modelo de Entrada e Saída

Testes de Software. Testes de Software. Teste de Validação. Teste de Defeito. Modelo de Entrada e Saída. Modelo de Entrada e Saída DCC / ICEx / UFMG Testes de Software Testes de Software Teste de software buscam por erros ou anomalias em requisitos funcionais e não funcionais Classificação de testes pelo objetivo Teste de Validação:

Leia mais

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho 20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam

Leia mais

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial 1 of 14 27/01/2014 17:33 Sistema de Paginação de Esportes Universitários Documento de Arquitetura de Software Versão 1.0 Histórico da Revisão Data 30 de novembro de 1999 Versão Descrição Autor 1.0 Versão

Leia mais

TOTVS Série 1 Varejo (Simples) - Módulo e-commerce

TOTVS Série 1 Varejo (Simples) - Módulo e-commerce Novo Módulo disponível no TOTVS S1 Varejo: permissão de utilização através de licença específica. Mesmo não adquirindo a licença de uso do módulo ele continuará presente na tela do usuário. 1 Na opção

Leia mais

O modelo unificado de processo. O Rational Unified Process, RUP.

O modelo unificado de processo. O Rational Unified Process, RUP. Cursos: Sistemas de Informação Disciplina: Administração ADM Prof. Jarbas Avaliação: Prova B1, 5º/6º semestres Data: 27/09/2010 Nome: Gabarito RA: Assinatura: Turma: 1) Segundo as afirmações a seguir,

Leia mais

Manual de digitação de contas Portal AFPERGS

Manual de digitação de contas Portal AFPERGS Manual de digitação de contas Portal AFPERGS 1 Sumário Acesso à função digitação de contas... 3 O que é a Função digitação de contas (DC)... 4 Como proceder na função digitação de conta médica (DC)...

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de software AULA NÚMERO: 08 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir conceitos relacionados a modelos e especificações. Nesta aula

Leia mais

Introdução Visão Geral Processos de gerenciamento de qualidade. Entradas Ferramentas e Técnicas Saídas

Introdução Visão Geral Processos de gerenciamento de qualidade. Entradas Ferramentas e Técnicas Saídas Introdução Visão Geral Processos de gerenciamento de qualidade Entradas Ferramentas e Técnicas Saídas O que é qualidade? Qualidade é a adequação ao uso. É a conformidade às exigências. (ISO International

Leia mais

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com PMBoK Organização do Projeto Os projetos e o gerenciamento

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

Versão Liberada. www.gerpos.com.br. Gerpos Sistemas Ltda. info@gerpos.com.br. Av. Jones dos Santos Neves, nº 160/174

Versão Liberada. www.gerpos.com.br. Gerpos Sistemas Ltda. info@gerpos.com.br. Av. Jones dos Santos Neves, nº 160/174 Versão Liberada A Gerpos comunica a seus clientes que nova versão do aplicativo Gerpos Retaguarda, contendo as rotinas para emissão da Nota Fiscal Eletrônica, já está disponível. A atualização da versão

Leia mais

Processos de gerenciamento de projetos em um projeto

Processos de gerenciamento de projetos em um projeto Processos de gerenciamento de projetos em um projeto O gerenciamento de projetos é a aplicação de conhecimentos, habilidades, ferramentas e técnicas às atividades do projeto a fim de cumprir seus requisitos.

Leia mais

MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento. Toledo PR. Versão 2.0 - Atualização 26/01/2009 Depto de TI - FASUL Página 1

MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento. Toledo PR. Versão 2.0 - Atualização 26/01/2009 Depto de TI - FASUL Página 1 MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento Toledo PR Página 1 INDICE 1. O QUE É O SORE...3 2. COMO ACESSAR O SORE... 4 2.1. Obtendo um Usuário e Senha... 4 2.2. Acessando o SORE pelo

Leia mais

SUMÁRIO Acesso ao sistema... 2 Atendente... 3

SUMÁRIO Acesso ao sistema... 2 Atendente... 3 SUMÁRIO Acesso ao sistema... 2 1. Login no sistema... 2 Atendente... 3 1. Abrindo uma nova Solicitação... 3 1. Consultando Solicitações... 5 2. Fazendo uma Consulta Avançada... 6 3. Alterando dados da

Leia mais

Manual Captura S_Line

Manual Captura S_Line Sumário 1. Introdução... 2 2. Configuração Inicial... 2 2.1. Requisitos... 2 2.2. Downloads... 2 2.3. Instalação/Abrir... 3 3. Sistema... 4 3.1. Abrir Usuário... 4 3.2. Nova Senha... 4 3.3. Propriedades

Leia mais

TRANSMISSOR ECF. Sistema de transmissão de arquivos Nota Fiscal Paulista. Manual de Utilização

TRANSMISSOR ECF. Sistema de transmissão de arquivos Nota Fiscal Paulista. Manual de Utilização TRANSMISSOR ECF Sistema de transmissão de arquivos Nota Fiscal Paulista Manual de Utilização 1. Histórico de alterações Data Versão Alteração 04/12/2012 1 Criação do documento 28/02/2013 2 Revisão 2. Proposta

Leia mais

Seja uma rede de Petri definida pela tripla (L, T, A), e por sua marcação inicial M 0.

Seja uma rede de Petri definida pela tripla (L, T, A), e por sua marcação inicial M 0. AULA 22 ESTUDO E APLICAÇÕES DAS REDES DE PETRI COMO MECANISMO DE DESCRIÇÃO DE SISTEMAS. 6. Propriedades das redes Seja uma rede de Petri definida pela tripla (L, T, A), e por sua marcação inicial M 0.

Leia mais

Material de Apoio. SEB - Contas a Pagar. Versão Data Responsável Contato 1 05/12/2011 Paula Fidalgo paulaf@systemsadvisers.com

Material de Apoio. SEB - Contas a Pagar. Versão Data Responsável Contato 1 05/12/2011 Paula Fidalgo paulaf@systemsadvisers.com Material de Apoio SEB - Contas a Pagar Versão Data Responsável Contato 1 05/12/2011 Paula Fidalgo paulaf@systemsadvisers.com Conteúdo CONFIGURAÇÃO... 3 Cadastro de Fornecedores... 3 Métodos de Pagamento...

Leia mais

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo

Leia mais

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 UML 2 Guia Prático Gilleanes T.A. Guedes Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 Novatec capítulo 1 Introdução à UML A UML (Unified Modeling Language ou Linguagem de Modelagem

Leia mais

Processos Técnicos - Aulas 4 e 5

Processos Técnicos - Aulas 4 e 5 Processos Técnicos - Aulas 4 e 5 Trabalho / PEM Tema: Frameworks Públicos Grupo: equipe do TCC Entrega: versão digital, 1ª semana de Abril (de 31/03 a 04/04), no e-mail do professor (rodrigues.yuri@yahoo.com.br)

Leia mais

Projeto SIGA-EPT. Manual do usuário Módulo Requisição de Almoxarifado SISTEMA INTEGRADO DE GESTÃO ACADÊMICA

Projeto SIGA-EPT. Manual do usuário Módulo Requisição de Almoxarifado SISTEMA INTEGRADO DE GESTÃO ACADÊMICA Projeto SIGA-EPT Manual do usuário Módulo Requisição de Almoxarifado SISTEMA INTEGRADO DE GESTÃO ACADÊMICA Versão setembro/2010 Requisição de Almoxarifado Introdução Requisição é uma solicitação feita

Leia mais

ITIL v3 - Operação de Serviço - Parte 1

ITIL v3 - Operação de Serviço - Parte 1 ITIL v3 - Operação de Serviço - Parte 1 É na Operação de Serviço que se coordena e realiza as atividades e processos necessários para fornecer e gerenciar serviços em níveis acordados com o usuário e clientes

Leia mais

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR 6LPXODomR GH6LVWHPDV )HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR #5,6. Simulador voltado para análise de risco financeiro 3RQWRV IRUWHV Fácil de usar. Funciona integrado a ferramentas já bastante conhecidas,

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas CMP1132 Processo e qualidade de software II Prof. Me. Elias Ferreira Sala: 402 E Quarta-Feira:

Leia mais

1.6. Tratamento de Exceções

1.6. Tratamento de Exceções Paradigmas de Linguagens I 1 1.6. Tratamento de Exceções Uma exceção denota um comportamento anormal, indesejado, que ocorre raramente e requer alguma ação imediata em uma parte do programa [GHE 97, DER

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software Roteiro Inspeção Defeitos dos Software Classificação dos Erros Técnica de Leitura Ad-hoc Checklist Exercício Inspeção Inspeção de Software Definição É um método de análise estática

Leia mais

MANUAL DE UTILIZAÇÃO

MANUAL DE UTILIZAÇÃO MANUAL DE UTILIZAÇÃO Módulo de operação Ativo Bem vindo à Vorage CRM! Nas próximas paginas apresentaremos o funcionamento da plataforma e ensinaremos como iniciar uma operação básica através do nosso sistema,

Leia mais

QUALIDADE DE SOFTWARE. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1

QUALIDADE DE SOFTWARE. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1 QUALIDADE DE SOFTWARE Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1 Objetivos Apresentar o processo de gerenciamento de qualidade e as atividades centrais da garantia de

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

1) MANUAL DO INTEGRADOR Este documento, destinado aos instaladores do sistema, com informações de configuração.

1) MANUAL DO INTEGRADOR Este documento, destinado aos instaladores do sistema, com informações de configuração. O software de tarifação é uma solução destinada a rateio de custos de insumos em sistemas prediais, tais como shopping centers. O manual do sistema é dividido em dois volumes: 1) MANUAL DO INTEGRADOR Este

Leia mais

GUIA INTEGRA SERVICES E STATUS MONITOR

GUIA INTEGRA SERVICES E STATUS MONITOR GUIA INTEGRA SERVICES E STATUS MONITOR 1 - Integra Services Atenção: o Integra Services está disponível a partir da versão 2.0 do software Urano Integra. O Integra Services é um aplicativo que faz parte

Leia mais

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet.

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet. 1. Descrição Geral Este manual descreve as operações disponíveis no módulo VTWEB Client, cuja finalidade é gerenciar cadastros de funcionários, realização de pedidos e controle financeiro dos pedidos.

Leia mais

4 Avaliação Econômica

4 Avaliação Econômica 4 Avaliação Econômica Este capítulo tem o objetivo de descrever a segunda etapa da metodologia, correspondente a avaliação econômica das entidades de reservas. A avaliação econômica é realizada a partir

Leia mais

Desenvolvimento de uma Etapa

Desenvolvimento de uma Etapa Desenvolvimento de uma Etapa A Fase Evolutiva do desenvolvimento de um sistema compreende uma sucessão de etapas de trabalho. Cada etapa configura-se na forma de um mini-ciclo que abrange as atividades

Leia mais

PLANEJAMENTO E PROJETOS. Lílian Simão Oliveira

PLANEJAMENTO E PROJETOS. Lílian Simão Oliveira PLANEJAMENTO E GERENCIAMENTO DE PROJETOS Lílian Simão Oliveira Contexto Gerentes lutam com projetos assustadores e com prazos finais difíceis de serem cumpridos Sistemas não satisfazem aos usuários Gastos

Leia mais

SERVICE DESK MANAGER SDM. Manual do Sistema - DPOI

SERVICE DESK MANAGER SDM. Manual do Sistema - DPOI SERVICE DESK MANAGER SDM Manual do Sistema - DPOI Conteúdo SERVICE DESK MANAGER SDM... 1 Manual do Sistema - DPOI... 1 INTRODUÇÃO... 4 ACESSO AO SISTEMA... 5 OPÇÕES DO SISTEMA... 6 SISTEMA... 7 Pesquisar

Leia mais

Sumário. Uma visão mais clara da UML

Sumário. Uma visão mais clara da UML Instituto Federal de Santa Catarina Câmpus Chapecó Ensino Médio Integrado em Informática Módulo V Unidade Curricular: Engenharia de Software Professora: Lara P. Z. B. Oberderfer Uma visão mais clara da

Leia mais

Aplicativo da Manifestação do Destinatário. Manual

Aplicativo da Manifestação do Destinatário. Manual Aplicativo da Manifestação do Destinatário Manual Novembro de 2012 1 Sumário 1 Aplicativo de Manifestação do Destinatário...4 2 Iniciando o aplicativo...4 3 Menus...5 3.1 Manifestação Destinatário...5

Leia mais

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Cronograma das Aulas. Hoje você está na aula Semana

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

Engenharia de Software II

Engenharia de Software II Engenharia de Software II Aula 28 Revisão para a Prova 2 http://www.ic.uff.br/~bianca/engsoft2/ Aula 28-28/07/2006 1 Matéria para a Prova 2 Gestão de projetos de software Conceitos (Cap. 21) Métricas (Cap.

Leia mais

Iniciação à Informática

Iniciação à Informática Meu computador e Windows Explorer Justificativa Toda informação ou dado trabalhado no computador, quando armazenado em uma unidade de disco, transforma-se em um arquivo. Saber manipular os arquivos através

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

Comm5 Tecnologia Manual de utilização da família MI. Manual de Utilização. Família MI

Comm5 Tecnologia Manual de utilização da família MI. Manual de Utilização. Família MI Manual de Utilização Família MI ÍNDICE 1.0 COMO LIGAR O MÓDULO... pág 03 e 04 2.0 OBJETIVO... pág 05 3.0 COMO CONFIGURAR O MÓDULO MI... pág 06, 07, 08 e 09 4.0 COMO TESTAR A REDE... pág 10 5.0 COMO CONFIGURAR

Leia mais

Técnicas de Caixa Preta de Teste de Software

Técnicas de Caixa Preta de Teste de Software Técnicas de Caixa Preta de Teste de Software Na maioria de projetos de teste, o tempo para a realização dos mesmos sempre é curto e os números de testes a serem realizados nas aplicações são inúmeros.

Leia mais

Criação de Formulários

Criação de Formulários iq2 Criação de Formulários Formulários são os questionários formatados no software Sphinx para coleta de dados, que contêm opções avançadas de edição, organização e personalização. Ao utilizarmos o formulário

Leia mais

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider Ferramenta: Spider-CL Manual do Usuário Versão da Ferramenta: 1.1 www.ufpa.br/spider Histórico de Revisões Data Versão Descrição Autor 14/07/2009 1.0 15/07/2009 1.1 16/07/2009 1.2 20/05/2010 1.3 Preenchimento

Leia mais

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Pós-Graduação em Gerenciamento de Projetos práticas do PMI Pós-Graduação em Gerenciamento de Projetos práticas do PMI Planejamento do Gerenciamento das Comunicações (10) e das Partes Interessadas (13) PLANEJAMENTO 2 PLANEJAMENTO Sem 1 Sem 2 Sem 3 Sem 4 Sem 5 ABRIL

Leia mais

Projeto 2.47 QUALIDADE DE SOFTWARE WEB

Projeto 2.47 QUALIDADE DE SOFTWARE WEB OBJETIVO GERAL Projeto 2.47 QUALIDADE DE SOFTWARE WEB Marisol de Andrade Maués Como objetivo geral, buscou-se avaliar a qualidade de produtos Web, tendo como base o processo de avaliação de qualidade descrito

Leia mais

Manual do Sistema. SMARSA WEB Atendimento de Processos

Manual do Sistema. SMARSA WEB Atendimento de Processos Manual do Sistema SMARSA WEB Atendimento de Processos Módulo Atendimento ÍNDICE INTRODUÇÃO...1 OBJETIVOS...1 BEM VINDO AO SISTEMA SMARSA WEB MÓDULO ATENDIMENTO...2 TELA DE LOGIN...2 COMO UTILIZAR?... 2

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

Abordagem de Processo: conceitos e diretrizes para sua implementação

Abordagem de Processo: conceitos e diretrizes para sua implementação QP Informe Reservado Nº 70 Maio/2007 Abordagem de Processo: conceitos e diretrizes para sua implementação Tradução para o português especialmente preparada para os Associados ao QP. Este guindance paper

Leia mais