CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS. Tereza Gonçalves Kirner

Documentos relacionados
ENGENHARIA DE SOFTWARE

Desenvolvimento de Software

Processo de Desenvolvimento de Software

Gerenciamento do Escopo do Projeto (PMBoK 5ª ed.)

Modelagem De Sistemas

Engenharia de Software II

Fundamentos de Teste de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

DOCUMENTO DE REQUISITO DE SOFTWARE

ENGENHARIA SIMULTÂNEA DE SISTEMAS: ESTUDO DE CASO DO DESENVOLVIMENTO DE UM AUTOMÓVEL "VERDE"

Unidade IV PRINCÍPIOS DE SISTEMAS DE. Prof. Luís Rodolfo

Análise de Sistemas 3º Bimestre (material 2)

CASOS DE TESTE PALESTRANTE: MARCIA SILVA

O que é um banco de dados? Banco de Dados. Banco de dados

Metodologias de PETI. Prof. Marlon Marcon

Métricas de Software Importância e Aplicação

Análise e Projeto de Sistemas

Engenharia da Computação. Tópicos Avançados em Engenharia de Software. Aula 2

Plano de Trabalho Docente Ensino Técnico

Engenharia de Software

Relação de Disciplinas

Gerenciamento dos Riscos do Projeto (PMBoK 5ª ed.)

Planejar, administrar, desenvolver e implementar banco de dados e sistemas integrados de informacao.

Análise e Projeto Orientado a Objetos. Nazareno Andrade Baseado no material dos profs. Hyggo Almeida e Jacques Sauvé

Planejar, administrar, desenvolver e implementar banco de dados e sistemas integrados de informacao.

Contrata Consultor na modalidade Produto

Modelos em Sistemas de Informação. Aula 2

Planejar, administrar, desenvolver e implementar banco de dados e sistemas integrados de informacao.

Engenharia de Software

Projeto de Desenvolvimento de Software

Os salários de 15 áreas de TI nas cinco regiões do Brasil

1.1. Caracterização do Problema. Capítulo 1. Introdução 20

Planejar, administrar, desenvolver e implementar banco de dados e sistemas integrados de informacao.

Arquitecturas de Software Enunciado de Projecto

Diagrama de Componentes e Implantação

MODELAGENS. Modelagem Estratégica

O Ciclo de Vida do Desenvolvimento de Sistemas i

3 Metodologia de pesquisa

Deswik.Sched. Sequenciamento por Gráfico de Gantt

Público Alvo: Critérios de admissão para o curso: Investimento:

Lógica de Programação. Profas. Simone Campos Camargo e Janete Ferreira Biazotto

POLÍTICA DE INVESTIMENTOS DA BRASKEM

Pós Graduação Engenharia de Software

A Implantação do Sistema do Sistema da Qualidade e os requisitos da Norma ISO NBR 9001:2000

Desenvolvimento de um Conjunto de Processos de Governança de Tecnologia de Informação para uma Instituição de Ensino Superior

Período ATIVIDADE OBJETIVO Responsabilidade Local

MANUTENÇÃO SISTEMAS INFORMATIZADOS PARA O PLANEJAMENTO E CONTROLE DA MANUTENÇÃO. CCMS- Computer Maintenance Management System

ICI AMPLIA INCLUSÃO DIGITAL E PROMOVE AVANÇOS NA ROTINA DOS ESTUDANTES DA REDE PÚBLICA COM APLICAÇÃO DE WI-FI NAS ESCOLAS

TECNICO EM INFORMATICA PLANO DE ESTAGIO INTEGRADO A PROPOSTA PEDAGOGICA DO CURSO

Qualidade de Software Normatização

5: DESENVOLVIMENTO DE SISTEMAS

Agenda. Introdução Etapas genéricas Atividades de apoio Ferramentas de apoio Modelos genéricos Modelos de mercado Modelos de melhoria

P24 Criar Plano Diretor de Tecnologia da Informação e Comunicação 2011/2012 Líder: Maria Cecília Badauy

empowering talents UM PRODUTO:

Métricas de Software

Análise Qualitativa no Gerenciamento de Riscos de Projetos

DIVISÃO DE REGISTROS ACADÊMICOS Registros Acadêmicos da Graduação. Ementas por Currículo 07/02/ :25. Centro de Ciências Exatas e Naturais

Revisão Diagrama de Caso de Uso. Rodolfo Adamshuk Silva 30/08/2013

