UNIVERSIDADE FEDERAL DE UBERLÂNDIA
  

Timbre

Ficha de Componente Curricular

 

 

COMPONENTE CURRICULAR:

ENGENHARIA DE SOFTWARE

UNIDADE ACADÊMICA OFERTANTE:

FACULDADE DE ENGENHARIA ELÉTRICA

SIGLA:

FEELT

CH TOTAL TEÓRICA:

30 horas

CH TOTAL PRÁTICA:

15 horas

CH TOTAL:

45 horas

 

OBJETIVOS

Objetivo principal desse curso é estudar, analisar, discutir, e aplicar os fundamentos de Engenharia de Software. Do ponto de vista prático, os conceitos estudados serão aplicados no desenvolvimento de um projeto de um sistema de informação SaaS simples.
Ao final da disciplina, os estudantes devem ser capazes de:
          i. Entender os novos desafios, oportunidades e problemas em aberto do novo cenário da indústria de software como serviço e as principais diferença sem relação ao software empacotado (SWS,                       shrinkwrapped software);
         ii. Definir estratégias de concepção de projetos de Software, notadamente, as relacionadas com aspectos de Engenharia de Sistemas, com noções de particionamento de problemas, análise e                             concepção de projeto;
         iii. Desenvolver um projeto de um sistema de informação - SaaS – simples desde a concepção através de planejamento, desenvolvimento, avaliação/teste, implantação e operação, enfrentando os                     desafios inerentes de cada fase e elaborando a documentação das fases e do sistema;
         iv. Compreender e utilizar ferramentas e metodologias de desenvolvimento de software, tais como as envolvidas com projetos orientados a objetos e ágeis;
          v. Desenvolver habilidades técnicas e de colaboração para trabalhar em times de desenvolvimento software;
         vi. Compreender e aplicar estruturas, padrões e técnicas fundamentais de elaboração de projetos de software e a respectiva programação, incluindo padrões de projeto para arquitetura de software,               funções de ordem superior, metaprogramação, reflexão, entre outras, para melhorar a capacidade de manutenção, modularidade e reutilização de software;
        vii. Compreender e ser capaz de gerenciar projetos de Engenharia de Software, com uso de ferramentas de gestão de projetos.

Ementa

Princípios da Engenharia de Software, seus objetivos, atividades, papéis, recursos, como planejar um projeto, descobrir requisitos, abstrair uma proposta de construção de um produto de software e apresentar uma solução que será construída de forma iterativa, bem como a continuidade da vida útil deste produto.

PROGRAMA

1) Introdução à Engenharia de Software
     a. Crise do Software
     b. Mitos da Engenharia de Software
2) Paradigmas da Engenharia de Software
     a. Ciclo de Vida Clássico
     b. Prototipação
     c. Modelo Espiral
     d. Desenvolvimento Orientado a Objetos – Fases, Casos de Uso, Diagramas de Estado, Diagramas de Classe, Diagramas de Implementação
3) Engenharia de Sistemas
     a. Métodos Ágeis em Processos de Desenvolvimento de Software
         i. Rational Unified Process
        ii. Extreme Programming
       iii. Feature Driven Development
       iv. Test Driven Developments
        v. Scurm
     b. Metodologias ágeis: trabalhando com o cliente
     c. Aplicação de metodologia ágil no desenvolvimento de projetos
     d. Habilidades do engenheiro de software
     e. Análise de Sistemas e Requisitos
      f. Testes de Software – verificação, validação
     g. Testes de Software automatizados
4) Manutenção de Software
     a. Manutenção: corretiva, adaptativa, perfectiva, preventiva
     b. Engenharia reversa
     c. Reengenharia
5) Gerência de Configuração e Mudança
     a. Controle de alterações e versões
     b. Baseline
6) SaaS e Arquitetura Orientada a Serviço; Computação em Nuvem; Código Legado; Qualidade; Produtividade
7) Ciclo de Vida: Dirigido a Plano vs Ágil
8) Arquitetura SaaS: 3 camadas, REST, templates
9) Devops

Obs. Parte Prática: Desenvolvimento de uma solução de software, executável que, na entrega deve apresentar a documentação do sistema e seu funcionamento.

BIBLIOGRAFIA BÁSICA

