370 likes | 503 Views
Processo de Engenharia de Computação. Processo de projeto de engenharia. Segundo o site SCIENCE BUDDIES (2014) os passos para o processo de projeto de engenharia são:. Definição do problema P esquisas de apoio Especificação de requerimentos Criação de soluções alternativas
E N D
Processo de Engenharia de Computação Processo de projeto de engenharia Pontifícia Universidade Católica de Campinas
Segundo o site SCIENCE BUDDIES (2014) os passos para o processo de projeto de engenharia são: • Definição do problema • Pesquisas de apoio • Especificação de requerimentos • Criação de soluções alternativas • Escolha da melhor solução • Trabalho de desenvolvimento • Construção de um protótipo • Teste e Redesign • Comunicação dos resultados Pontifícia Universidade Católica de Campinas
Definição do problema Verificar o que está errado e por que é importante resolver. • Quais são os problemas? • Quem tem o problema? • Quem precisa do que para quê? Pontifícia Universidade Católica de Campinas
Pesquisas de apoio Procurar soluções já criadas, que podem ou não estar obsoletas, de modo a desenvolver possíveis novas soluções. Pontifícia Universidade Católica de Campinas
Especificação de requerimentos Especificartodas as características que a solução deve encontrar para ter sucesso, e analisar produtos similares já existentes. Pontifícia Universidade Católica de Campinas
Criação de soluções alternativas • Trabalhar com mais de uma hipótese. • Focando em apenas uma alternativa, a chance de que uma melhor exista é muito provável! Pontifícia Universidade Católica de Campinas
Escolha da melhor solução Analisar todas as alternativas e identificar a que mais atende aos requisitos necessários para chegar a uma solução que irá sanar a maioria dos problemas. Pontifícia Universidade Católica de Campinas
Trabalho de desenvolvimento • Refinar e melhorar a solução. • Desenhar modelos e colocar toda parte teórica no papel, isto é, registrar tudo aquilo que foi usado e feito para alcançar o objetivo. Pontifícia Universidade Católica de Campinas
Construção de um protótipo • Ter a possibilidade de testar como a solução irá realmente funcionar. • Materiais diferentes usados na versão final, pois ocorrem mudanças e melhorias no protótipo. Pontifícia Universidade Católica de Campinas
Teste e redesign • Fazer os teste necessários do protótipo, para assim encontrar problemas e fazer as mudanças para o próximo protótipo. • Seguir os mesmos passos em um loop, até que todos os problemas encontrados sejam resolvidos. Pontifícia Universidade Católica de Campinas
Comunicação dos resultados Comunicar os resultados obtidos em um relatório final ou um quadro de apresentações. A solução encontrada pode ser manufaturada e suportada. Pontifícia Universidade Católica de Campinas
Muitas vezes o processo de engenharia não se encaixa nos projetos da área de Engenharia de Computação, isso pois esse processo é incompleto para a área, havendo assim mais dois tipos de processos: o de Engenharia de Software e o de Engenharia de Hardware. Pontifícia Universidade Católica de Campinas
Divisão Eng. Software / Hardware Projetos de Engenharia de Software e Hardware são divididos pois muitos projetos envolvem apenas o desenvolvimento de software – como por exemplo o Microsoft Office Word – que podem ser executados em vários tipos de hardware. Pontifícia Universidade Católica de Campinas
Divisão Eng. Software / Hardware Porém alguns softwares só funcionam perfeitamente em determinados equipamentos; Exemplo: Sistema embarcado. Pontifícia Universidade Católica de Campinas
Divisão Eng. Software / Hardware Com o pensamento de que muitos softwares não precisam de um hardware específico construído para eles, essas duas categorias de engenharia puderam ser divididas. Pontifícia Universidade Católica de Campinas
Processo de Engenharia de Software O processo de engenharia de software é complexo. Schwaber (2004) enumerou três dimensões principais para explicar essa complexidade, são elas: • Requisitos • Tecnologias • Pessoas Pontifícia Universidade Católica de Campinas
Requisitos Schwaber (2004) afirma que: Requisitos definem as necessidades que o software deve atender, entretanto, como são muitos os envolvidos em um projeto, há diferentes expectativas no processo, gerando diversos requisitos. Pontifícia Universidade Católica de Campinas
Tecnologias Segundo Schwaber (2004), para a realização de um projeto de software, é necessária a utilização de tecnologia para a resolução de problemas para assim conseguir alcançar os requisitos do software e atigiras vantagens da competitividade. Pontifícia Universidade Católica de Campinas
Pessoas Schwaber (2004) considera como pessoas: As equipes de desenvolvimento que são formadas por pessoas que têm diferentes habilidades, experiências, pontos de vista e atitudes, e que, com o decorrer do projeto, também podem ir mudando os requisitos do mesmo, de acordo com a vontade do cliente. Pontifícia Universidade Católica de Campinas
Processo de Engenharia de Hardware O Processo de Engenharia de Hardware, segundo o Instituto Nacional de Pesquisas Espaciais (INPE), é composto por três fases, sendo elas: • Planejamento e especificação • Projeto e prototipação • Produção e distribuição Pontifícia Universidade Católica de Campinas
Planejamento e especificação • Estabelecimento do objetivo • Análise de requisitos • Restrições e critérios de teste Pontifícia Universidade Católica de Campinas
Estabelecimento do objetivo O planejamento é realizado com a finalidade de estabelecer o objetivo do projeto, ou seja, é a fase de definição do problema do Processo de Projeto de Engenharia. Pontifícia Universidade Católica de Campinas
Análise de requisitos A análise de requisitos é realizada para especificar: • Requisitos funcionais • Requisitos não-funcionais Pontifícia Universidade Católica de Campinas
Análise de requisitos • Requisitos funcionais descrevem funcionalidades do sistema, ou seja, como ele deve se comportar em determinadas situações. • Requisitos não-funcionais definem propriedades e restrições do sistema, como segurança e desempenho. Pontifícia Universidade Católica de Campinas
Restrições e critérios de teste Restrições e critérios de teste são estabelecidos. • Restrições são fatores determinantes que um projeto deve respeitar. Ou seja, as restrições vão limitar o desenvolvimento do projeto. • Critérios de teste servem para selecionar e avaliar casos de teste de forma a aumentar as possibilidades de provocar falhas. Pontifícia Universidade Católica de Campinas
Projeto e prototipação Requisitos são analisados e uma configuração de hardware é projetada. Pontifícia Universidade Católica de Campinas
Projeto e prototipação À medida que o projeto evolui, revisões técnicas devem ser feitas. Isto é, descobrir erros de lógica e implementação. “O produto está sendo construído corretamente?” Pontifícia Universidade Católica de Campinas
Projeto e prototipação Um protótipo é testado para garantir que ele satisfaz todos os requisitos. Pontifícia Universidade Católica de Campinas
Produção e distribuição Antes que se inicie a produção, métodos de controle da qualidade devem ser estabelecidos, ou seja, o sistema produzido deverá superar as expectativas do usuário, e o produto poderá ser distribuído, ou seja, estar disponível no mercado. Pontifícia Universidade Católica de Campinas
Engenharia de Software e Hardware Usa-se engenharia de software em conjunto com a de hardware em projetos de sistemas embarcados, onde se desenvolve um hardware específico para uma determinada função e também um software específico para tal equipamento. Pontifícia Universidade Católica de Campinas
Engenharia de Software e Hardware O engenheiro que dá manutenção nesses equipamentos tem que estudar tanto o hardware como o software para aprimorar o código ou os componentes da máquina. Pontifícia Universidade Católica de Campinas
Engenharia de Software e Hardware “Um sistema embarcado é um sistema no qual o computador é completamente dedicado ao dispositivo ou sistema que ele controla. Um sistema embarcado realiza um conjunto de tarefas predefinidas, com requisitos específicos. Já que o sistema é dedicado a tarefas específicas, através de engenharia pode-se otimizar o projeto reduzindo tamanho, recursos computacionais e custo do produto.” Origem: Wikipédia, a enciclopédia livre. Pontifícia Universidade Católica de Campinas
Engenharia de Software e Hardware “Em geral, tais sistemas não podem ter sua funcionalidade alterada durante o uso. Caso queira-se modificar o propósito é necessário reprogramar todo o sistema.” Origem: Wikipédia, a enciclopédia livre. Pontifícia Universidade Católica de Campinas
Engenharia de Software e Hardware “Sistemas como PDAs são considerados sistemas embarcados pela natureza de seu hardware, apesar de serem muito mais flexíveis em termos de software. Fisicamente, os sistemas embarcados passam desde MP3 playersà semáforos.” Origem: Wikipédia, a enciclopédia livre. Pontifícia Universidade Católica de Campinas
Conclusão O processo para os projetos de engenharia de software e hardware é complexo, porém bem definido, isto é, têm etapas que devem ser seguidas para atingir seu objetivo principal. Pontifícia Universidade Católica de Campinas
Referências • SCHWABER, Ken. Agile Project Management with Scrum. Redmond: Microsoft Press, 2004. 156 p. • SCIENCE BUDDIES. The Engineering Design Process. Disponível em <http://ftp-acd.puc-campinas.edu.br/pub/professores/ceatec/tobar/mpc/The%20Engineering%20Design%20Process.pdf>. Acesso em 14 de Out. 2014. • Instituto Nacional de Pesquisas Espaciais. Engenharia de Software e Hardware. Disponível em: <http://www2.dem.inpe.br/ijar/EngSistComp.html>. Acesso em: 14 de Out. 2014. Pontifícia Universidade Católica de Campinas
Referências • Vinha Branco. Restrições de projeto. Disponível em: <http://vinhabranco.com.br/?p=73>. Acesso em: 20 de Out. 2014 • Eduardo Figueiredo. Requisitos funcionais e não-funcionais. Disponível em: <http://homepages.dcc.ufmg.br/~figueiredo/disciplinas/aulas/req-funcional-rnf_v01.pdf>. Acesso em: 20 de Out. 2014 • Wikipédia, a Enciclopédia Livre. Sistema embarcado. Disponível em: <http://pt.wikipedia.org/wiki/Sistema_embarcado>Acesso em: 21 de Out. 2014. Pontifícia Universidade Católica de Campinas