0
Unidade IV
5
10
15
6 DIAGRAMA DE ESTRUTURA MODULAR (DEM) Este tipo de diagrama representa a segmentação de programas, software ou sistemas, em módulos mostrando hierarquias, organização e comunicação. Ferramenta gráfica ao mesmo tempo rigorosa também possui o lado flexível e funcional.
Ele mostra basicamente:
• o particionamento de um sistema em módulos; • a hierarquia e organização dos módulos;
• interface (entrada e saída) de comunicação dos módulos; • nomes e funções dos módulos.
6.1 Conceito de módulo
É composto por uma coleção de instruções de programas, e possui quatro atributos básicos:
• entrada e saída de dados; • função;
• lógica;
• dados internos.
6.1.1 Conexões e comunicação entre módulos
Elas ocorrem com duas simbologias: quadrados ou setas que significam módulo ou rotinas.
0
Módulo Rotina
6.2 Diagrama de Warnier
Retrata a lógica de construção de sistemas, utilizando a divisão de problemas ou programas em módulos, fazendo uso da simbologia de chaves:
Processo mestre { processo 1. { processo 1.1
{ processo 1.2
{ processo 2. { processo 2.1 { processo 2.2 6.3 Diagrama de PERT e CPM
Utilizado para a administração de projetos e desenvolvimento de tarefas em série e em paralelo. A rede de projetos amplia as possibilidades do quadro de barras, ilustrando a dependência uma das outras apresentando seus tempos iniciais e finais de forma real.
Exemplo: um projeto de construção civil dividido em fases ou atividades.
Atividades Tempo de horas
- raspagem --- pintura
---5
0 1 2 3 4 5 6 7 8
Atividades Atividades Atividades
1-2 raspar lado 1 3-5 raspar lado 3 6-7 primeira limpeza 2-3 raspar lado 2 4-6 pintar lado 2 7-8 última limpeza e finalizar 2-4 pintar lado 1 5-7 pintar lado 3
6.4 CAD, CAM e CASE
Estas ferramentas estão mais direcionadas para o gerenciamento de projetos de sistemas.
6.4.1 Computer Aided Design (CAD)
Conjunto de técnicas utilizadas para projetos de objetos, máquinas e outros; podemos chamar de projeto assistido por computador.
É um conjunto de programas que permite o cálculo, a otimização e desenhos de processos; requer o uso de impressoras tipo plotter.
6.4.2 Computer Aided Management (CAM)
Conjunto de técnicas utilizadas para gerenciar processos de dados automáticos; podemos chamar de gerência assistida por computador.
Utilizado geralmente na manufatura industrial como sequenciamento de operações de produção ou o planejamento
5
0 de matérias, é realizado através de um conjunto de programas
que permitem o processamento e a otimização de processos.
6.4.3 Computer Assisted/Aided Software Engineering (CASE)
Conjunto de técnicas facilitadoras de desenvolvimento de software moderno. Engenharia ou análise de sistemas assistida por computador.
Utilizam-se técnicas estruturadas para facilitar o trabalho dos engenheiros de software, possuem facilidades gráficas para o planejamento e o projeto de sistemas, tendo como especial a geração de diagramas pertinentes quando fornecido o dicionário de dados previamente.
6.5 Análise estruturada
A análise estruturada é uma técnica de efetivação de uma metodologia de desenvolvimento de software, bem como um conjunto de ferramentas orientando a construção de um software de forma estruturada.
Os principais objetivos de se elaborar uma análise estruturada são:
• reduzir os custos de manutenção; • aumentar a produtividade; • gerar sistemas impessoais; • aumentar a legibilidade;
• aumentar a flexibilidade dos sistemas.
Importância na utilização da análise estruturada: • diagramas compreensíveis;
5
10
15
0
• minimização de conflitos entre o conhecimento técnico de informática e o conhecimento do negócio em questão; • redução no numero de símbolos;
• reutilização de desenhos. Vantagens da análise estruturada: • fácil manutenção;
• modularidade;
• boa apresentação gráfica;
• diferenciação entre considerações lógicas e físicas; • fácil entendimento do sistema;
• capacidade de construção de um modelo lógico do sistema em estudo, antes de sua implementação física.
7 ESPECIFICAÇÃO LÓGICA
7.1 Árvore e tabelas de decisão
Em processos de complexidade relativa se utiliza este tipo de ferramenta.
Para elaborar uma árvore de decisão partimos dos seguintes itens:
• analisar as ambiguidades;
• relacionar as condições possíveis do processo; • relacionar as ações possíveis do processo; • dirimir dúvidas junto ao cliente e/ou usuário; • reescrever a narrativa;
• desenhar um trecho da árvore correspondente a cada sentença revista;
5
10
15
0 • revisar com o cliente e/ou usuário;
• determinar os resultados da tabela;
• preencher as colunas da condição com S (sim) e N (não). Modelo gráfico de uma árvore de decisão
C1 Ação 1 C2 Ação 2 C3 Ação 2
7.2 Português logicamente compacto
Ferramenta de especificação de processos mais direcionada para uso na fase de projeto lógico de um software, é uma linguagem natural estruturada. Possui algumas características como:
• as operações sequenciais são apresentadas como introdução;
• as estruturas apresentam-se com deslocamento vertebral que demonstram alinhamento;
• as condições “se” são apresentadas como “para”. Os casos podem ser apresentados como tabelas.
Destinada à especificação de um projeto lógico que posteriormente fará um projeto físico de sistemas.
7.3 Português estruturado
Ferramenta direcionada para uso em equipe multidisciplinar na fase lógica do projeto, linguagem natural estruturada destinada para especificação de projetos lógicos de sistema.
5
10
0
Algumas regras podem ser descritas: • Abrir Dn = abrir deposito de dados. • Acionar = chamar uma rotina.
• Adicionar= somar um contador ou uma variável. • Atribuir = atribuir valores a variáveis.
• Avançar = avançar para o próximo registro de um depósito de dados.
• Calcular = executar operações matemáticas. • Enviar = enviar dados para tela.
• Enquanto = para executar comandos de repetição com o teste no início.
• Eof = para indicar fim de depósitos de dados. • Executar = executar um processamento lógico. • Fechar Dn = fechar um depósito de dados aberto. • Finalizar= finalizar um processamento lógico.
• Gravar registro em Dn = gravar registro de um depósito de dados.
• Identificar = identificar variáveis.
• Imprimir = imprimir dados em impressora.
• Ler registro Dn = ler o registro de um depósito de dados. • Manipular = manter dados em uma tela (pelo usuário). • Mostrar = enviar mensagens pela tela ou a tela inteira. • Mover de – para = movimentar variáveis ou mensagens. • Posicionar = posicionar a lógica no registro específico. • Receber = receber dados a partir de uma tela.
• Repita = para executar comandos de repetição com o teste no fim. 5 10 15 20 25
0 • Retornar = retornar a lógica para um determinado local.
• Saltar pagina = saltar página de relatórios. • Se – então – senão = para estabelecer condições. • Teclar = para acionar um ícone de tela visual.
• Zerar contador = zerar contador de linha de impressão ou outros.
Estas regras podem ser adequadas conforme a necessidade do cliente para:
• menu;
• manter tabelas; • rotinas de cálculo; • rotinas de impressão.
8 ARQUITETURA DE SISTEMAS DE INFORMAÇÃO Arquitetura sempre vinculada à área de hardware, utilizando os princípios da arquitetura de construção civil, ela mostra a disposição e as conexões entre equipamentos, servidores e outros.
Esta mesma arquitetura pode ser utilizada em softwares levando em consideração a estrutura dos sistemas de informação, desde o planejamento estratégico até o armazenamento das informações.
Busca estabelecer um conjunto de elementos para possibilitar o mapeamento de desenvolvimento e/ou implantação de um sistema de informação em uma organização.
Os principais ganhos com a utilização da arquitetura de sistemas de informação são:
5
10
15
20
0
• economia de tempo;
• aprimorar as atividades de planejamento estratégico; • melhorar o desenvolvimento de sistemas de informação; • criar ordem e controle nos investimentos de recursos de
sistemas de informação;
• tornar mas eficiente a execução das atividades;
• fornecer clareza na comunicação entre os membros da organização.
• permitir integrar ferramentas e metodologia de desenvolvimento de sistemas;
• estabelecer credibilidade;
• fornecer vantagens competitivas.
8.1 Entrada e saída de informações
Conhecidos como projetos de I/O (input e output), é quem determina o ciclo natural de processamento de dados no sistema.
Para que um projeto de entrada e saída de dados tenha sucesso e seja elaborado com qualidade o esboço deve preferencialmente ser elaborado pelo cliente e/ou usuário, pois é ele o portador das informações necessárias.
Podemos utilizar padrões de codificação de campos para simplificar e padronizar o projeto, tais como:
9 – para números;
A – para dados alfabéticos X – para dados alfanuméricos 99/99/9999 – para datas 99:99 – para hora 5 10 15 20 25
0
8.2 Projeto de entrada
Consiste em transformação de dados inseridos pelo usuário em um computador, tornando informações como relatórios, documentos, ou mesmo um base de dados para consulta, isto é, apresentado ao usuário por meio de uma interface que pode ser chamada de “homem-máquina”.
Para o sucesso deste projeto, devemos levar em consideração os seguintes fatores:
• transformar o modo escrito para o modo computador; • conversão de dados para o processamento;
• necessidade de padronização das informações;
• resultado satisfatório ao cliente e não apenas nos desenhos em papel;
• função de arquivamento e saída, seguindo diretamente um fluxo;
• combinar facilidade de preenchimento e uso posterior; • eliminar tarefas redundantes ou duplicadas.
8.3 Características gerais
Para a seleção dos dados, devemos levar em consideração alguns fatores:
• origem dos dados; • forma de utilização;
• facilidade de preenchimento; • sequência lógica dos campos;
• volume e frequência de preenchimento; • coerência do formulário com a tela;
• minimizar a quantidade de campos a serem preenchidos;
5
10
15
20
0
• consolidar formulários semelhantes; • evitar ambiguidades;
• delimitar espaço para resposta;
• organizar o formulário para que ele possa ser preenchido facilmente;
• envolver o analista de processo e o analista de qualidade sempre que possível.
8.4 Codificação
As informações que serão armazenadas ou inseridas poderão ser feitas de duas maneiras: codificadas ou por extenso; esta escolha poderá ser feita pelo usuário em conjunto com o analista desenvolvedor. No caso de codificação existem alguns tipos:
8.4.1 Código sequencial
Utilizado com subdivisão de outros tipos de código.
8.4.2 Código em blocos
Utilizado para grupos de itens.
8.4.3 Código alfanumérico
Utilizado para classificação por itens/grupos.
8.4.4 Código automático
Utilizados em chapas ou cartões impressos. 8.5 Projeto de saída
Uma forma de comunicação com os usuários e/ou clientes no projeto de saída é uma forma de externar as informações já
5
10
0 Para sua elaboração, podemos utilizar os seguintes
dispositivos:
• vídeo: telas, projetores; • impressos: relatórios;
• digital: web, e-mail, pen drive;
• discos e fitas: backup, arquivos magnéticos; • telefone, fax.
8.6 Características
• Deve haver concordância entre o cliente e/ou usuário e o engenheiro de software.
• Respeitar limitações de hardware e software. • Propiciar bom efeito visual.
• Pontuar números, valores e quantidades.
• Eliminar dados e informações desnecessárias ao cliente e/ou usuário.
• Utilizar papel de tamanho adequado. 8.7 Relatórios
Os relatórios devem ser preferencialmente apresentados na tela para posteriormente serem impressos, evitando, desta maneira, impressão desnecessária.
8.8 Objetivos de engenharia de programas • Assegurar que os programas sejam construídos com boa
qualidade.
• Confiança nos resultados produzidos independentemente das condições de operações.
• Reduzir o tempo necessário para desenvolver programas com qualidade.
5
10
15
0
Glossário
*IEEE – Institute of Electrical and Electronic Enginnering ERP - Enterprise Resources Planning
Referências bibliográficas
BIO, S. R. Sistemas de informação: um enfoque gerencial. São Paulo: Atlas, 1993.
CAUTELA, A.; POLLONI, E. Sistemas de informação na administração de empresas. São Paulo: Atlas, 1993.
DAVENPORT, T. H. Reengenharia de processos. Rio de Janeiro: Campus, 1994.
DAVIS, W. S. Análise e projeto de sistemas. Rio de Janeiro: LTC, 1987.
MAFFEO, B. Engenharia de software e especificações de sistemas. Rio de Janeiro: Campus, 1992.
MILET, P. B.; MILET, E. B.; PEREIRA JUNIOR, P. J. Os princípios da qualidade total aplicada à informática. Rio de Janeiro: LTC, 1993.
PAGE-JONES, M. Projeto estruturado de sistemas. São Paulo: McGrawHill, 1998.
PRADO, D. Administrando projetos com PERT/Com. Rio de Janeiro: LTC, 1994.
REZENDE, D. A. Engenharia de software empresarial. Rio de Janeiro: Brasport, 1997.
YOURDON, E. Administrando o ciclo de vida do sistema. Rio de Janeiro: Campus, 1989.