Metodologia de Desenvolvimento de Software

Slides:



Advertisements
Apresentações semelhantes
Projeto Qualified Curriculum
Advertisements

Análise e Projeto Orientado a Objetos
Engenharia de Software
Amintas engenharia.
Engenharia de Software
UML no CICLO de DESENVOLVIMENTO
Rational Unified Process
Engenharia de Software
O Processo Praxis 3.0 Processos de Software 25/03/2017
Engenharia de Software
> Fases de Engenharia de SW > Gestão de Projectos de SW
Producto x Processo x Projecto
Engenharia de Software
Rational Unified Process(RUP)
Engenharia de Software
Valéria Maria Lauande Março/2010
Engenharia de Software Professor Sandro de Paiva Carvalho.
INTRODUÇÃO A INFORMÁTICA
FACULDADE DOS GUARARAPES
Projeto de Sistemas de Software
RUP Rational Unified Process (Processo Unificado de Desenvolvimento da Rational) 1.
Professora: Aline Vasconcelos
Técnicas de Apoio ao Processo de Engenharia de Requisitos
Processo Desenvolvimento de Software Tradicional
Análise e Projeto de Sistemas
Como Desenvolver Sistemas de Informação
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
Engenharia de Software
Classes e objetos Modelagem
Engenharia de Software Respostas do Questionário 01
Processo de Software Prof. Dr. rer. nat. Daniel D. Abdala
RUP - Cap. 2 – Os 4 P’s (Pessoas, Projeto, Produto e Processo)
Aula 1 Minicurso: Astah Ministrantes: André Martins; Camila Brondani;
Técnicas e Projeto de Sistemas
Visão Geral PRO.NET.
Visão Geral do RUP.
Fundamentos de Engenharia de SW
Projeto de Sistemas de Software
Análise de Sistemas de Software Prof. Rodrigo Ribeiro.
Processos de Desenvolvimento de Software – Parte 2
Análise e Projeto de Sistemas
LABORATÓRIOS DE INFORMÁTICA IV ENGENHARIA DE SOFTWARE: DA TEORIA À PRÁTICA GRUPO 13.
GESTÃO DE PROJETOS Aula 5 1.
Prof. Alexandre Vasconcelos
Engenharia de Software
Modelos de Processo de Software
Técnicas e Projeto de Sistemas
Especificação em Projeto de Sistemas
Análise e Projeto Orientados a Objetos
Bruno Silva Desenvolvido a partir de
O Processo Unificado (UP)
Introdução ao Processo Unificado de Desenvolvimento de Software Tiago Lima Massoni UFPE
Processos de Software.
Processos de Software.
Técnicas e Projeto de Sistemas
© Nabor C. Mendonça Análise e Design Orientados a Objeto com a metodologia (R)UP + UML.
Gestão de projetos de Software GTI-16
UML e a Ferramenta Astah
Engenharia de Software
Engenharia de Software
© Nabor C. Mendonça Processo / Metodologia de Desenvolvimento de Software.
Engenharia de Software
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
IF 718 Análise e Projeto de Sistemas Augusto Sampaio Vitor Braga (Estágio docência) Camila Sá (Monitora) Parte do material cedido pela Qualiti Software.
Apresentação Leonardo Brussolo de Paula
Desenvolvimento de Software I
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
/ de Abril de UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado.
1 Especificação de Sistemas de Software e a UML. 2 Modelagem de sistema A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema.
O Processo Unificado (PU). 2 O que é o Processo Unificado (PU)? É um modelo de processo de software baseado no modelo incremental, visando a construção.
Transcrição da apresentação:

Metodologia de Desenvolvimento de Software Contexto de Análise e Projeto Orientados a Objeto © Nabor C. Mendonça 2001

Importância de Software Dependência generalizada da vida moderna em sistemas de computação O software é parte cada vez maior dos custos e do sucesso desses sistemas Produzir software é um atividade inerentemente complexa: independe de leis físicas, restrições de materiais e processos de manufatura Requer métodos disciplinados de desenvolvimento