MINISTÉRIO DA EDUCAÇÃO FUNDO NACIONAL DE DESENVOLVIMENTO DA EDUCAÇÃO DIRETORIA DE ASSISTÊNCIA A PROGRAMAS ESPECIAIS

CVS Controle de Versões e Desenvolvimento Colaborativo de Software

MBA em Gerenciamento de Projetos

Sistemas de Informação

Capítulo 6. Projeto de arquitetura Pearson Pren0ce Hall. Todos os direitos reservados. 1. slide 1

Plant Design.com

PLANO DE ESTAGIO INTEGRADO A PROPOSTA PEDAGOGICA DO CURSO

Organização dos Estados Ibero-americanos. Para a Educação, a Ciência e a Cultura

2. Implantação de sistemas integrados de gestão

Copyright Proibida Reprodução. Prof. Éder Clementino dos Santos

REGULAMENTO DO NÚCLEO DE ESTUDOS COMPORTAMENTAIS (NEC) DA COMISSÃO DE VALORES MOBILIÁRIOS

PLANO DE ESTAGIO INTEGRADO A PROPOSTA PEDAGOGICA DO CURSO. Curso: TECNOLOGIA EM ANALISE E DESENVOLV.DE SISTEMAS Nivel: Superior

Fundamentos de Programação. Diagrama de blocos

TERMO DE REFERÊNCIA PARA CONTRATAÇÃO DE PESSOA FÍSICA

Introdução. Aula 02. Estrutura de Dados II. UFS - DComp Adaptados a partir do material da Profa. Kenia Kodel Cox

Análise de Requisitos

Modelagem de Sistemas Web. Metodologias para o desenvolvimento de sistemas web

PROJETO DO CURSO TÉCNICO DE NÍVEL MÉDIO INTEGRADO EM INFORMÁTICA

Segurança de Aplicações Aula 6

PSP: Personal Software Process. PSP- Personal Software Process. PSP: Personal Software Process. PSP: Personal Software Process

PROFESSOR: CRISTIANO MARIOTTI

Panorama da Inovação no Brasil. Hugo Ferreira Braga Tadeu 2014

Engenharia de Software. Ciclos de Vida do Software. 1. Sistemas

Clientes gerentes Usuarios finais do sistema Clientes engenheiros Gerentes contratantes Arquitetos do sistema. Definicao de requisitos

PPODE - ESTRATÉGICO. Slide 1 BALANCED SCORECARD CRESCIMENTO PRODUTIVIDADE MAIS RESULTADOS. Ms. RICARDO RESENDE DIAS

Universidade Estadual de Ponta Grossa PRÓ-REITORIA DE GRADUAÇÃO DIVISÃO DE ENSINO

5 - Qual é a principal vantagem de desenvolvimento de código por pares:

Algoritmos e Programação II

LINHAS MESTRAS; FASES; DISCIPLINAS; PRINCÍPIOS E MELHORES PRÁTICAS.

SOS digital Gestão de dados de investigação

Introdução Engenharia de Software

Sérgio Luisir Díscola Junior

CURSO DE FORMAÇÃO PROFISSIONAL EM MACEIÓ-AL

HAVE A SILCA COPY COPY HAVE A SILCA COPY. Duplicadoras Electrónicas HAVE A SILCA COPY HAVE A SILCA COPY HAVE A SILCA COPY HAVE A COPY

MODELOS DE PROCESSO TÉCNICAS INTELIGENTES QUE APOIAM A CONSTRUÇÃO DE UM SOFTWARE

PREFEITURA DO MUNICÍPIO DE PORTO VELHO

MDS II Aula 04. Concepção Requisitos Diagrama de Casos de Uso (Use Cases)

Modelos de Ciclo de Vida de Software

Arquitetura de Aplicações J2EE. Jorge Fernandes Outubro de 2003

Transcrição:

CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS Tereza Gonçalves Kirner Apresentação elaborada com base em: Hoffer, Jeffrey A., George, Joey F. Modern Systems Analysis and Design (Capítulo 1), Pearson, 7 edition, 2013. 1

