Mapa mental
Engenharia de Software

Conteúdo do mapa
Engenharia de Software
- está relacionada com todos os aspectos da produção de software, desde os estágios iniciais de especificação do sistema até sua manutenção, depois que este entrar em operação
Processo
- Uma série conectada de ações, com a intenção de satisfazer um objetivo. Define quem está fazendo o quê, quando e como para atingir um certo objetivo
- ETAPAS: EPVE
- Especificação
- Projeto
- Validação
- Evolução
- Modelo de Ciclo de Vida
- Contem
- “Esqueleto do processo
- ◦ Ordem de precedência das atividades
- ◦ Principais artefatos e produtos gerados
- Principais Modelos CPMEI
- Cascata ou Clássico
- Sua estrutura é composta por etapas sequenciais
- Vantagens
- Minimiza o planejamento
- organiza as atividades em uma sequência
- Funciona bem para requisitos estáveis e bem compreendidos
- pressupõe que os requisitos ficarão estáveis ao longo do projeto
- aplicável em equipes inexperientes
- Desvantagens
- é um modelo simplista e não realista
- Após levantar os requisitos só terá contato com o cliente na hora da entrega
- só existe uma versão do produto, terminou os requisitos vai para Produção
- Vantagens
- é composta por várias etapas que são executadas de forma sistemática e seqüencial
- foi a primeira tentativa de formalizar uma metodologia de desenvolvimento de software
- Na prática ele pode se adequar as suas necessidades e voltar para um metodo anterior
- foi a primeira tentativa de formalizar uma metodologia de desenvolvimento de software
- Não é muito bom para mudança
- Prototipagem
- Evolucinonária
- Entregar o resultado o mais rápido possivel
- Deve começar com os requisitos mais bem compreendidos
- Trabalhar junto com aos clientes para EVOLUIR o sistema
- A cada versão o novas funcionalidade são adicionadas a medida que o cliente propõem
- Aplicável em sistemas pequenos
- PROBLEMA
- Falta de visibilidade do progresso, pois o sistema está sempre evoluindo e nunca termina
- Problema com estrutura
- Os padrões de qualidade podem ser relaxados
- Descartável
- Assim como a evolucionária Pequenas versões prototípicas são disponibilizadas ao cliente
- O objetivo é : entender e classificar os requisitos mais complicados
- É útil para sistemas Granades
- QUando o cliente não sabe exatamente o que quer
- Muitas vezes é implementado junto a outro modelo de processo como :
- Cascata / Espiral / Iterativo / Incremental
- Evolucinonária
- Métodos Formais
- Baseado em técnicas MATEMATICAS para desenvolver e verificar o sistema
- Muito utilizado para sistemas CRITICOS
- Sistemas de Aviões, Aeroportos etc
- Para evitar o máximo possivel de bugs
- Sistemas de Aviões, Aeroportos etc
- O próprio processo de desenvolvimento garante que o programa faz exatamente o que foi especificado
- Modelo Iterativos
- Desenvolvimento Incremental
- Cria partes de um projeto FUNCIONAL e entrega ao cliente, em seguida cria outra parte, no final junta todas as partes e termina o software
- Requisitos são definidos antes de cada incremento, dessa forma ficando mais crítico e priorizados
- É um mini Projeto em cascata
- É executado em cada iteração, progredindo até a entrega final
- VANTAGENS:
- O cliente recebe e avalia as entregas do produto mais cedo
- Os riscos do projeto fracassar DIMINUI
- Desenvolvimento Espiral
- Cada volta na espiral representa uma fase no processo de desenvolvimento
- Não há fases fixas.
- Os loops na espiral são escolhidos dependendo do que for necessário
- A grande diferença
- Aspectos Gerenciais ao desenvolvimento
- Análise de RISCO especificada no modelo
- É possível criar protótipos para se verificar a análise de risco
- DESVANTAGEM
- Complexo e requer experiência na avaliação de riscos
- Surgiu para se lidar com os possíveis mudanças durante o desenvolvimento
- Resolve os problemas por iteração, passadas
- Não tem necessidade do intendimento de todos os requisitos, como será dividido faz uma análise daqueles primeiros requisitos do ciclo, ao terminar pega os outros requisitos e vai analisando aos poucos
- Quem faz a análise de todos os requistos de uma vez é o modelo em CASCATA
- Não tem necessidade do intendimento de todos os requisitos, como será dividido faz uma análise daqueles primeiros requisitos do ciclo, ao terminar pega os outros requisitos e vai analisando aos poucos
- Resolve os problemas por iteração, passadas
- Dividir para conquistar
- Por exemplo pegar os 50 requisitos de um projeto e dividi-los em 10 interações cada.
- Desenvolvimento Incremental
- Cascata ou Clássico
- representação abstrata e simplificada do processo de desenvolvimento software apresentada a partir de uma perspectiva específica”
- Fases do Ciclo de vida do Software
- Planejamento 1º
- Esboçar Escopo e Requisitos
- Fazer estimativas
- Recursos / Custos / Prazos
- Análise e Especificação de Requisitos 2º
- Refinar requisitos e escopo
- Entender o dominio do problema, com comportamento e funcionalidades esperadas
- Não está preocupado com a tecnologia
- Projeto 3º
- Definir as tecnologias
- Projetar a arquitetura do sistema
- Implementação 4º
- Traduzir o projeto em forma passível de execução
- Desenvolvimento
- Teste 5º
- Qualidade do sistema
- Fazer a verificação do sofware
- Não pode garantir que o sistema NÂO TEM ERROS
- Implantação / Manutenção 6º
- Treinar pessoas
- Colocar em produção
- Manter e gerenciar o sistema
- ITIL
- PAPITI
- Planejamento 1º
- Contem
Métodos
- Conhecimento técnico; “Como” fazer
Ferramentas
- Suporte automatizado para processos e métodos
OBJETIVO
- Qualidade
- Produtividade
- Custo e prazo
Engenharia de sistema
- aspectos do desenvolvimento e da evolução de sistemas complexos(Hardware etc), nos quais o software desempenha um papel importante.
- Hardware / Software / Processos
ferramentas CASE
- Software que auxilia na engenharia de software
- O que são?
- São ferramentas que auxiliam o engenheiro de SW em cada atividade associada ao desenvolvimento de SW
- Quem usa?
- Gerentes de projeto e engenheiros de SW
- Por que são importantes?
- Reduzem o esforço necessário para produzir artefatos e alcançar metas
- Aumentam a qualidade do software
- Quais são os passos?
- são usadas em conjunto com o modelo de processo adotado.
- Como são usadas?
- Como complemento às boas práticas de Engenharia de Software
- não substituem uma metodologia de desenvolvimento de software sólida
- Categorização
- Horizontais
- São utilizados durante todo o processo de desenvolvimento de software
- Verticais
- São específicas para uma disciplina de software
- EX: Junit Especifica para teste
- Por Funções
- Processos de negócio
- Planejamento de projeto
- Análise de Riscos
- IDEs
- Análise Estática
- Front-end ou Upper CASE
- apóiam as etapas iniciais da criação dos sistemas:
- as fases de planejamento, análise e projeto da aplicação
- apóiam as etapas iniciais da criação dos sistemas:
- Back-end ou Lower CASE
- dão apoio à parte física, i.e, código, testes e manutenção
- I-CASE ou Integrated CASE
- cobrem todo o ciclo de vida, do início ao fim
- Horizontais
Imagens e arquivos do mapa
Informações
- Descrição
- Engenharia de software Mapa Mental sobre Engenharia de Software, criado por lorranz sousa em 27-04-2017.
- Criado por
- lorranz sousa
- Visualizações
- 3
- Avaliação


