pontifícia universidade católica de campinas engenharia de computação 1
TRANSCRIPT
Pontifícia Universidade Católica de Campinas
Engenharia de Computação
1
Etapas de desenvolvimento de software e hardware
Gabriel NevesGuilherme BabugiaHyago HiraiLucas BoninSamuel Biazotto
2
Introdução
• Mostrar os modelos e etapas mais conhecidas de desenvolvimento de software e hardware.
• Para Software seguir essas etapas é considerado um dos principais mecanismos para se obter um software de qualidade e que consiga cumprir os requisitos iniciais.
• Para hardware abordaremos um conceito geral que auxilia no seu desenvolvimento, desde o levantamento de requisitos até a produção. Criando assim um hardware mais eficiente, em pouco tempo e recurso.
3
TópicosDesenvolvimento de Software
- Modelo Cascata- Quando utilizar- Etapas de desenvolvimento
- Modelo Espiral- Definição- Estágios de desenvolvimento
- Modelo Scrum- Definição- Papéis- Fluxo
Desenvolvimento de Hardware- Etapas desenvolvimento de hardware- Etapas desenvolvimento de hardware instituto eldorado
4
Modelo Cascata
Utilizado quando os requisitos são bem definidos.
Exemplo: Quando temos um sistema já pronto e precisamos fazer algumas adaptações
Este modelo sugere uma abordagem sequencial para o desenvolvimento de software
5
Etapas de Desenvolvimento• Requerimento: Levantamento dos Requisitos
• Projeto: Estimativas e Cronogramas
• Implementação: Codificação
• Verificação: Testes
• Manutenção: Melhorias e Reparos
6
7
Modelo Espiral
“O objetivo do modelo espiral é prover um metamodelo que pode acomodar diversos processos específicos. Isto significa que podemos encaixar nele as principais características dos modelos vistos anteriormente, adaptando-os a necessidades específicas de desenvolvedores ou às particularidades do software a ser desenvolvido.” (LEITE, 2007)
O modelo espiral é usado com mais frequência em grandes projetos.
8
Etapas de Desenvolvimento
Etapa 1 – Determinar objetivos, soluções alternativas e restrições.
Etapa 2 – Analisar os riscos das decisões do estágio anterior e construir protótipos ou simulações do software que são prévias do produto final.
Etapa 3 – Fase de desenvolvimento, especificação, codificação e verificação.
Etapa 4 – Revisão das etapas anteriores e planejamento da próxima fase.
9
10
Scrum
O Scrum trabalha com ciclos curtos de desenvolvimento e entrega de software
O Scrum se apoia em três pilares fundamentais: Transparência, Inspeção e Adaptação
Transparência: Todos os responsáveis pelo resultado devem ter a visão de tudo o que está acontecendo.
Inspeção: Os artefatos e o progresso em direção ao objetivo devem ser inspecionados frequentemente por todos os usuários do Scrum, de maneira a detectar desvios indesejáveis.
Adaptação: As coisas mudam. O Scrum aceita essa verdade e prega a adaptação a mudanças no lugar de tentar evitá-las.
11
Papéis
Scrum Master • Resolver impedimentos • Garantir uso do Scrum• Proteger o time de interferências externas
Product Owner (PO)
• Conhecer necessidades do cliente• Responsável pelo ROI(Retorno sobre investimento) e product backlog• Aceita ou rejeita o resultado do time
12
PapéisTime
• Define Tarefa• Estima Esforço• Garante Qualidade
13
Etapas do Scrum
Sprint: representa um tempo definido dentro do qual um conjunto de atividades deve ser
executado.
Product Backlog (documento) : conjunto de historias que compõem o produto.
Sprint Planning Meeting: reunião antes das sprints.
Sprint Backlog: conjunto de historias selecionadas do product backlog.
Sprint Burndown: gráfico de acompanhamento da execução da Sprint.
Daily Meeting: reunião entre o time e o scrum máster.
Sprint Review Meeting: demonstração do trabalho realizado.
Sprint Retrospective: melhorias da próxima Sprint em relação ao desenvolvimento e
dificuldades da Sprint anterior.
14
Etapas de Desenvolvimento de Hardware
• Especificação do Produto: As características essenciais do produto são identificados.
• Modelo Inicial: Definir uma estrutura geral de um produto.
• Simulação: Fazer uma simulação para verificar se o modelo está correto. Se estiver correto passar para próxima etapa, senão redefinir o design inicial.
• Implementação de um Protótipo: Quando simulação indicar que o modelo está correto, um protótipo do produto é construído.
15
Etapas de Desenvolvimento de Hardware
• Teste: Quaisquer erros revelados pelo teste devem ser corrigidos. Para pequenos erros faça pequenas correções no próprio protótipo, enquanto se os erros forem maiores, deve se pensar em outro modelo e repetir os passos descritos anteriormente.
• Avaliação: Quando o protótipo estiver de acordo com todas as especificações definidas inicialmente, o produto pode ir para a produção.
16
17
Etapas de desenvolvimento de hardware no Instituto Eldorado
18
Especificações
• Entender as necessidades do cliente.• Escrever uma proposta comercial.• Verifica se tem algum conhecimento sobre assunto.• Planejamento: alocar equipe, laboratórios e recursos.
19
Protótipo A
• Diagrama de Blocos.• Requisitos de cada componente.• Layout da placa: manda fazer a placa de circuito impresso em uma
fabrica especializada.• Montagem dos componentes.• Avaliação.
20
Protótipo B
• Corrigir os erros encontrados. Exemplo: layout errado, especificações não atendidas.
• Integrar hardware e software na versão alfa.• Possíveis novas funcionalidades por parte do cliente.
21
Protótipo C
• Fase de refinamento. • Novamente retocar o circuito impresso ou mudar layout.• No final do protótipo C produto em condição de entrega para o cliente.• Entregar a documentação do software, plano de teste, especificação
dos componentes.
22
Conclusão
Depois de desenvolvidos, o hardware necessita de software para ser funcional, um dos maiores exemplos é o SO, cuja função é gerenciar os recursos do sistema e fornecer uma interface entre o computador e o usuário, já o software nem sempre precisa do hardware para ser funcional, que é o caso, por exemplo, dos emuladores de cd/dvd, mas na maioria o software é desenvolvido especificamente para algum hardware, como por exemplo, os aplicativos para smartphones, que estão em alta no mercado e vem crescendo cada vez mais a quantidade nas lojas virtuais, como app store e google play, e esses aplicativos são softwares desenvolvidos especificamente para plataformas mobiles.
23
Referências Bibliográficas
LEITE, Jair. O Modelo Espiral, 2007. Disponível em: http://engenhariadesoftware.blogspot.com.br/2007/03/o-modelo-espiral.html.
24
BibliografiaLaert, N. V. C., Métodos e Ferramentas para o Projeto de Sistemas Digitais. http://www.inf.pucrs.br/~calazans/publications/ERI95.pdf Zeidman, B., (2003). Introduction to the universal design methodology. http://www.embedded.com/electronics-blogs/beginner-s-corner/4024888/The-universal-design-methodology Johnson, M., Sullivan, B., Preziotte, M (2010) . Design Strategies: Top-Down vs. Bottom-Up .http://superprofundo.com/2010/12/13/top-down-and-bottom-up-pros-and-cons/ System integration, (2015). https://en.wikipedia.org/wiki/System_integration Medeiros, H. Introdução ao Modelo Cascata http://www.devmedia.com.br/introducao-ao-modelo-cascata/29843 Bonfim, M. Introdução ao Scrum http://www.devmedia.com.br/introducao-ao-scrum/27887
BROWN, Stephen. VRANESIC, Zvonko. Titulo: Fundamentals of Digital Logic with VHDL Design. 3ª ed. Nova Iorque: McGraw-Hill Education, 2008. 960 p.
25