Objetivos
- Apresentar as características e viabilidade da Análise de Projetos
- Capacitar o aluno a conduzir atividades associadas à modelagem de software
- Demonstrar ao aluno os benefícios da modelagem de software e como ela se ajusta no processo de criação de uma solução
- Dotar o aluno de conhecimentos sobre a formalização de modelos
- Apresentar métodos, técnicas e ferramentas de apoio às atividades de desenvolvimento
- Preparar o aluno para conduzir atividades de Gestão da Informação utilizando paradigma procedimental e orientado a objetos
- Treinar o aluno no uso da UML
- Incorporar os mecanismos de extensão da UML que possibilitam a modelagem de sistemas Web
- Introduzir as metodologias ágeis com seus métodos e cerimônias
- Envolver o aluno com aplicações em desenvolvimento ou já desenvolvidas.
Ementa
- Problemas de modelagem de software:
- Diversidade de artefatos
- Dificuldade na formalização de modelos
- Lacuna semântica entre requisitos e implementação
- Revisão de processos de desenvolvimento.
- Variedade de linguagens de modelagem:
- UML
- Diagramas estruturados
- Notações formais (algébricas, lógicas, operacionais)
- Paradigmas de Implementação:
- Procedimental
- OO
- Aspectos
- Features
- Modelagem com UML.
- Casos de Usos
- Atividades
- Classes
- Seqüência
- Colaboração
- Concorrência
- Estados
- Componentes
- Implantação.
Programa
- Introdução à construção de modelos
- Problemas de modelagem
- Formalização de modelos
- Processo iterativo e incremental para o desenvolvimento de software
- Processos de Desenvolvimento de software
- Modelagem de software usando paradigma procedimental
- Modelagem Funcional usando Diagrama de Fluxo de Dados
- Modelagem Funcional usando Diagrama de Estrutura
- Modelagem de Dados usando Diagrama de Entidade-Relacionamento
- Modelagem de software orientado a objetos com UML
- Fundamentos da orientação a objetos e UML.
- Meta-modelo da UML.
- Modelagem estrutural x comportamental
- Estruturais
- Diagramas de classes
- Diagramas de objetos
- Diagrama de Pacotes
- Diagrama de componentes
- Diagrama de implantação
- Diagrama de estrutura composta
- Comportamentais
- Diagramas de casos de uso
- Diagramas de Atividades
- Diagramas de interação
- Diagrama de sequência
- Diagrama de comunicação
- Diagrama de transição de estados
- Modelagem de processos de negócio
- Modelagem funcional com Diagramas de Caso de Uso
- Modelagem de dados com Diagramas de Classe
- Modelagem da arquitetura do sistema
- Tópicos especiais em modelagem de sistemas de software.
- Aplicações de modelagem de software e estudos de caso com aplicações utilizando:
- Microserviços
- Banco de Dados NoSQL
- Deploy na nuvem.
- Aplicações de modelagem de software e estudos de caso com aplicações utilizando:
Bibliografia
- Básica:
- Blaha, M.; Rumbaugh, J. Modelagem e projetos baseados em objetos com UML 2. Rio de Janeiro, Campus. 2006.
- Booch, G.; Jacobson, I.; Rumbaugh,J. UML: Guia do Usuário. Rio de Janeiro: Campus, 2006.
- Furlan, J. D. Modelagem de Objetos através UML. São Paulo: Makron Books, 1998.
- Complementar:
- Guedes, G. T.A. UML 2 – Uma abordagem prática. São Paulo: Novatec., 2009.
- Larmann, C. Utilizando UML e Padrões. Porto Alegre: Bookman, 2007.
- Oestereich, B.; Weilkiens, T. UML 2 Certification Guide. Boston: Morgan Kaufmann, 2006.
- Pender, T. UML - A Bíblia. Rio de Janeiro: Campus, 2004.
- Pressmann, Roger S. Engenharia de Software. São Paulo: Makron Books, 1995.
- Yourdon, E; Análise Estruturada Moderna, Campus, 1989.
- Recente:
- Cruz, Fabio. Scrum e Agile em Projetos. Rio de Janeiro. Brasport. 2015.
- Gomes, André Faria, Agile: Desenvolvimento de software com entregas frequentes e foco no valor de negócio. Casa dp Código. eBook e Kindle.
- Sabbagh, Rafael. Scrum: Gestão ágil para projetos de sucesso eBook Kindle. Casa do Código.
Projeto de Análise e Projeto de Sistemas
- [30 pontos] O curso de Análise e Projeto de Sistemas desenvolve um projeto completo de um sistema usando os métodos apresentados em aula:
- Equipes individuais ou em duplas
- O sistema a ser desenvolvido será escolhido pela própria equipe
- É necessário a definição de um cliente real para o projeto.
- Cronograma do projeto:
- Etapa 1 - [5 pontos]
- Definição das equipes e do sistema a ser desenvolvido
- Template 1: Canvas
- Definição das equipes e do sistema a ser desenvolvido
- Etapa 2 - [5 pontos]
- Identificação das necessidades, coleta inicial de dados com estudo de viabilidade do sistema
- Template 2: Mockup
- Identificação das necessidades, coleta inicial de dados com estudo de viabilidade do sistema
- Etapa 3 - [5 pontos]
- Análise Estruturada de Sistemas
- Lista de eventos
- Diagrama de contexto
- DFD - Diagrama de Fluxo de Dados
- Template 3: Diagramas Modelo Estruturado
- Análise Estruturada de Sistemas
- Etapa 4 - [5 pontos]
- Banco de Dados
- Diagrama Entidade-Relacionamento
- Template 4: DER
- Banco de Dados
- Etapa 5 - [5 pontos]
- Análise Orientada a Objetos
- Diagrama de Estado
- Diagramas de Sequência
- Diagrama de Entidade
- Diagrama de Implantação
- Template 5: Diagramas OO
- Análise Orientada a Objetos
- Etapa 6 - [5 pontos]
- Avaliação final de todos os templates
- Etapa 1 - [5 pontos]
- Requisitos não funcionais exigidos:
- Limite mínimo de 8 tabelas do DER
- 8 classes do diagrama de classes
- O cliente do projeto deve ser uma empresa ou pessoa existentes, não necessiariamente de nossa cidade e com uma demanda real.
Grade curricular
Alinhando os conhecimentos ...
- 1º Período
- Análise de Dados I
- Cálculo I
- Empreendedorismo e Geração de Idéias
- Fundamentos e Estratégia de Administração
- Geometria Analítica e Algebra Linear
- Lógica para Computação
- 2º Período
- Análise de Dados II
- Cálculo II
- Dados e Informações Financeiras I
- Fundamentos de Marketing
- Oficina de Programação e Laboratório
- Sistema de Informação Gerencial
- 3º Período
- Ambiente Legal das Organizações
- Análise de Dados III
- Cálculo III
- Dados e Informações Financeiras II
- Estrutura de Dados
- Plano de Negócios
- 4º Período
- Análise de Dados IV
- Análise de Investimentos
- Composto Mercadológico
- Desenvolvimento de Negócios de Base Tecnológica
- Gestão de Pessoas
- Projeto e Desenvolvimento de Software
- 5º Período
- Administração de Projetos
- Algoritmos e Programação
- Criação de Empresas
- Comportamento Organizacional
- Economia de Negócios
- Programação Orientada a Objetos
Começando a pensar nos projetos .....