Análise de Programação Apresentação do Curso Prof. Gilberto Braga de Oliveira
Tópic os a s e re m abo rdado s : Apresentação do curso Competências, habilidades e bases tecnológicas Principais tópicos Conceitos Básicos de Engenharia de Software Avaliações Ferramentas necessárias 2
Com pe tê n c ias Interpretar e analisar modelos de dados; Interpretar e avaliar documentação de Análise e Projeto de Sistemas. Identificar e utilizar técnicas de modelagem de dados. 3
Habilidade s Utilizar técnicas de modelagem de dados Utilizar técnicas de análise e projeto de sistemas Aplicar técnicas de modularização, especificação e verificação de software 4
c o n t in uaç ão... Habilidade s Utilizar ferramentas de apoio ao desenvolvimento de software Aplicar orientação a objetos na construção da hierarquia de classes do sistema Definir, junto ao cliente, os requisitos do programa solicitado. 5
Bas e s Te c n o lógic as Modelagem de dados Metodologias de análise e projetos de sistemas utilizando a linguagem de modelagem unificada (UML) 6
c o n t in uaç ão... Bas e s Te c n oló gic as Metodologia de projeto de sistemas UML: Diagramas de Caso de Uso, de Classes e de Objetos. Diagramas de Iteração Seqüência e colaboração Diagrama de Gráfico de Estado e de Atividades 7
Prin c ipais t ópic os Conceitos fundamentais de Engenharia de Software Programação Orientada a Objetos Diagrama de Classes Diagrama de Objetos Diagrama de Caso de Uso Diagrama de Atividades Diagrama de Iteração/Seqüência Diagramas de Gráfico de Estado. 8
Avaliaç ão Exercícios: Conceitos fundamentais de ES POO e Classes Levantamento de Requisitos com Casos de Uso Processos e Diagramas de Atividades Atividades: Trabalho (em dupla) Projeto de Software (em equipe) 9
Fe rram e n t as Ne c e s s árias Sistema Operacional Kurumin 7.0 J2SE SDK 1.6.0_17 NetBeans 6.8 Eclipse Galileo 3.5.1 UML Omondo 3.5.0 10
Análise de Programação Conceitos Básicos de Engenharia de Software Prof. Gilberto Braga de Oliveira
Tópic os a s e re m abo rdado s : Conceitos básicos Processos de Engenharia de Software Metodologias e Métodos Ferramentas, Tecnologias e Práticas Qualidade de Software 12
Conceit o s bás ic os Engenharia de Software: Área da computação voltada para a especificação, desenvolvimento e manutenção de sistemas de software. Aplica tecnologias e práticas de gerenciamento de projetos e outras disciplinas Objetiva a organização, produtividade e qualidade do SW. 13
Áre as de c o n h e c im e n t o da En ge n h aria de So ftware Requisitos de software Projeto de software Construção de software Teste de software Manutenção de software Gerencia de Configurações de software 14
Áre as de c o n h e c im e n t o da En ge n h aria de So ftware Gerencia de engenharia de software Processos de engenharia de software Ferramentas e métodos de engenharia de software Qualidade de software 15
Conceit o s bás ic os Software: Seqüência de instruções seguidas, e/ou executadas, na manipulação, redirecionamento ou modificação de dado/informação ou acontecimento. Produto da Engenharia de Software, inclui manuais e especificações. Bem de capital. 16
Proc e s s o s de En ge n h aria de Soft ware Seqüência coerente de práticas para desenvolvimento ou evolução do sistema de software: Especificação Projeto Implementação Testes Interação entre: Ferramentas, Pessoas e Métodos 17
Mo de lo s de pro c e s s o de SW PLC Cascata Desenvolvimento Iterativo e Incremental Evolucional (prototipação) Espiral Ágil, etc. 18
Mo de lo s de m at uridade do pro c e s s o CMM Capability Maturity Model http://www.sei.cmu.edu/ Nível 1 Caótico Nível 2 Repetivel Nível 3 Definido Nível 4 Gerenciável Nível 5 - Otimizado 19
Mo de lo s de m at uridade do pro c e s s o MPS.BR Melhoria de Processo do Software Brasileiro http://www.softex.br/mpsbr/ Nível G Parcialmente gerenciado Nível F Gerenciado Nível E Parcialmente definido Nível D Largamente definido Nível C Definido Nível B Gerenciável quantitativamente Nível A Em Otimização 20
Me todo lo gia e Mé t odo Metodologia: Princípios filosóficos que norteiam métodos Método: Uso de ferramentas e práticas para a produção de alguma coisa 21
Me todo lo gia e Mé t odo Metodologia Estruturada: Construção de um modelo lógico(não físico) de um sistema, usando técnicas gráficas que orientam usuários, analistas e projetistas. Análise Estruturada Projeto Estruturado Programação Estruturada DFD e MER 22
Me todo lo gia e Mé t odo Metodologia Orientada a Objetos: Estratégia de modelagem, programação e análise que permite manipular objetos facilitando a comunicação e o entendimento do produto de software a ser desenvolvido. Orientação a Objetos Rational Unified Process (RUP) 23
De s e n vo lvim e n to Ágil de Soft ware Programação Extrema (XP) Metodologia ágil para equipes pequenas e médias que irão desenvolver software com requisitos vagos e constante mudanças. Valores Comunicação Simplicidade FeedBack Coragem 24
De s e n vo lvim e n to Ágil de Soft ware Programação Extrema (XP): Práticas: Jogo de Planejamento Pequenas versões Metáfora Projeto Simples Time coeso Testes de Aceitação Ritmo Sustentável 25
De s e n vo lvim e n to Ágil de Soft ware Programação Extrema (XP): Práticas: Reuniões em Pé Código coletivo Programação em pares Codificação padronizada Desenvolvimento orientado a testes Refatoração Integração contínua 26
Mo de lage m A abstração de um sistema, facilita a comunicação e o entendimento entre os envolvidos no desenvolvimento do software. Análise Estruturada GANE & SEARSON UML BOOCH, JACOBSON E RUMBAUGH 27
Fe rram e n t as, Te c n o logias e Prátic as Linguagens de Programação Banco de Dados Paradigmas de Programação Programação Estruturada Orientada a Objetos, etc... 28
Fe rram e n t as CASE (Computer-Aided Software Engineering): Eclipse ERwin Process Modeler, etc... EDI NetBeans Delphi, etc... 29
Qualidade de So ftware Garantir a qualidade do software através da definição e normatização de processos de desenvolvimento. Qualidade do processo de software: CMM MPS.BR 30