



Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Os melhores documentos à venda: Trabalhos de alunos formados
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Comunidade
Peça ajuda à comunidade e tire suas dúvidas relacionadas ao estudo
Descubra as melhores universidades em seu país de acordo com os usuários da Docsity
Guias grátis
Baixe gratuitamente nossos guias de estudo, métodos para diminuir a ansiedade, dicas de TCC preparadas pelos professores da Docsity
Engenharia de Software
Tipologia: Notas de estudo
1 / 6
Esta página não é visível na pré-visualização
Não perca as partes importantes!
Software: “Conjunto de programas, procedimentos, regras e documentação associados a um sistema computadorizado”
04 Características de um Software: Manutenabilidade, Confiabilidade, Eficiência, Usabilidade. 04 Elementos de Engenharia de Software: Processo, Ferramenta, Método, Qualidade
Mitos: 1 Ferramentas potentes x máquinas velozes = Software moderno e pronto 2 Prazo curto x Software inacabado = Contratar mais programadores 3 Todos programadores são iguais 4 O programa/sistema está 95% pronto!
Verdade: 1 A equipe está treinada para usar as ferramentas? A equipe é competente? 2 Prazo curto: é melhor negociar o prazo do que contratar novos programadores, devido ao problema de ambientação que os novos terão para se adaptar. 3 Programadores tem habilidades diferentes 4 Programadores são otimistas/confiança excessiva
Crise do Software
Problemas na manutenção do software Prazos e custos mal calculados Baixa qualidade dos produtos Pouca (ou nenhuma) documentação Baixa adequação às necessidades do cliente
Definição de Engenharia de Software
“Uso de métodos, ferramentas e técnicas para criar, gerenciar e evoluir produtos de software”
Não é possível programar sem se “programar”
DISCIPLINAS BÁSICAS
REQUISITOS F 06 E Levantar necessidades e enxergar oportunidades de melhorias F 06 E Software tem que agregar valor, pois nem sempre vale a pena desenvolver software F 06 E Quanto se vai ganhar ou economizar com o software e quanto vai custar? F 06 E Que riscos de negócio um software minimiza?
Divisão do software em “pedaços lógicos” (módulos, subsistemas e componentes) F 06 E Critério de divisão: por processos e regras de negócio inter-relacionadas F 06 E Projeto de interface com usuário F 06 E Telas, padrões, componentes visuais F 06 E Projeto de integração com outros sistemas F 06 E Formas de integração, tecnologias, etc.
Mapeamento dos riscos tecnológicos e de negócios F 06 E Classificação F 06 E Como resolvê-los F 06 E Avaliação e aplicação de tecnologias F 06 E Possibilidades de reuso
F 06 E Programação do código fonte F 06 E Testes feitos pelo programador F 06 E Padrões de programação
Um software evolui com as necessidades de negócio e tecnológicas. F 06 E Software então pode sofrer alterações e ter novas versões por conta de evoluções e de alterações demandadas pela própria evolução e alteração das necessidades dos clientes
DISCIPLINAS DE SUPORTE
GERÊNCIA DE PROJETOS Gestão de pessoas, cronograma, custos, qualidade
AMBIENTE Infra-estrutura, Ferramentas, Máquinas, Rede e Internet
GERÊNCIA DE CONFIGURAÇÃO E MUDANÇAS Requisitos, Versões do software (releases e patches), custos e prazos
Ferramentas Case são todas as ferramentas que dão suporte a Engenharia de Software (Para construção do código, testes unitários, controle de versão do código fonte, ex: Eclipse, IDE’s e Visual Studio voltado para c#, visual basic, c++.
IDE’s de desenvolvimento são softwares capaz de prover um ambiente para escrita do código, tem um sofisticado editor de texto, compilador e executor integrado e também faz checagem de padrões de codificação.
Exemplos sobre TESTES
Teste de sanidade: Não quer encontrar defeito, visa verificar o funcionamento básico Teste de sistema: Verifica se o Software apresenta defeitos críticos ou graves Teste de regressão: verifica se após a correção, o Software apresenta defeitos novos
Teste de aceitação (Homologação): É a validação do Software pelo o usuário final Teste funcional (Regras de negócio): É feito um teste baseado na regra de negócios
OS QUATRO MODELOS DE DESENVOLVIMENTO DA ENG. DE SOFTWARE:
CASCATA EVOLUCIONÁRIO REUSO FORMAL
ITERAÇÃO DE PROCESSOS Híbridos: Combinam dois modelos de processo Incremental: Modelo intermediário Ex: Cascata <-> Evolucionário Espiral: Gerenciamento de risco Explícito METAPROCESSOS
RUP : Projetos grandes e complexos que exigem documentação elaborada ou por força da lei Em Rup não se fala em Engenharia de Software e sim de WorkFlows (Fluxo de Trabalho)
Fases do RUP: Concepção, Elaboração, Construção e Transição
XP + Scrum: Projetos pequenos e médios, sem muita documentação Processo ágil
Fases do XP: Exploração, Planejamento, Iterações para Release, Validação para Produção, Manutenção e Morte.
Guidelines são regras, recomendações, heurísticas que suportam atividades e passos.