Apresentação Este módulo do curso apresenta os conceitos básicos de sistemas de informação e a abordagem do ciclo de vida de desenvolvimento de sistemas (SDLC), destacando as abordagens tradicionais de desenvolvimento em Espiral e em Cascata. Destaca o uso de ferramentes CASE (Computer-Aided Software Engineering) na geração de sistemas, descrevendo as metodologias RAD (Rapid Application Development) e XP (extreme Programming). Além disso, enfoca a análise e projeto orientado a objeto, apresentando a metodologia RUP (Rational Unified Process). Por fim, enfatiza os aspectos positivos da abordagem SDLC, que possibilita organizar e guiar a criação de sistemas, definir processos e atividades e estabelecer limites e comunicações entre os mesmos. 2

Sistemas de Informação Caracterizam-se por armazenar e gerenciar grandes volumes de dados e prover informações necessárias para solucionar problemas organizacionais Podem atender tanto as atividades do dia-a-dia quanto as necessidades gerenciais das empresas. Classificação de Sistemas de Informação: Sistemas de Processamento de Transações Sistemas de Apoio à Decisão Sistemas de Planejamento Estratégico 3

Sistemas de Processamento de Transações SPT Auxiliam na realização de atividades do dia-a-dia de uma empresa ou organização Direcionados para uma perspectiva de curto prazo Exemplos: - Controle de empréstimos de livros em uma biblioteca - Atendimento de pedidos / vendas online - Controle de consultas em uma clínica médica 4

Sistemas de Apoio à Decisão (SAD) Apóiam gerentes de nível médio das empresas e outros profissionais (knowledge workers) a tomarem decisões inteligentes, com menor risco e maior probabilidade de sucesso. Direcionados para uma perspectiva de curto/médio prazo. Exemplos: - Análise de previsões de vendas - Controle e acompanhamento de projetos 5

Sistemas de Informação Estratégicos (SIE) Usados pela alta administração de uma empresa para avaliação e escolha de ações que terão impacto decisivo na vida e sucesso da organização Direcionados para uma perspectiva de médio prazo/longo prazo Exemplo: - Planejamento das políticas de investimento em desenvolvimento de produtos de informática (software, hardware ou dispositivos) para o próximo qüinqüênio 6

Análise e Projeto de Sistemas de Informação Processo complexo para desenvolvimento e manutenção de sistemas e aplicações computacionais Abrange desde a decisão de se criar um sistema, passando pela entrega e acompanhamento do produto, até a sua descontinuação Composta por um conjunto de etapas, fases e atividades Utiliza metodologias, técnicas e ferramentas para apoiar o desenvolvimento dos sistemas Dirigida aos profissionais da área - analistas de sistemas, engenheiros de software 7

Evolução da Análise e Projeto de Sistemas 1950s: foco na automatização eficiente de processos já existentes 1960s: advento das linguagens procedurais de 3ª geração (3GL) e computadores mais rápidos e confiáveis 1970s: o desenvolvimento de sistemas torna-se mais estruturado (como uma disciplina de engenharia) 1980s: grande avanço, com linguagens de 4a geração (4GL), ferramentas CASE e métodos orientados a objeto 1990s: foco na integração de sistemas, interface com o usuário (GUI ), plataformas cliente/servidor e Internet Novo século: desenvolvimento de aplicações Web, aplicações para celular, sistemas baseados em componentes e provedores de serviços (ASP) 8

Ciclo de Vida do Desenvolvimento de Sistemas (SDLC) Metodologia tradicional usada para desenvolver, manter e substituir sistemas de informação Etapas Básicas do SDLC: - Planejamento - Análise - Projeto - Implementação - Implantação - Manutenção 9

Ciclo de Vida do Desenvolvimento de Sistemas (SDLC) Planejamento - as necessidades de informação são identificadas, priorizadas e organizadas Análise - os requisitos do sistema são elicitados e especificados Projeto - a solução obtida é convertida em um projeto lógico e depois em um projeto físico Implementação - o sistema de informação é codificado e devidamente testado Implantação o sistema de informação é entregue à organização e colocado em funcionamento Manutenção um sistema de informação passa por atualizações, correções e alterações preventivas 10

Modelos de Processo de Desenvolvimento de Sistemas Modelos Tradicionais: - Cascata - sequência de etapas/fases - Espiral - construção evolutiva, com refinamentos sucessivos do sistema que está sendo criado 11

Proposto por Barry Boehm Modelo Cascata Há várias versões do modelo será apresentada uma versão genérica Abordagem top-down, composta por uma seqüência de etapas, fases e atividades Cada etapa produz um resultado que, após validado, serve de entrada para a etapa seguinte O modelo cascata direciona o desenvolvimento do sistema, indicando as atividades necessárias, desde a concepção até a entrega do sistema 12

