********************************************* ********** ANL - Roteiro Estudo P1 ********** ********************************************* Versão : 04/07/2007 Professor: Wagner Toscano Autor : Leandro Salvador ( leandrosalvador.com.br ) * Possíveis Questões de Prova - relação entre informação e dado - dado é um registro de fatos, conceitos ou instruções que os seres humanos entendem - informação é um conjunto de dados que os seres humanos assimilam e interpretam para resolver um problema ou tomar uma decisão - quando solicitam um sistema as empresas visam - aumentar a qualidade, reduzir os custos de soluções baseadas em computador e, principalmente, lucrar - denominação dada à produção de um sistema - desenvolvimento de sistemas - problemas na época em que os programas eram feitos artesanalmente - só os iniciados conseguiam entender a arte - o mundo dos programas ficou fechado - muito tempo para os programas serem concluídos - custos muito elevados - erros eram descobertos após entregar o programa ao cliente - dificuldade em medir o progresso durante o desenvolvimento do programa - principais etapas que existem no processo de construção de algo - análise - projeto - construção - testes - atividades envolvidas no desenvolvimento de sistemas - especificação - estudo - análise - projeto - implementação - simulação - implantação - operação (posterior ao desenvolvimento) - manutenção (posterior ao desenvolvimento) - problemas encontrados no desenvolvimento de sistemas - produtividade da equipe - só medido após o início dos trabalhos - segurança dos dados - correção da especificação - se informada ao cliente assusta - confiabilidade do sistema - hardware - manutenabilidade do código fonte - desempenho do sistema - portabilidade do sistema - metodologia - definição - conjunto de padrões pré-estabelecidos - objetivo - orientar e ordenar o desenvolvimento de sistemas - fases de trabalho - técnicas adotadas em cada fase - pontos de controle - ferramentas utilizadas por cada técnica - padrões de qualidade - modelos produzidos por cada ferramenta - pessoal envolvido - análise de sistemas - objetivo - determinar qual deve ser a solução sistêmica para atendimento aos requisitos dos usuários - técnica - abordagens - ferramentas - análise tradicional - funcional - textos, fluxogramas - análise estruturada - funcional, dados - DFD, DD, DED, MINIESPEC, normalização - análise essencial - funcional, dados, controle - DFD, DD, DED, DER, DTE, MINIESPEC, eventos - análise orientada a objeto - funcional, dados, controle - modelos, diagramas - ciclo de vida - definição - corresponde às fases e atividades contidas em uma metodologia - estudo - diálogo - estimativa de custo - estudo de viabilidade - especifica problemas - levanta informação - análise - o software faz parte de um sistema mais amplo - os trabalhos iniciam-se com o estabelecimento de requisitos para todos os elementos do sistema e prossegue com a atribuição de certo subconjunto desses requisitos ao software - projeto - pseudocódigo - identifica a qualidade antes de iniciar a codificação - o projeto documentado torna-se parte da configuração do software - um processo de múltiplos passos que se concentra em quatro atributos distintos do programa - estrutura de dados - arquitetura de software - detalhes procedimentais - caracterização de interfaces - implementação - codificação - consiste em traduzir em forma legível para máquina - se o projeto foi executado detalhadamente, a codificação pode ser automática - modelo de implementação - diagrama de transição de dados - prototipação da interface - detalhes da implementação - simulação/testes - concentra-se nos aspectos lógicos internos do software - garante que todas as funções tenham sido testadas - concentra-se nos aspectos funcionais externos - realiza testes para descobrir erros - garante que a entrada definida produza resultados reais que concordem com os resultados exigidos - implantação/manutenção - mudanças depois de entregue ao cliente - a não ser que seja software embutido - são causadas por erros, pois foi adaptado, alterado, incrementado ou decrementado de funções ou desempenho - reaplica cada uma das etapas precedentes de ciclo de vida a um programa existente e não a um novo - problemas da aplicação do ciclo de vida - raramente os projetos seguem o fluxo seqüencial que o modelo propões - algumas iterações sempre ocorrem e trazem problemas na aplicação do paradigma - o cliente não declara todos os requisitos explicitamente - o ciclo de vida clássico exige isso - o cliente não tem paciência - paradigma da prototipação - definição - capacita o desenvolvedor a criar um modelo de software que será implantado - possibilita um mecanismo de identificação dos requisitos - etapas - coleta e refinamento dos requisitos - projeto rápido - construção do protótipo - avaliação do protótipo pelo cliente - refinamento do protótipo - engenharia do produto - características de um sistema após seu término de desenvolvimento - primeiro sistema construído dificilmente é utilizável - sistema lento, grande, desajeitado de uso - deve-se reconstruí-lo com mais habilidade - paradigma espiral - definição - procurou pegar o melhor do ciclo de vida clássico e da prototipação - acrescentou a análise de riscos - divisão - PERA - Planeja - Executa - Retrabalha - Avalia - planejamento - determinação dos objetivos - alternativas - restrições - coleta dos requisitos - planejamento do projeto - análise dos riscos - análises alternativas - identificação dos riscos - resolução dos riscos - análise de riscos baseada nos requisitos iniciais - análise de riscos baseada na reação do cliente - engenharia - desenvolvimento do produto no "nível seguinte" - protótipo de software inicial - protótipo no nível seguinte - sistema construído pela engenharia - avaliação feita pelo cliente - técnicas de quarta geração - ferramentas que geram códigos a partir da descrição do sistema - o ambiente de quarta geração inclui ferramentas - linguagens não procedimentais para consultas a banco de dados - geração de relatórios - manipulação de dados - interação - definição de telas - geração de códigos - capacidade gráfica de alto nível - capacidade de planilhas eletrônicas - tudo existe mas para aplicação em domínios muito específicos - etapas do ciclo de vida - coleta de requisitos - estratégia de projeto - implementação usando 4GL - testes - problemas encontrados - softwares produzidos são ineficientes - manutenabilidade de grandes sistemas é questionável - gerenciamento de projetos - definição - identifica quais informações tem de ser processadas - qual a função e desempenho desejados - quais interfaces devem ser estabelecidas - restrições de projeto existente - quais os critérios de validação exigidos para um sistema bem sucedido - identifica as exigências do sistema e do software - etapas - análise do sistema - define o papel de cada elemento num sistema baseado em computador - atribui o papel que o software desempenhará - tenta abstrair a realidade - planejamento do projeto de software - assim que o escopo do software é estabelecido - os riscos são analisados - os recursos alocados - os custos estimados - as tarefas e a programação de trabalho definidas - análise de requisitos - definição detalhada do domínio da informação e da função do software - levantamento de dados - primeiro passo para desenvolvimento de um sistema - não é levantar um dicionário do ambiente - é efetuar uma análise - termos de referências - área de ação - objetivos - recursos - restrições - informações básicas - organização - responsabilidade de tarefas - personalidades - linguagem - identificar os objetivos - saídas - identificar as restrições - entradas - entender o sistema existente - recursos - pessoal - equipamentos - dados - entradas - saídas - procedimentos - volume - quantidades - freqüências - exceções - tendências - controles - problemas - busca de fatos - RAD - Rapid Application Development - intereção direta entre desenvolvedor e usuário - faz-se protótipos do projeto utilizando ferramentas poderosas e produtivas - Pré-JAD - preparar material de apoio - preparar a equipe que executará o projeto - perparar as comunicações iniciais - preparar o local - preparar a logística necessária ao evento - agendar o compromisso - garantir que o mesmo não ultrapasse 4 horas - analisar o contexto envolvido - contatos de aproximação - antecipar o melhor patrocinador - prever quais as expectativas da empresa - definir o escopo e se preparar sobre o assunto - preparar o plano oficial e o contigencial - impublicável - JAD - levantar os objetivos - levantar os requisitos - identificar as unidades externas - montar o escopo do sistema - detalhar os fluxos de dados - relatar os grandes desafios - agendar o JAD de revisão - alertar sobre o ponto de congelamento - JAR Review - material deve estar pronto dois dias antes - propostas de solução - prazos e elasticidades - aceite formal - congelamento - agenda de apresentação do protótipo ----------//----------