Buscar

Introducao_a_Analise_de_Sistemas_e_Eng_de_Software

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Análise e 
Projeto de 
Sistemas I
Introdução a 
Engenharia de 
Software / Análise 
de Sistemas
Prof. Eduardo 
Siqueira Martins
Análise de Sistemas
Importância
� Estudo do problema e de 
suas possibilidades de 
solução
� Interação com o usuário 
final para adequação do 
sistema as suas 
necessidades
� Especificação da solução 
mais indicada
� Avaliação prévia do custo-
benefício
� Análise da viabilidade de 
implantação
� Flexibilidade para desvios 
de rota sem grandes 
prejuízos
� Documentação de todo o 
processo
2
Objetivos Específicos
• Identificar as necessidades
dos usuários
• Avaliar a concepção do
sistema quanto à sua
exeqüibilidade (que se
pode executar)
• Executar análise econômica
e técnica
• Atribuir funções ao
hardware, ao software, às
pessoas, ao banco de
dados e aos demais
elementos do sistema
• Estabelecer restrições de
prazo e custo
• Criar uma definição do
sistema que constitua a
base para todo trabalho
subseqüente (incremental)
Principais Questões
� A maioria dos profissionais reconhece que o 
tempo e o esforço despendidos na análise 
de sistemas é vantajoso?
� Quanto esforço deve ser despendido na 
análise e definição de sistemas?
� O tamanho e complexidade do sistema, 
área de aplicação, usuário final e 
obrigações contratuais são apenas 
algumas das muitas variáveis que afetam 
o esforço de análise global
� Regra empírica: 10 a 20% do esforço 
aplicados na análise
3
Principais Questões
� Por que é tão difícil?
� Um conceito nebuloso deve ser transformado num 
conjunto de elementos concretos (a comunicação é 
elevada durante a análise, surgem oportunidades 
para desentendimento, inconsistência e erros)
� A percepção do sistema pode modificar-se à 
medida que a atividade progride, invalidando 
trabalho anterior 
� Quem o faz?
� Um analista experiente deve dirigir a maioria das 
tarefas (o analista trabalha em conjunto com o 
pessoal administrativo e técnico do cliente e com a 
equipe de desenvolvimento do sistema)
� Para projetos muito grandes, uma equipe pode ser 
formada para dirigir cada tarefa de análise
4
Pessoas envolvidas 
na Análise
� Usuários: pessoas para quem o sistema está sendo 
construído
� operadores
� supervisores
� executivos
� Analistas de Sistemas: pessoas responsáveis pela 
especificação do sistema
� Programadores: pessoas responsáveis pela 
implementação, em uma linguagem de 
programação específica, da especificação 
gerada pelos Analistas de Sistemas
� Administradores de Dados: Responsáveis pela 
gestão dos dados da aplicação
5
O Analista de Sistemas
� Participa do processo de Desenvolvimento de Software
� Interage diretamente com o usuário, levantando as suas 
necessidades
� Especifica O QUE DEVE ser feito
� Deve estudar e entender o negócio e a missão da 
empresa
� Capacidade de absorver fatos pertinentes a partir de 
fontes conflitantes ou confusas
� Capacidade de se comunicar bem de forma escrita e 
verbal
� Capacidade de "ver a floresta ao invés das árvores”
� É o responsável pelo desenvolvimento de uma 
Especificação de Requisitos de Software e participa de 
todas as revisões
� Estuda a viabilidade do sistema
� Técnica, Financeira, Prazos (Viabilidade Técnica, 
Viabilidade Econômica, Definição de Cronograma, 
Alternativas)
6
O Analista de Sistemas
� Pode sugerir diferenciais competitivos com a 
informática
� Capacidade para compreender conceitos 
abstratos, reorganizar esses conceitos em 
divisões lógicas e sintetizar "soluções" baseado 
em cada divisão
� Trata a complexidade do problema por níveis 
de abstração
7
• Utiliza metodologias de fácil compreensão do
usuário para especificar o sistema a ser
implementado
Perfil do 
Analista
8
Conhecimentos 
Técnicos 
do Analista
• Metodologias de Análise
• Modelagem de Dados
• Planejamento e Gerência
de Projetos
• Engenharia de Software
• Administração
• Tecnologias Emergentes
Ferramentas de Análise
9
Ciclo de Trabalho do 
Analista
� Modelagem das Funções do Sistema
� Análise Estruturada
� Diagrama de Fluxo de Dados
� Diagrama de Contexto
� Dicionário de Dados
� Modelagem de Dados Armazenados
� Diagrama de Entidades e Relacionamentos
� Entidades
� Relacionamentos
� Análise e Projeto Orientado a Objetos
Introdução
�Como você desenvolve 
software hoje?
�Crise do software (crise de 
qualidade, prazos e custos)
�Engenharia Civil x Engenharia de 
Softwares: Pedreiro / Programador –
Engenheiro Civil /Analista de Sistemas
�Contexto: software de porte
considerável e de
responsabilidade, não “software
de padaria” (pequenos
programas feitos em poucos
dias)
Tipos de Software
�O que é software?
� Produto
�Documentação (do sistema e do 
usuário)
�Arquivos de configuração
�Tipos de software
�Genéricos (software de 
prateleira)
� Produtos sob encomenda 
(específicos / personalizados)
Processos
� Objetivo: desenvolvimento de
softwares de forma sistemática (não
artística).
� Processo: conjunto de passos
parcialmente ordenados, constituído
por atividades, métodos, práticas e
transformações usadas para atingir
uma meta (documentos, modelos,
produtos, etc).
� Ex.:Praxis, Rup, Processo Unificado.
� Um processo deve detalhar:
- O que deve ser feito
- Quando
- Por quem
- O que usa
- O que deve ser produzido
� Algumas empresas fazem seus próprios
processos
Projeto de Software
�O desenvolvimento de um 
software é feito dentro de um 
projeto. 
�Todo projeto tem:
- Data de início;
- Data de fim;
- Uma equipe.
- Um responsável (gerente de 
projetos)
- Outros recursos
�Um projeto bem definido tem 
subdivisões que permitem 
avaliar seu progresso e corrigir 
seus rumos
Projeto de Software
Planejamento do Projeto:
• Processo;
• Cronograma;
• Documentação;
• Pessoas;
• Recursos computacionais: 
Hardware e Software;
• Riscos: 
� Ex.: Tecnologia desconhecida;
� Possibilidade de mudança dos 
requisitos;
� Possibilidade de mudança da equipe;
• Controle de Qualidade.
Etapas de um sistema
Etapas para o desenvolvimento de 
sistema:
� Antes de iniciar o desenvolvimento:
elaborar uma proposta de
desenvolvimento.
� Objetivos, funcionalidades, prazos e 
custos
� No inicio do desenvolvimento:
elaborar o planejamento do projeto.
� Desenvolvimento:
� Especificação de requisitos;
� Análise de requisitos;
� Projeto;
� Implementação ou codificação;
� Testes.
� Após o desenvolvimento:
manutenção.
Ferramentas Case
�CASE (Computer-Aided Software 
Engeneering): ferramentas para 
auxiliar nas etapas de 
desenvolvimento de sistemas
�Agilizam e automatizam várias 
atividades:
� Gerência do projeto (planejamento, 
estimativas, controle de versões);
� Modelagem do sistema (Ex.: Rational 
Rose, Poseidon, Jude, Microsoft Visio, 
Umbrello);
� Modelagem do banco de dados (Ex.: 
Case Studio, ERWin);
� Nos testes do sistema, prototipação, 
entre outras tarefas.
Mensagem
Tempo
Requisitos
Análise
Desenho
Implementação
Testes
Implantação
Correções
Resultados
“Se tivesse seis horas para derrubar uma 
árvore, eu passaria as primeiras quatro 
horas afinando o machado” (Abraham 
Lincoln) 
•Desenvolver software não é só codificação

Outros materiais