1. PRESSMAN, ROGER S. Engenharia de software: uma abordagem profissional. Porto Alegre: McGraw-Hill, 2011. xxviii, 780 p., il. Inclui bibliografia e índice. ISBN 9788563308337 (broch.).
2. SOMMERVILLE, IAN. Engenharia de software. São Paulo: Prentice Hall, 2011. xiii, 529 p., il. Inclui bibliografia e índice. ISBN 9788579361081 (broch.).
3. MEDEIROS, ERNANI. Desenvolvendo software com UML 2.0: definitivo. São Paulo: Pearson Makron Books, 2004. xxi, 264 p., il. Inclui bibliografia e índice. ISBN 8534615292 (broch.).

BIBLIOGRAFIA COMPLEMENTAR

1. PAULA FILHO, WILSON DE PÁDUA. Engenharia de software: fundamentos, métodos e padrões. 3. ed. Rio de Janeiro: LTC, 2009. 1248 p., il. Inclui bibliografia e índice. ISBN 9788521616504 (broch.).
2. TONSIG, SÉRGIO LUIZ. Engenharia de software: análise e projeto de sistemas. 2. ed. rev. e ampl São Paulo: Ciência Moderna, 2008. xii, 319 p., il. Inclui bibliografia. ISBN 9788573936537 (broch.).
3. PRESSMAN, ROGER S. Engenharia de software. São Paulo: McGraw-Hill, 2006. 720 p., il. Inclui bibliografia e índice. ISBN 8586804576 (broch.).
4. SOMMERVILLE, IAN. Engenharia de software. 8. ed. São Paulo: Prentice Hall, 2007. 552 p., il. Inclui bibliografia e índice. ISBN 9788588639287 (broch.).
5. PFLEEGER, SHARI LAWRENCE. Engenharia de software: teoria e prática. São Paulo: Pearson Education do Brasil, 2004. 537 p., il. Inclui bibliografia e índice. ISBN 8587918311 (broch.).
6. BLAHA, MICHAEL. Modelagem e projetos baseados em objetos com UML 2. 2. ed. rev. e atual Rio de Janeiro: Campus, 2006. 496 p., il. Inclui bibliografia e índice. ISBN 8535217533 (broch.).
7. BEZERRA, EDUARDO. Princípios de análise e projeto de sistemas com UML. 2. ed. totalmente rev. e atual Rio de Janeiro: Elsevier, 2007. xvii, 369 p., il. Inclui bibliografia e índice. ISBN 9788535216967 (broch.).
8. SURYN, WITOLD. Software quality engineering: a practitioner's approach. Hoboken: IEEE Computer Society: Wiley, 2014. 1 ebook (ix, 193 p.), il. Inclui bibliografia e índice. ISBN 9781118830208 (ebook). Disponível em: <http://ieeexplore.ieee.org/servlet/opac?bknumber=6798073>. Acesso em: 5 jun. 2018.
9. BOOCH, GRADY. UML : guia do usuário. Rio de Janeiro: Campus, 2012. xxvii, 521 p., il. Apêndice e índice. ISBN 108535217843 (broch.).

aprovação

 

Prof. Dr. Antônio Cláudio Paschoarelli Veiga

Coordenador do Curso de Graduação em Engenharia Eletrônica e de Telecomunicações

Prof. Dr. Sérgio Ferreira de Paula Silva

Diretor da Faculdade de Engenharia Elétrica

 


logotipo

Documento assinado eletronicamente por Antonio Claudio Paschoarelli Veiga, Coordenador(a), em 22/03/2019, às 09:17, conforme horário oficial de Brasília, com fundamento no art. 6º, § 1º, do Decreto nº 8.539, de 8 de outubro de 2015.


logotipo

Documento assinado eletronicamente por Sergio Ferreira de Paula Silva, Diretor(a), em 25/03/2019, às 07:05, conforme horário oficial de Brasília, com fundamento no art. 6º, § 1º, do Decreto nº 8.539, de 8 de outubro de 2015.


QRCode Assinatura

A autenticidade deste documento pode ser conferida no site https://www.sei.ufu.br/sei/controlador_externo.php?acao=documento_conferir&id_orgao_acesso_externo=0, informando o código verificador 1100831 e o código CRC B4CF36E2.




Referência: Processo nº 23117.015883/2019-69 SEI nº 1100831