Objetivos


Ao final da disciplina o aluno poderá ser capaz de:

  1. Compreender o cenário atual de Engenharia de Software bem como seus processos e modelos de sistemas
  2. Atualizar-se com as tendências e estado da arte da área de TI (Tecnologia da Informação)
  3. Desenhar e analisar sistemas computacionais seguindo padrões, com a utilização de esboços gráficos e de ferramentas de auxílio ao desenvolvimento (Ferramentas CASE)
  4. Desenvolver protótipos que representem soluções do mundo atual
  5. Exercitar a capacidade na resolução de problemas computacionais


Ementa

Conceito de engenharia de software

  • Componentes e Tipos de Software
  • Problemas com software e suas causas
  • Mitos do software
  • A crise do software
  • Software e hardware – diferenças fundamentais
  • Configuração de Software


Engenharia de sistemas

  • Definição de sistemas
  • Papel do analista
  • Software e engenharia de software
  • Etapas de desenvolvimento de softwares
  • Passos da análise de sistemas


Análise de requisitos

  • Definições
  • Requisitos de software e de hardware
  • Passos da análise de requisitos


Análise e projeto estruturados

  • Histórico
  • Modelo ambiental e modelo comportamental
  • Diagrama Entidade-Relacionamento
  • Diagramas de Fluxo de Dados
  • Dicionário de dados


Projeto de software

  • Etapas no desenvolvimento de projetos
  • Abstração e refinamento
  • Diagrama Hierárquico de Funções


Análise e projeto orientados a objetos

  • Análise Orientada a Objetos
  • Conceitos básicos
  • Objetos e classes
  • Distinção de objetos


Diagramas de AOO

  • Diagramas de Classes
  • Diagramas de Casos de Uso
  • Diagramas de Sequência
  • Diagramas de Estado
  • Diagramas de Atividades
  • Diagramas de Colaboração
  • Diagramas de Integração


Paradigmas de engenharia de software

  • Ciclo de vida em cascata
  • Abordagem incremental
  • Prototipação
  • Desenvolvimento por modelo espiral
  • Técnicas de quarta geração


DSL - Domain Specific Language

  • Conceito
  • Design by Evolution
  • Usage patterns
  • Vantagens e Desvantagens


Ferramentas Case

  • Introdução
  • Exemplo de ferramentas Case


Arquitetura

  • Arquitetura Cliente servidor
  • Arquitetura Internet
  • Vantagens e desvantagens das arquiteturas
  • SOA – Service Oriented Architecture


Protótipo

  • Requisitos
  • Projeto
  • Implementação
  • Apresentação



Raciocínio Lógico-Matemático

  • Estrutura de Dados
  • Geometria computacional
  • Grafos
  • Matemática
  • Strings
  • Paradigmas



Bibliografia

  • PRESSMAN, R. Engenharia de Software, McGraw Hill, São Paulo, 2006
  • TONSIG, S. L. Engenharia de Software – Análise e Projeto de Sistemas, Ed. Futura, São Paulo, 2003
  • SOMMERVILLE, I. Engenharia de Software, Addison Wesley, São Paulo, 2007
  • BOOCH, Grady. UML, guia do usuário. Campus, Rio de Janeiro, 2000
  • FILHO, W. P. P. Engenharia De Software: Fundamentos, Métodos E Padrões, LCT, Rio de Janeiro, 2003
  • IEEE - The Institute of Electrical and Electronics Engineers. Swebok Guide to the Software Engineering. Body of Knowledge. 2004.


Extensões

  • Exercícios
  • Wiki
    • http://www.sourceinnovation.com.br/wiki/
    • Autenticar-se
    • Para obter uma conta de utilizador, deverá requisitá-la.
    • Biografia: Responder informando no minimo ...
      • Possui formação profissionalizante, técnico?
      • Participou de eventos acadêmicos: OBMEP. OBM, OBI, Feiras científicas, ...?
      • Participou de eventos técnicos: Palestras, visitas técnicas, competiçoes de games, ...?
      • Tem experiência em programação? Quais linguagens?
      • Gosta de desenvolver aplicações?
      • Faz pesquisa? Em qual área?
      • Qual ênfase pretende: Energia, Automação, Telecom, Computação, Biomédicas, outro?
      • Hobby
      • Trabalha? Em qual área?
      • Gostaria de criar sua própria empresa ou seu próprio produto?
    • Exemplo:
      • Me chamo Luiz Cláudio Theodoro, natural de Uberlândia - MG, estudei no Colégio Messias Pedreiro onde participei de vários eventos: feiras de física, biologia e geografia. Participei de Olímpiadas de Matemática e também da fanfarra (similar à charanga). Visitei alguns locais como indústrias, universidades, hidrelétricas e empresas de TI para entender o perfil e as responsabilidades de um engenheiro
      • Tenho experiência em linguagens de programação como Assembler, C, Clipper, Cobol, Fortran, Clean, SQL, Prolog e algumas outras. Embora adore desenvolver não tenho tido muito tempo e e me dedico normalmente a criar projetos de soluções inovadoras. Coordeno grupos de estudos que se preocupam em resolver problemas do mundo na área de Internet do Futuro, Voz sobre IP, Internet das Coisas e 4a. geração de telefonia móvel.
      • Atuo como professor das disciplinas de Engenharia de Software e Banco de Dados na Graduação e Sistemas de Informação e Telecomunicações, Desenvolvimento de Projetos de Tecnologia e Tópicos Aplicativos de Telefonia para a Pós-graduação. Coordeno as Maratonas de Programação regionais que tem revelado grandes talentos locais. Trabalho como pesquisador numa Operadora de Telecomunicações onde sou líder da frente de Open Innovation.
      • Adoro ler e como hobby, jogo futebol inclusive sou fundador e vice-presidente da A.A. Santa Mônica, time do campeonato amador formado apenas por universitários da UFU. Já tive minha própria empresa e ainda pretendo criar outra mas por enquanto me dedico a motivar pessoas no empreendedorismo.


  • Cases
  • Projetos
  • Estágio
  • TCC
  • Grupos de Estudo