Processo de Software
|
|
|
- Juliana Salvado Guimarães
- 9 Há anos
- Visualizações:
Transcrição
1 Processo de Software Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 1 Processo de Software Conjunto de atividade coerentes para especificar, projetar, implementar e testar sistemas de software Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 2
2 Objetivos Introduzir modelo de processo de software Descrever diversos modelos de processos e onde eles podem ser usados Descrever saídas de modelos de processo para engenharia de requisitos, desenvolvimento, teste e evolução de software Introduzir tecnologias CASE para suportar atividades de processo de software Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 3 Tópicos Abordados Modelos de processo de software Iteração de processos Especificação de software Projeto e implementação de software Validação de software Evolução de software Suporte de processos automatizados Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 4
3 O Processo de Software Um conjunto estruturado de atividade requeridas para desenvolver um sistema de software Especificação Projeto Validação Evolução Um modelo de processo de software é uma representação abstrata de um processo. Ele representa a descrição de um processo a partir de uma perspectiva qualquer Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 5 Modelos de Processo de Software Geral Modelo Cascata Fases separadas e distintas de especificação e desenvolvimento Desenvolvimento Evolutivo Especificação e desenvolvimento são intercalados Desenvolvimento Formal de Sistemas Um modelo matemático de sistema é formalmente transformado em uma implementação Desenvolvimento Baseado em Re-uso O sistema é montado a partir de componentes existentes Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 6
4 Modelo em Cascata Requirements definition System and software design Implementation and unit testing Integr ation and system testing Operation and maintenance Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 7 Fases do Modelo em Cascata Definição e análise de requisitos Projeto do sistema e do software Implementação e teste dos sub-sistemas Integração e teste do sistema como um todo Operação e manutenção O inconveniente do modelo em cascata é a dificuldade de acomodar as mudanças após o processo estar em andamento Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 8
5 Problemas do Modelo em Cascata Particionamento inflexível do projeto em estágios distintos Isto faz ele responder com dificuldades a mudanças solicitadas pelo cliente Conseqüentemente, este modelo somente é apropriado onde os requisitos são bem compreendidos Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 9 Desenvolvimento Evolucionário Desenvolvimento exploratório O objetivo é trabalhar com o cliente para evoluir para o sistema final através de um esboço inicial. Se iniciar com requisitos bem compreendidos Prototipação descartável O objetivo é entender os requisitos do sistema. Se iniciar com mal entendimento dos requisitos Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 10
6 Desenvolvimento Evolucionário Concurr ent activities Specification Initial version Outline description Development Intermediate versions Validation Final version Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 11 Desenvolvimento Evolucionário Problemas Falta de visibilidade do processo O sistema freqüentemente é mal estruturado Conhecimentos especiais (ex.: em linguagens de prototipação rápida) podem ser requeridas Aplicabilidade Para sistemas interativos de tamanho pequeno ou médio Para partes de grandes sistemas» Ex.: a interface do usuário Para sistema de curta duração Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 12
7 Desenvolvimento de Sistemas Formais A especificação de requisitos de software é redefinida em uma especificação formal detalhada, que é expressa em uma notação matemática Os processos de desenvolvimento de projeto, implementação e teste de unidade são substituídos por um processo de desenvolvimento transformacional, em que a especificação formal é refinada por meio de uma série de transformações, em um programa Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 13 Desenvolvimento de Sistemas Formais Requirements definition Formal specification Formal transformation Integration and system testing Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 14
8 Transformações Formais Transformações Formal transformations formais T1 T2 T3 T4 Formal specification R1 R2 R3 Executable program P1 P2 P3 P4 Proofs of transformation correctness Provas de exatidão da transformação Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 15 Desenvolvimento de Sistemas Formais Problemas Precisa de especialistas com conhecimento e treinamento para aplicar as técnicas Dificuldade de especificar formalmente alguns aspectos do sistema, tal como a interface de usuário Aplicabilidade Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 16
9 Desenvolvimento Orientado ao Re-Uso Baseado em uma sistemática de re-uso onde os sistemas são integrados a partir de componentes existentes ou sistemas COTS (Commercial-off-the-shelf) Embora o estágio inicial de especificação de requisitos e o estágio de validação sejam comparáveis com outros processos, os estágios intermediários em um processo orientado a reuso são diferentes Estágios do Processo Análise dos componentes Modificação dos requisitos Projeto do sistema com re-uso Desenvolvimento e integração Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 17 Análise de Componentes Considerando a especificação de requisitos, é feita uma busca de componentes para implementar essa especificação. Em geral, não existe combinação exata e os componentes que podem ser utilizados fornecem somente parte da funcionalidade requerida Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 18
10 Modificação de Requisitos Durante este estágio, os requisitos são analisados, utilizando-se as informações sobre os componentes que foram encontrados. Eles são então modificados para refletir os componentes disponíveis. Quando as modificações forem impossíveis, a atividade de análise de componentes poderá ser refeita, a fim de procurar soluções alternativas Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 19 Projeto de Sistema com Reuso Durante essa fase, a infra-estrutura do sistema é projetada ou uma infra-estrutura existente é reutilizada. Os projetistas levam em conta os componentes que são reutilizados e organizam a infra-estrutura para lidar com esse aspecto. Um novo software poderá ter de ser projetado, se os componentes reutilizáveis não estiverem disponíveis Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 20
11 Desenvolvimento e Integração O software que não puder ser comprado será desenvolvido, e os componentes e sistemas COTS serão integrados, a fim de criar um sistema. A integração de sistemas, nesse modelo, pode ser parte do processo de desenvolvimento, em vez de uma atividade separada Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 21 Desenvolvimento Orientado ao Re-Uso Requirements specification Component analysis Requirements modification System design with reuse Development and integration System validation Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 22
12 Iteração de Processos Requisitos de sistema SEMPRE evoluem durante o curso de um projeto, assim iteração de processos onde os estágios mais adiantados são re-utilizados é sempre parte do processo de um grande sistema Iteração pode ser aplicada a qualquer modelo de processo genérico Dois modelos híbridos: Desenvolvimento incremental Desenvolvimento espiral Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 23 Desenvolvimento Incremental Requisitos de usuários são priorizados e, requisitos de alta prioridade são incluídos em incrementos mais adiantados Uma vez que o desenvolvimento de um incremento é iniciado, os requisitos são congelados, embora os requisitos para um incremento mais atrasado continuem a evoluir Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 24
13 Desenvolvimento Incremental Define outline requirements Assign requirements to increments Design system architecture Develop system increment Validate increment System incomplete Integrate increment Validate system Final system Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 25 Vantagens do Desenvolvimento Incremental Os clientes não precisam esperar até que todo o sistema seja entregue, para então tirarem proveito dele Os clientes podem utilizar os primeiros incrementos como um protótipo e obter uma experiência que forneça os requisitos para estágios posteriores do sistema Baixo risco de falha total do projeto Como as funções prioritárias são entregues primeiro e incrementos posteriores são integrados a elas, é inevitável que as funções de sistema mais importantes passem pela maior parte dos testes Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 26
14 Extreme programming (Programação Extrema) Recente evolução dessa abordagem incremental, tem como base o desenvolvimento e a entrega de incrementos de funcionalidades muito pequenos Confiança na melhoria constante do código, devido ao envolvimento do cliente no processo, a constante melhoria do código e a programação impessoal Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 27 Desenvolvimento Espiral O processo é representado como uma espiral em vez de representar o processo como um seqüência de atividades com algum retorno de uma atividade para outra Cada volta na espiral representa uma fase no processo Fases não fixas tais como, especificação ou projeto as voltas na espiral são escolhidas dependendo do que é requerido Os riscos são avaliados explicitamente e resolvidos durante todo o processo Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 28
15 Modelo Espiral do Processo de Software Determinar objetivos, Determ alternativas ine ob jectives e alternatives restriçõesand cons traints Planejar Plan próxima next p fase hase R EVIEW Requirement s plan Life-cycle plan Develop ment pl an Integration and test p lan R isk analys is Risk analys is Risk analys is Prot otyp e 2 Risk analysis Prototy pe 1 C oncept o f Operati on S/W requirement s Requi rement valid ation Design V& V Serv ice Accep tance test Evaluate Avaliar alternativas, atives ididentificar, tify, resol resolver risk riscos s Prot otyp e 3 Operational prot oyp e Simulations, models, b en ch marks Prod uct design Code Unit t es t Integr ation test Detailed design Develop, Desenvolver, verifyverificar next-level produto de p roduct próximo nível Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 29 Setores do Modelo Espiral Definição de Objetivos São definidos os objetivos específicos para essa fase do projeto Avaliação e redução de riscos Para os riscos identificados, é realizada uma análise detalhada e são tomadas providências para reduzir esse risco Validação e desenvolvimento Um modelo de desenvolvimento para o sistema é escolhido, o qual pode ser algum dos modelos genéricos Planejamento O projeto é revisto e a próxima fase do espiral é planejada Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 30
16 Especificação de Software O processo de engenharia de requisitos leva à produção de uma documentação de requisitos, que é a especificação do sistema Processo de engenharia de requisitos Estudo de viabilidade Levantamento e análise de requisitos Especificação de requisitos Validação de requisitos Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 31 O Processo de Engenharia de Requisitos Feasibility study Feasibility report Requirements elicitation and analysis System models Requir ements specification User and system requirements Requirements validation Requirements document Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 32
17 Projeto e Implementação de Software O processo de converter a especificação do sistema em um sistema executável Projeto de Software Descrição da estrutura do software a ser implementado Implementação Traduz essa estrutura em um programa executável Uma especificação para o próximo estágio é a saída de cada atividade de projeto. Essa especificação pode se uma especificação abstrata, formal, produzida para esclarecer os requisitos, ou pode ser uma especificação de como parte do sistema é implementado Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 33 Atividades de Processo de Projeto Projeto de arquitetura Especificação abstrata Projeto de interface Projeto de componentes Projeto de estrutura de dados Projeto de algoritmo Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 34
18 The software design process Requirements specification Design Atividades activities de Projeto Architectural design Abstract specification Interface design Component design Data structure design Algorithm design System architecture Software specification Interface specification Component specification Data structure specification Algorithm specification Projeto Design de Produtos products Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 35 Métodos de Projeto Em muitos projetos de desenvolvimento de software, o projeto de software ainda é um processo utilizado à medida que for necessário O projeto é geralmente documentado como um conjunto de modelos gráficos Modelos possíveis: Modelo de fluxo de dados Modelo de relacionamento de entidades Modelo estrutural Métodos orientados a objeto Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 36
19 Programação e Depuração Traduzir um projeto em um programa e remover os erros a partir deste programa Programação é uma atividade pessoal, não existe um processo genérico de programação Programadores desenvolvem alguns testes do código que eles mesmos desenvolveram, o que revela defeitos que devem ser removidos, esse processo é chamado de depuração Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 37 O Processo de Depuração Locate error Design error repair Repair error Re-test program Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 38
20 Validação de Software Verificação e Validação (V & V), destina-se a mostrar que um sistema está de acordo com suas especificações e que ele atende às expectativas do cliente comprador do sistema Envolve checar e revisar processos e testar o sistema Testar o sistema envolve executar o sistema com casos de teste que são derivados da especificação de dados reais a serem processados pelo sistema Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 39 O Processo de Teste Unit testing Module testing Sub-system testing System testing Acceptance testing Component testing Integration testing User testing Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 40
21 Estágios do Processo de Teste Teste de unidade Testa os componentes individuais, para garantir que eles operam corretamente Teste de módulo Coleção de componentes dependentes que são testados Teste de subsistema Testa conjuntos de módulos que foram integrados. O foco é na detecção de erros de interfaces de módulos, mediante utilização rigorosa destas interfaces Teste de sistema Teste do sistema como um todo. Teste das propriedades emergentes Teste de Aceitação Teste com dados do cliente para checar se o sistema está aceitável operacionalmente Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 41 Fases de Teste Requirements specification System specification System design Detailed design Acceptance test plan System integration test plan Sub-system integration test plan Module and unit code and tess Service Acceptance test System integration test Sub-system integration test Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 42
22 Evolução de Software O software é flexível e pode mudar Os requisitos podem mudar de acordo com as circunstâncias das mudanças do negócio e o software que suporta esse negócio também evolui e muda Entre o desenvolvimento e a evolução existe a manutenção. Os processo de manutenção são considerados menos desafiadores do o desenvolvimento de software original Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 43 Evolução de Sistema Define system requirements Assess existing systems Propose system changes Modify systems Existing systems New system Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 44
23 Apoio ao Processo Automatizado (CASE) Computer-aided software engineering (CASE) é um software de suporte ao processo de desenvolvimento e evolução do software Atividades que podem ser automatizadas: Desenvolvimento de modelos gráficos de sistemas Compreensão de um projeto utilizando-se dicionário de dados que contém informações sobre as entidades e sua relação Geração de interfaces com usuários, a partir de uma descrição gráfica da interface Depuração de programas, pelo fornecimento de informações sobre um programa em execução Tradução automatizada de programas, de uma antiga versão de linguagem de programação para uma mais recente Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 45 Tecnologia CASE A tecnologia CASE está atualmente disponível para a maioria das atividades de rotina no processo de software Engenharia de software requer atividades criativas, isto não é possível automatizar A engenharia de software é realizada em equipe, e os engenhos de software dedicam bastante tempo interagindo com os outros membros da equipe. A tecnologia CASE não é muito compatível com essa situação Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 46
24 Classificação CASE A classificação ajuda-nos a entender os diferentes tipos de ferramentas CASE e seu papel em apoiar as atividade de processo de software Perspectiva funcional As ferramentas são classificadas de acordo com sua função específica Perspectiva de processo As ferramentas são classificadas de acordo com a atividade de processo que elas apóiam Perspectiva de integração As ferramentas são classificadas de acordo com a maneira como são organizadas em unidades integradas Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 47 Classificação Funcional Tipo de Ferramenta Ferramenta de planejamento Ferramenta de edição Ferramenta de gerenciamento de mudança Ferramenta de gerenciamento de configuração Ferramenta de prototipação Ferramenta de apoio a métodos Ferramenta de processamento de linguagem Ferramenta de análise de programa Ferramenta de testes Ferramenta de depuração Ferramenta de documentação Ferramenta de reengenharia Exemplos Ferramentas PERT, planilhas eletrônicas Editores de texto, editores de diagrama Ferramentas de controle de requisitos Sistemas de gerenciamento de versão Linguagens de nível muito alto, geradores de interface Editores de projeto, dicionários de dados Compiladores, interpretadores Geradores de referência cruzada, analisadores estáticos Geradores de dados de testes, comparadores de arquivos Sistemas interativos de depuração Programas de layout de página Sistemas de reestruturação de programas Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 48
25 Reengineering tools Testing tools Debugging tools Program analysis tools Language-processing tools Method support tools Prototyping tools Configuration management tools Change management tools Documentation tools Editing tools Planning tools Specification Design Implementation Verification and Validation Classificação com Base em Atividades Outra Forma de Classificação CASE Ferramentas Apóiam as tarefas de processos individuais, como a verificação da consistência de um projeto, a compilação de um programa, entre outras Workbenches Apóiam as fases ou atividades de processo, como a especificação e o projeto Ambientes Oferecem apoio a todo ou, pelo menos, a uma parte substancial do processo de software. Normalmente, incluem vários workbenches diferentes, que são integrados de alguma maneira Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 50
26 Ferramentas, Workbenches, Ambientes CASE technology Tools Workbenches Environments Editors Compilers File comparators Integrated environments Process-centred environments Analysis and design Programming Testing Multi-method workbenches Single-method workbenches General-purpose workbenches Language-specific workbenches Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 51 Pontos-chave Os processo de software são atividades envolvidas na produção de um sistema de software. Os modelos de processo de software são representações abstratas desses processos Todos os processos de software incluem especificação de software, projeto e implementação, validação e evolução Os modelos de processo iterativos apresentam o processo de software com um ciclo de atividades A engenharia de requisitos é o processo de desenvolvimento de uma especificação de software Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 52
27 Pontos-chave Os processos de projeto e implementação se ocupam de transformação de uma especificação de requisitos em um sistema executável A validação de software é o processo de verificar se o sistema está em conformidade com sua especificação e se ele atende às reais necessidades dos usuários do sistema A evolução de software se ocupa de modificar os sistemas de software existentes, para que eles atendam a novos requisitos A tecnologia CASE proporciona apoio automatizado aos processos de software. As ferramentas CASE oferecem apoio às atividades de processo individuais; as workbenches CASE apóiam um conjunto de atividades relacionadas; os ambientes CASE são compatíveis com todas ou com a maioria das atividades de processo de software Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 53 Atividades Pesquisar e entregar relatório sobre ferramentas CASE Responder o questionário da página 58 do livro Engenharia de Software 6. Edição de Ian Sommerville Prof. Nelmar P Gomes 2007 Engenharia de Software Slide 54
Engenharia de Software
Engenharia de Software Capítulo 3 Processos de Software Slides do Livro do Sommerville, 2000 Disponíveis em inglês em www.software-engin.com Traduzidos por Jacinta Pereira Graduando do Curso de Letras
O que é um processo de software?
O que é um processo de software? Um conjunto de atividades realizadas por pessoas cujo objetivo é desenvolvimento ou evolução de software e sua documentação. Atividades genéricas em todos os processos:
Objetivos. Processos de Software. Tópicos abordados. O processo de software. Modelos genéricos de modelos de processo de software.
Processos de Software Objetivos Apresentar os modelos de processo de software Conjunto coerente de atividades para especificar, projetar, implementar e testar s de software Descrever os diferentes modelos
Capítulo 2. Processos de Software. 2011 Pearson Prentice Hall. Todos os direitos reservados. slide 1
Capítulo 2 Processos de Software slide 1 Tópicos apresentados Modelos de processo de software. Atividades de processo. Lidando com mudanças. Rational Unified Process (RUP). Um exemplo de um processo de
Processos de Software
Processos de Software Prof. Márcio Lopes Cornélio Slides originais elaborados por Ian Sommerville O autor permite o uso e a modificação dos slides para fins didáticos O processo de Um conjunto estruturado
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
SOFTWARE PROCESSES. Ian Sommerville, 8º edição Capítulo 4 Aula de Luiz Eduardo Guarino de Vasconcelos
SOFTWARE PROCESSES Ian Sommerville, 8º edição Capítulo 4 Aula de Luiz Eduardo Guarino de Vasconcelos Objetivos Introduzir modelos de processo de software Descrever uma variedade de modelos de processo
Introdução a Engenharia de Software. Alterações na aula do Prof. Reinaldo Bianchi Alterado por: Antonio Carlos Souza ADS - IFBA
Introdução a Engenharia de Software Alterações na aula do Prof. Reinaldo Bianchi Alterado por: Antonio Carlos Souza ADS - IFBA Bibliografia Engenharia de Software, Roger Pressman, Makron Books: o mais
Processos de Desenvolvimento de Software. Ricardo Argenton Ramos UNIVASF Engenharia de Software I Aula 3
Processos de Desenvolvimento de Software Ricardo Argenton Ramos UNIVASF Engenharia de Software I Aula 3 Modelos de Processo de Software O Modelo Sequencial Linear Aula passada também chamado Modelo Cascata
Especialização em Engenharia de Software e Banco de Dados
Especialização em Engenharia de Software e Banco de Dados Disciplina: Engenharia de Software Tópico: Modelos de Ciclo de Vida Prof. Rodolfo Miranda de Barros [email protected] Ciclo de Vida A Engenharia de
Engenharia de Software I CURSO DE INFORMÁTICA. 3O SEMESTRE PROF.: LUIS AUGUSTO MACHADO MORETTO. ESP.
Engenharia de Software I CURSO DE INFORMÁTICA. 3O SEMESTRE PROF.: LUIS AUGUSTO MACHADO MORETTO. ESP. Na aula passada... Atividade em grupo Intro Eng. Software Conhecimento, Problemas Video habilidades
natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues
Modelo De Desenvolvimento De Software É uma representação abstrata do processo de desenvolvimento que define como as etapas relativas ao desenvolvimento de software serão conduzidas e interrelacionadas
Modelos de Processo (métodos)
Modelos de Processo (métodos) Um modelo de processo ou método define um conjunto de atividades específicas. Principais modelos: Cascata (Waterfall) Espiral (Spiral) Evolutivo Incremental Processo Unificado
Metodologia de Desenvolvimento de Software. Prof. M.Sc. Sílvio Bacalá Jr
Metodologia de Desenvolvimento de Software Prof. M.Sc. Sílvio Bacalá Jr Objetivos Discutir aspectos de Engenharia de Software Aplicar um método de desenvolvimento para especificação e projeto de software
UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT
UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT Disciplina: Modelagem a Programação Orientada a Objetos
Processos de Desenvolvimento de Software. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 2
Processos de Desenvolvimento de Software Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 2 A Engenharia de Software Uma Tecnologia em Camadas ferramentas métodos processo foco na qualidade
UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO
UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO Santa Maria, 01 de Novembro de 2013. Revisão aula passada Projeto de Arquitetura Decisões de projeto de Arquitetura
Engenharia de Software
Engenharia de Software Slide 05 Modelos de Processos Maurício Archanjo Nunes Coelho [email protected] Instituto Federal Análise de Sistemas Por que surgiu a Engenharia de Software? Resposta
Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW
Ciclo de Vida Aula 2 Revisão 1 Processo de Desenvolvimento de Software 1 O Processo de desenvolvimento de software é um conjunto de atividades, parcialmente ordenadas, com a finalidade de obter um produto
Processo de Criação de Cronogramas Prazo
Nome do de Criação de Cronogramas Número do Prazo - Informações sobre o Documento Nome do Projeto: Centro de Custo: 05.10..02.XX Gerente do Projeto: Versão do Documento: 0.0 Método de Revisão de Qualidade:
Engenharia de Software
Engenharia de Software Conceitos e Metodologias para Desenvolvimento de Software Cascata, Prototipação, Espiral e RUP Prof. MSc. Edilberto Silva [email protected] http://www.edilms.eti.br
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.
Professor: Curso: Disciplina:
Professor: Curso: Disciplina: Aula 1 Turma: Esp. Marcos Morais de Sousa Sistemas de informação Engenharia de Software I Dinâmica da disciplina, plano de curso e avaliação 03º semestre Prof. Esp. Marcos
Princípios da Engenharia de Software Aula 02. Prof.: Franklin M. Correia
Princípios da Engenharia de Software Aula 02 Prof.: Franklin M. Correia Na aula anterior... Introdução a Engenharia de Software O que é software? O que é Engenharia de Software? Conceitos importantes Tipos
Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite [email protected] (81 )9801-6619
Tópicos em Engenharia de Software (Optativa III) AULA 2 Prof. Andrêza Leite [email protected] (81 )9801-6619 Engenharia de Software Objetivo da aula Depois desta aula você terá uma revisão sobre o
Visão Geral Parte 1. O que é engenharia de software?
Visão Geral Parte 1 Jair C Leite DIMAp/UFRN O que é engenharia de software? É uma disciplina da engenharia dedicada a todos os aspectos da produção de software. Engenheiros de software devem adotar uma
ENG1000 Introdução à Engenharia
ENG1000 Introdução à Engenharia Aula 01 Processo de Desenvolvimento de Software Edirlei Soares de Lima Processo de Software O processo de software consiste em um conjunto estruturado
O Processo de Engenharia de Requisitos
UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA O Processo de Engenharia de Requisitos Engenharia de Software 2o.
Gerenciamento da Integração (PMBoK 5ª ed.)
Gerenciamento da Integração (PMBoK 5ª ed.) O PMBoK diz que: O gerenciamento da integração do projeto inclui os processos e as atividades necessárias para identificar, definir, combinar, unificar e coordenar
Análise e Projeto de Software
Análise e Projeto de Software 1 Mundo Real Modelagem Elicitação Análise Problemas Soluções Gap Semântico Mundo Computacional Elicitação de Requisitos Análise de Requisitos Modelagem dos Requisitos 2 Projeto
Unidade I Conceitos BásicosB. Conceitos BásicosB
à Engenharia de Software Unidade I Conceitos BásicosB Pedro de Alcântara dos Santos Neto [email protected] 1961 a 1963 Surgimento de novos Hardwares 1963-1968 Crise do Software! Incapacidade de se utilizar
18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB
18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB Autor(es) HARLEI MIGUEL DE ARRUDA LEITE Orientador(es) PLÍNIO ROBERTO SOUZA VILELA Apoio Financeiro PIBIC/CNPQ
Ciclo 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
Gerenciamento de Requisitos
Gerenciamento de Requisitos Jaelson Castro 2013 1 Gerenciamento de requisitos Relaciona-se ao processo de gerenciar a mudança dos requisitos de um sistema As principais preocupações do gerenciamento de
Processo de Software - Revisão
Processo de Software - Revisão Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Pressman, R. S. Engenharia de Software, McGraw-Hill, 6ª. Edição,
Qualidade de Software
de Software Gerenciamento de de Software Dedica-se a assegurar que o nível requerido de qualidade seja atingido Em um produto de software Envolve a definição de padrões e procedimentos apropriados de qualidade
RUP Rational Unified Process
RUP Rational Unified Process Baseado em http://www.wthreex.com/rup/ e em outros materiais da IBM/Rational Visão Geral O RUP tem duas dimensões: o eixo horizontal representa o tempo e mostra os aspectos
MDMS-ANAC. Metodologia de Desenvolvimento e Manutenção de Sistemas da ANAC. Superintendência de Tecnologia da Informação - STI
MDMS- Metodologia de Desenvolvimento e Manutenção de Sistemas da Superintendência de Tecnologia da Informação - STI Metodologia de Desenvolvimento e Manutenção de Sistemas da Histórico de Alterações Versão
Introdução ao Processo Unificado (PU)
Universidade Federal de Mato Grosso do Sul Sistemas de Informação - CPCX Introdução ao Processo Unificado (PU) Prof. Fernando Maia da Mota Slides gentilmente cedidos por Profa. Dra. Maria Istela Cagnin
EVOLUÇÃO DE SOFTWARE
EVOLUÇÃO DE SOFTWARE Dinâmica da evolução de programas Manutenção de software Processo de evolução Evolução de sistemas legados 1 Mudança de Software 2 Manutenção de software Mudança de software é inevitável
Introdução ao RUP Rational Unified Process. por Denize Terra Pimenta Outubro/2004
Introdução ao RUP Rational Unified Process por Denize Terra Pimenta Outubro/2004 1 Contexto Não é suficiente apenas a presença de desenvolvedores altamente treinados: Precisamos de uma linguagem para a
Engenharia de Software I 2012.2 Modelos de Processo de Software
Engenharia de Software I 2012.2 Modelos de Processo de Software Ricardo Argenton Ramos [email protected] A Engenharia de Software Uma Tecnologia em Camadas Gerenciamento da Qualidade Total e filosofias
REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br [email protected]
REVISÃO ENGENHARIA DO SOFTWARE Isac Aguiar isacaguiar.com.br [email protected] Software Sequencia de Instruções a serem seguidas ou executadas Dados e rotinas desenvolvidos por computadores Programas
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.
Processo Unificado (RUP)
Fases do Desenvolvimento Processo Unificado (RUP) Ulf Bergmann [email protected] Domínio do Problema Objetos Objetos do do Mundo Mundo real real Modelo Semântico Domínio da Solução Aplicação Interface Serviços
Requisitos para Gestão de Requisitos no Desenvolvimento de Software que Utilizam Prática Ágeis
Requisitos para Gestão de Requisitos no Desenvolvimento de Software que Utilizam Prática Ágeis Abstract. Resumo. 1. Introdução Vinicius A. C. de Abreu 1 Departamento de Ciência da Computação - DCC Universidade
Desenvolvimento de Sistemas Tolerantes a Falhas
Confiança de software Desenvolvimento de Sistemas Tolerantes a Falhas Em geral, os usuários de um sistema de software esperam ele seja confiável Para aplicações não-críticas, podem estar dispostos a aceitar
Professor: Curso: Disciplina: Aula 4-5-6
Professor: Curso: Disciplina: Aula 4-5-6 Turma: Esp. Marcos Morais de Sousa Sistemas de informação Engenharia de Software I Engenharia de Requisitos 03º semestre 1 Engenharia de Requisitos Prof. Marcos
Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS 5312 1
Engenharia de Software Parte I Introdução Metodologias para o Desenvolvimento de Sistemas DAS 5312 1 Mitos do Desenvolvimento de Software A declaração de objetivos é suficiente para se construir um software.
Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc [email protected]
Engenharia de Software: conceitos e aplicações Prof. Tiago Eugenio de Melo, MSc [email protected] 1 Objetivos da aula Apresentar os conceitos de Engenharia de Software e explicar a sua importância.
Análise de Sistemas. Contextualização. O Sucesso. Aula 4. Instrumentalização. Aula 4. Prof. Emerson Klisiewicz. Clientes satisfeitos
Análise de Sistemas Aula 4 Contextualização Prof. Emerson Klisiewicz Aula 4 Gerenciamento de Requisitos Refinamento de Requisitos Aprovação de Requisitos Matriz de Rastreabilidade O Sucesso Clientes satisfeitos
Aula 5. Escopo do Projeto
Aula 5 Escopo do Projeto Escopo: Objetivos A preocupação fundamental compreende definir e controlar o que está ou não está incluído no projeto. Escopo no Contexto do Projeto O termo escopo deve se referir
O Processo Unificado
UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA O Processo Unificado 879SCC Projeto e Desenvolvimento de Sistemas
DESENVOLVENDO O SISTEMA
DESENVOLVENDO O SISTEMA Declaração da Necessidade O primeiro passo do processo de análise de sistema envolve a identificação da necessidade [Pressman-95]. Normalmente o analista reúne-se com o usuário
Roteiro SENAC. Análise de Riscos. Planejamento do Gerenciamento de Riscos. Planejamento do Gerenciamento de Riscos
SENAC Pós-Graduação em Segurança da Informação: Análise de Riscos Parte 2 Leandro Loss, Dr. Eng. [email protected] http://www.gsigma.ufsc.br/~loss Roteiro Introdução Conceitos básicos Riscos Tipos de
Engenharia de Software. Tema 1. Introdução à Engenharia de Software Profa. Susana M. Iglesias
Engenharia de Software Tema 1. Introdução à Engenharia de Software Profa. Susana M. Iglesias Sistemas Computacionais Automatiza ou apóia a realização de atividades humanas (processamento da informação)
4.1. UML Diagramas de casos de uso
Engenharia de Software 4.1. UML Diagramas de casos de uso Nuno Miguel Gil Fonseca [email protected] Utilizados para ajudar na análise de requisitos Através da forma como o utilizador usa o sistema
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
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.
Processo de design de software
Design de Software Processo de converter a especificação num conjunto de modelos que descrevem a estrutura e o comportamento do software, particionado em unidades abstratas. Descreve como o software será
Gerenciamento de Projetos Modulo VIII Riscos
Gerenciamento de Projetos Modulo VIII Riscos Prof. Walter Cunha [email protected] http://waltercunha.com Bibliografia* Project Management Institute. Conjunto de Conhecimentos em Gerenciamento
Introdução à. Engenharia de Software. Givanaldo Rocha de Souza [email protected] http://docente.ifrn.edu.
"Antes de imprimir pense em sua responsabilidade e compromisso com o MEIO AMBIENTE." Engenharia de Software Introdução à Engenharia de Software Givanaldo Rocha de Souza [email protected] http://docente.ifrn.edu.br/givanaldorocha
Gerenciamento de Projetos Modulo III Grupo de Processos
Gerenciamento de Projetos Modulo III Grupo de Processos Prof. Walter Cunha [email protected] http://waltercunha.com Bibliografia* Project Management Institute. Conjunto de Conhecimentos em Gerenciamento
Paradigmas de Engenharia de Software
Paradigmas de Engenharia de Software O que é Engenharia de Software? O que é Engenharia de Software? É a estratégia usada no desenvolvimento do software que define: Métodos; Ferramentas; Procedimentos
Gerenciamento de Requisitos Gerenciamento de Requisitos
Gerenciamento de Requisitos Objetivos da disciplina Descrever o processo de Gerenciamento e Engenharia de Requisitos para projetos Treinar alunos no Gerenciamento de Requisitos Apresentar estudos de caso
Engenharia de Software II
Engenharia de Software II Aula 14 Revisão http://www.ic.uff.br/~bianca/engsoft2/ Aula 14-07/05/2006 1 Processo de Software Qual é a diferença entre uma atividade de arcabouço e uma atividade guarda chuva?
Planejamento - 7. Planejamento do Gerenciamento do Risco Identificação dos riscos. Mauricio Lyra, PMP
Planejamento - 7 Planejamento do Gerenciamento do Risco Identificação dos riscos 1 O que é risco? Evento que representa uma ameaça ou uma oportunidade em potencial Plano de gerenciamento do risco Especifica
Tópicos Especiais em Engenharia de Software
Tópicos Especiais em Engenharia de Software [email protected] Ian Sommerville 2000 - Software Engineering, 6th edition Slide 1 Tópicos Especiais em Engenharia de Software Gerenciamento de Projeto de Software
Com metodologias de desenvolvimento
Sociedade demanda grande quantidade de sistemas/aplicações software complexo, sistemas distribuídos, heterogêneos requisitos mutantes (todo ano, todo mês, todo dia) Mas, infelizmente, não há gente suficiente
Transformação de um Modelo de Empresa em Requisitos de Software
Transformação de um Modelo de Empresa em Requisitos de Software Fábio Levy Siqueira 1 and Paulo Sérgio Muniz Silva 2 1 Programa de Educação Continuada da Poli-USP, São Paulo, Brazil 2 Escola Politécnica
Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior
Prof. Antonio Almeida de Barros Jr. Introdução Dados Informações Banco de Dados Conceitos Básicos em Bancos de Dados Definição BD - Banco de Dados SGBD - Sistema de Gerenciamento de BD Programa de Aplicação
Programação Extrema. Luis Fernando Machado. Engenharia de Software
Programação Extrema Luis Fernando Machado Engenharia de Software Desenvolvimento Ágil Programação Extrema, ou Extreme Programming (XP) é um modelo de desenvolvimento ágil. Desenvolvimento ágil foi criado
TÉCNICAS DE PROGRAMAÇÃO
TÉCNICAS DE PROGRAMAÇÃO (Adaptado do texto do prof. Adair Santa Catarina) ALGORITMOS COM QUALIDADE MÁXIMAS DE PROGRAMAÇÃO 1) Algoritmos devem ser feitos para serem lidos por seres humanos: Tenha em mente
3 Qualidade de Software
3 Qualidade de Software Este capítulo tem como objetivo esclarecer conceitos relacionados à qualidade de software; conceitos estes muito importantes para o entendimento do presente trabalho, cujo objetivo
Prototipação de Software
UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Prototipação de Software Engenharia de Software 2o. Semestre de 2005
Análise e Conc epç ão de Sist em as de Inform aç ão 3URFHVVRV(QJ GH5HTXLVLWRV. Adaptado a partir de Gerald Kotonya and Ian Sommerville
Análise e Conc epç ão de Sist em as de Inform aç ão 3URFHVVRV(QJ GH5HTXLVLWRV Adaptado a partir de Gerald Kotonya and Ian Sommerville 1 Objectivos Introduzir a noção de processos e de modelos de processos
Tópicos da Aula. Que é são requisitos? Tipos de Requisitos. Requisitos Funcionais. Classificação de Requisitos. Requisitos de Software.
Engenharia de Software Aula 06 Tópicos da Aula Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo [email protected] 26 Março 2012 Funcionais e não funcionais De usuário e do Engenharia de Estudo
Organização de Computadores 1. Prof. Luiz Gustavo A. Martins
Organização de Computadores 1 1 - INTRODUÇÃO Prof. Luiz Gustavo A. Martins Arquitetura Define os elementos que impactuam diretamente na execução lógica do programa. Corresponde aos atributos visíveis veis
2 Engenharia de Software
20 2 Engenharia de Software 2.1 Design de Sistemas Orientados a Objetos Os Sistemas Orientados a Objetos não são mais novidade hoje em dia já estando há muitos anos no mercado. A orientação a objetos permite
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
Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: [email protected] /
Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: [email protected] / [email protected] MATÉRIA: GESTÃO DE PROJETOS Aula N : 10 Tema: Gerenciamento
ADMINISTRAÇÃO GERAL GESTÃO DE PROCESSOS
ADMINISTRAÇÃO GERAL GESTÃO DE PROCESSOS Atualizado em 21/12/2015 GESTÃO DE PROCESSOS Um processo é um conjunto ou sequência de atividades interligadas, com começo, meio e fim. Por meio de processos, a
Capítulo 10. Especificações Formais
Capítulo 10 Especificações Formais Baseado nos slides Traduzidos por Jacinta Pereira em 2007.1 do livro do Sommerville de 2000 Revisado e modificado por Rossana Andrade em 2009.1 Ian Sommerville 2000 Software
Requisitos do usuário, do sistema e do software [Sommerville, 2004]
Requisitos Objetivos ou restrições estabelecidas por clientes e usuários do sistema que definem as diversas propriedades do sistema Condição ou capacidade necessária que o software deve possuir para que
Especialização em Engenharia de Software e Banco de Dados
Especialização em Engenharia de Software e Banco de Dados Disciplina: Engenharia de Software Tópico: Introdução Prof. Rodolfo Miranda de Barros [email protected] Grandes verdades sobre o desenvolvimento e
Engenharia de Software
Conceitos básicos sobre E.S: Ambiência Caracterização do software Fases de desenvolvimento 1 Introdução Aspectos Introdutórios Crise do Software Definição de Engenharia do Software 2 Crise do Software
Engenharia de Software
Universidade São Judas Tadeu Profª Dra. Ana Paula Gonçalves Serra Engenharia de O Processo Uma Visão Genérica Capítulo 2 (até item 2.2. inclusive) Engenharia de - Roger Pressman 6ª edição McGrawHill Capítulo
Questionário de Avaliação de Maturidade Setorial: Modelo de Maturidade Prado-MMGP
DARCI PRADO Questionário de Avaliação de Maturidade Setorial: Modelo de Maturidade Prado-MMGP Versão 2.2.0 Julho 2014 Extraído do Livro "Maturidade em Gerenciamento de Projetos" 3ª Edição (a publicar)
Qualidade de Software. Qualidade de Software. Adequado à Especificação. Alguns Atributos de Qualidade. Equipe de Qualidade
DCC / ICEx / UFMG Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo A qualidade de software tem se aprimorado nos últimos 15 anos Empresas têm adotado novas técnicas Orientação a objetos se difundiu
White-box test: Também conhecido como teste estrutural, tem por objetivo validar os dados derivados das funções do sistema.
22. Planejamento, Especificação e Execução dos Testes A implantação de um sistema de boa qualidade, dentro de um prazo específico, pode ser seriamente prejudicada caso uma etapa extremamente importante
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
Projeto de Arquitetura
Projeto de Arquitetura Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 11 Slide 1 Objetivos Apresentar projeto de arquitetura e discutir sua importância Explicar as decisões de projeto
Engenharia de Software I. Curso de Sistemas de Informação. Karla Donato Fook [email protected] DESU / DAI. Ferramentas
Engenharia de Software I Curso de Sistemas de Informação Karla Donato Fook [email protected] DESU / DAI 2015 Ferramentas 1 Computer-Aided Software Engineering CASE Engenharia de Software Auxiliada por
Resumo de alterações da versão 2.0 para a 3.0 do PA-DSS
Indústria de cartões de pagamento (PCI) Padrão de segurança de dados de formulário de pagamento Resumo de alterações da versão 2.0 para a 3.0 do PA-DSS Novembro de 2013 Introdução Este documento fornece