Planejamento Validação Análise Validação Projeto Preliminar Validação Projeto Detalhado Validação Codificação Modelo Cascata (Bohem - 1976) Validação Operação Validação Implantação Validação 13

Proposto por Barry Boehm Modelo Espiral Há várias versões do modelo será apresentada uma visão genérica Adota um Processo Iterativo cada iteração compõe-se de 4 etapas: (1) Inicialização do Processo de Desenvolvimento (2) Avaliação de Alternativas (3) Desenvolvimento do Produto (4) Planejamento do Desenvolvimento (continuidade e finalização) Cada iteração resulta em uma versão do sistema (refinamentos sucessivos) 14

Inicialização Avaliação Determinar objetivos, alternativas e restrições Avaliar alternativas, identificar e resolver riscos Decisão de prosseguir ou não Planejar as próximas fases Planejamento Desenvolver, verificar próximo nível do produto Desenvolvimento Modelo Espiral - (Boehm 1980) 15

Outras Abordagens de Desenvolvimento de Sistemas de Informação Desenvolvimento Rápido (RAD): prototipação do sistema, com uso de ferramenta Metodologias Ágeis Programação Extrema (xp - extreme Programming) 16

Desenvolvimento Rápido (RAD) - Prototipação Reduz o tempo de desenvolvimento do sistema Requer: participação intensiva do usuário, uso de ferramentas CASE, geradores de código, etc. Enfatiza a criação de boas Interfaces Humano- Computador (IHC) Menor preocupação com aspectos de desempenho do sistema 17

Fim Início Coleta e refinamento dos requisitos Engenharia do produto Projeto rápido Refinamento do protótipo Avaliação do protótipo pelo cliente Construção do protótipo Prototipação 18

Metodologias Ágeis Enfocam o desenvolvimento de sistemas como um processo fluido, dinêmico e não previsível totalmente Assumem 3 princípios básicos: - É um processo mais adaptativo do que preditivo - Enfatiza mais as pessoas (usuários) do que os papéis que estas desempenhanham na organização - Atividades de desenvolvimento são auto-adaptativas 19

Programação Extrema (xp) O desenvolvimento do sistema é feito por meio de ciclos curtos e incrementais Os testes são realizados automaticamente e ao longo de todo o desenvolvimento Utiliza a programação pareada os programadores trabalham em duplas, alternando atividades de codificação e de teste - codificar, testar, ouvir, projetar Vantagens: - Communicatção intensa entre desenvolvedores - Alto nível de produtividade - Código de alta qualidade 20

Análise e Projeto Orientado a Objeto (OOAD) Especifica o sistema com base em objetos relacionados ao problema e não em funções ou dados Conceitos da Orientação a Objetos: - Objeto - estrutura que inclui atributos e comportamentos de uma entidade existente no mundo real - Classe - agrupamento lógico de objetos que compartilham os mesmos atributos e comportamentos - Herança - permite que subclasses herdem propriedades de super classes 21

Rational Unified Process (RUP) Metodologia de desenvolvimento de sistemas orientada a objetos Utiliza a notação UML (Unified Modeling Language) para especificar, projetar e documentar o sistema Fases do desenvolvimento em RUP: - Concepção - ênfase no escopo do sistema - Elaboração - ênfase na arquitetura - Construção - ênfase no desenvolvimento - Transição - ênfase na implantação Cada fase pode incluir duas ou mais iterações. 22

Metodologia RUP 23

Ferramentas de Software Computer-Aided Software Engineering (CASE) Ferramentas de diagramação - permitem a modelagem gráfica do sistema Geradores de Relatório - apóiam a documentação da análise e projeto Ferramentas de Análise checam a c onsistência entre diagramas, formulários e relatórios Repositório central - permite armazenar diagramas, arquivos de dados, relatórios, etc. Geradores de Código produzem códigos de programas e bancos de dados automaticamente, a partir de especificações 24

Tela do ArgoUML - Ferramenta CASE de código aberto (http://argouml.tigris.org/) 25

Abordagem seguida no Curso Neste curso, será adotada a Metodologia de Análise e Projeto Estruturado, A Metodologia se adequa aos princípios de: - Análise e Projeto Top-Down, com Refinamentos Sucessivos - Ciclo de Vida de Desenvolvimento (SDLC) - Especificação Orientada a Funções O uso de Ferramentas CASE é fundamental para a geração de projetos corretos, completos e confiáveis 26