O que é Software? Programas Dados de configuração Documentação Arquivos de código Dados de configuração Arquivos de instalação e reconstrução Documentação Manuais do usuário Manuais do sistema Web sites Produto da Engenharia de Software

O que é Engenharia de Software? Uma disciplina de engenharia voltada para todos os aspectos da produção de software de qualidade Processos, modelos e metodologias de desenvolvimento Gerência de projeto Investigação de novos métodos, ferramentas e teorias

O que é Engenharia de Software? (2) Envolve a escolha seletiva de metodologias e ferramentas adequadas ao contexto (restrições) de um sistema Abrange desde a especificação inicial do sistema até sua operação e manutenção

Atributos de Qualidade de um Software Dependem do domínio da aplicação Relacionados com o comportamento (execução) do sistema e a organização de seus documentos e código fonte Atributos essenciais Manutenibilidade Confiabilidade Eficiência Usabilidade

Processo de Desenvolvimento de Software Um processo de desenvolvimento de software é um conjunto estruturado de atividades necessárias para produzir um produto de software Critérios de avaliação de um processo Em que medida garante os atributos essenciais de um produto de software? As atividades de um processo são distribuídas em fases

Atividade Tipos de atividade Análise Projeto Implementação Testes Manutenção/Evolução As atividades são organizadas segundo diferentes Modelos de Desenvolvimento

Modelo de Desenvolvimento Representação abstrata das atividades de um processo de software e suas interdependências Modelos genéricos Cascata (ou Clássico) Iterativo (ou Evolucionário)

Fase Fase Unidade de decomposição de um processo Engloba uma ou mais atividades Ortogonal ao modelo de desenvolvimento

Atividades e Fases Atividades e Fases Fases nunca são entrelaçadas  seqüência Atividades podem ser entrelaçadas, dependendo do modelo de desenvolvimento  interação

O Modelo Cascata Análise Projeto Implementação Testes Manutenção

Características do Modelo Cascata Abordagem sistemática e seqüencial Como todo processo, é organizado em fases distintas e separadas Relacionamento 1:1 entre Atividade e Fase Baseado nos processo convencionais de engenharia Requer especificação completa e bem entendida Dificulta a introdução de mudanças após o início do processo

Atividades Interativas O Modelo Iterativo Atividades Interativas Iterações ou Incrementos Versão Inicial Especificação Descrição Inicial Versões Intermediárias Desenvolvimento Versão Final Validação

Características do Modelo Iterativo Iteração Um ciclo de desenvolvimento, dentro de um intervalo de tempo. Ex: 2 a 4 semanas Atividades entrelaçadas Cada fase é composta de uma seqüência de iterações Especificação evolui junto com o sistema Suporta requisitos parcialmente definidos

Características do Modelo Iterativo (2) Cada iteração produz uma “release” do software  milestone A última “release” de uma fase deve marcar um “tournant” no desenvolvimento do software  major milestone Que “tournant” é esse? Depende do processo de desenvolvimento escolhido. Veremos, em detalhes, o processo padrão (R)UP

Distribuição das Atividades de Desenvolvimento nos Modelos Cascata e Iterativo Modelo Cascata Modelo Iterativo Análise Implementação Validação Design

Exemplos de Processos de Desenvolvimento APE: Análise e Projeto Estruturados DeMarco, Page-Jones, Gane-Sarson APOD: Análise e Projeto Orientados a Dados Jackson, Warnier-Orr APOO: Análise e Projeto Orientados a Objeto Modelo Iterativo Booch, OMT, OOSE (R)UP: (Rational) Unified Process

Metodologia de Desenvolvimento Metodologia = Processo + Linguagem A linguagem define formalmente os artefatos produzidos ao longo do processo UML: Unified Modeling Language UML é uma linguagem orientada a objeto e unificada Cobre as atividades de análise e design Unificação é uma grande vantagem Evita problemas de “impedance mismatch” Metodologia de Desenvolvimento Adotada na Disciplina (R)UP + UML