Download - Modelagem de SI - Unid 3

Transcript
Page 1: Modelagem de SI - Unid 3

21

MODELAGEM DE SISTEMAS DE INFORMAÇÃO

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

Unidade III

5

10

4 CICLO DE VIDA DE SISTEMAS

Um software geralmente vive como criança, tendo em média um ciclo de vida de cinco anos – isto quando não sofre implementações.

Um ciclo abrange as seguintes fases:

• concepção: nascimento do software;

• construção: análise e programação;

• implantação: testes e disponibilização aos clientes e/ou usuários;

• implementações: ajustes pós-implantação;

• maturidade: software sedimentado;

• declínio: dificuldade de continuidade;

• manutenção: tentativa de sobrevivência;

• morte: descontinuidade do software.

Concep

ção

Constr

ução

Impla

ntaçã

o

Imple

mentaç

ões

Maturid

ade

Declíni

o

Manute

nção

Morte

Page 2: Modelagem de SI - Unid 3

22

Unidade III

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

Segundo Yourdon (1989), o ciclo de vida de desenvolvimento de um software segue as fases:

• estudo de viabilidade;

• análise de sistemas;

• projeto;

• implementação;

• geração de teste de aceite;

• garantia de qualidade;

• descrição de procedimentos;

• conversão de banco de dados;

• instalação.

4.1 Manutenção do software

Mudanças são inevitáveis quando se constroem sistemas baseados em computadores e pessoas, e principalmente com interferências políticas, científicas e atualidades.

Dentro da manutenção podemos dividir alguns tipos:

4.1.1 Manutenção por legislação

Quando o software requer alguma alteração ou ajuste em decorrência de aspectos legais.

4.1.2 Manutenção por melhoria ou implementação

Quando o software necessita de ajustes para otimização dos processos e agregação de valor.

4.1.3 Manutenção por correções de erros

Quando o software necessita de correções para eliminar erros, manutenção considerada problemática.

5

10

15

20

Page 3: Modelagem de SI - Unid 3

23

MODELAGEM DE SISTEMAS DE INFORMAÇÃO

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

4.1.4 Manutenção preventiva

Quando há necessidade de modificação para melhorar a confiabilidade ou uma manutenção de ajustes futuros.

4.2 Engenharia reversa

Surge a partir de encontrar e entender o que consta dentro da caixa preta do sistema, ou seja, descobrir e entender os segredos do software em questão, fazer o processo de traz para frente, recuperar as especificações, documentação, arquitetura de dados, todo o levantamento do que já foi construído e documentado para poder reescrever se necessário.

A engenharia reversa também pode ser elaborada na criação de novos sistemas a partir de sistemas antigos, quando normatizam todos os seus depósitos de dados (Heuser, 2000).

A reengenharia não só recupera os dados como também utiliza suas informações para construção de inovações para softwares já existentes.

5 ENGENHARIA DE SOFTWARE

Engenharia de software vem da arte da construção, com base no conhecimento científico e empírico adequado ao atendimento das necessidades humanas.

Ela é uma metodologia de desenvolvimento e manutenção de sistemas modulares com algumas características:

• roteiro dinâmico, integrado e inteligente;

• adequação de requisitos funcionais do negócio do cliente;

• efetivação dos padrões de qualidade e produtividade;

5

10

15

20

Page 4: Modelagem de SI - Unid 3

24

Unidade III

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

• planejamento e gestão de atividades.

Engenharia de software é a aplicação sistemática, disciplinada e com abordagem quantitativa para o desenvolvimento, operação e manutenção de software (IEEE, 1990).

O método de engenharia de software proporciona os detalhes de como fazer para construir software. Para isso são necessários:

• planejamento;

• estimativa;

• análise de requisitos;

• projeto da estrutura de dados;

• arquitetura de programa e algoritmo, codificação, teste e manutenção.

Além do método, a engenharia possui apoio automatizado ou semiautomatizado aos métodos, com o uso de técnicas como CASE, CAB, análise estruturada, orientação a objetos, banco de dados, linguagens de programação etc.

E para fazer um elo dos métodos e das ferramentas de engenharia de software e possibilitar o desenvolvimento racional e oportuno do software, são utilizados os procedimentos de engenharia de software.

Define a sequência em que os métodos serão aplicados, os produtos a serem entregues e os controles de qualidade.

Podemos concluir neste momento que a engenharia de software é a metodologia para o desenvolvimento de solução em software, um roteiro que pode utilizar diversas técnicas.

5

10

15

20

25

Page 5: Modelagem de SI - Unid 3

25

MODELAGEM DE SISTEMAS DE INFORMAÇÃO

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

5.1 Objetivos da engenharia de software

• Aprimoramento da qualidade dos produtos de software.

• Aumento da produtividade dos engenheiros de software.

• Atendimento dos requisitos com eficiência e efetividade.

O objetivo central da engenharia de software é a qualidade em qualquer dos pontos citados, vemos que está diretamente ligado a padronização com qualidade dos softwares desenvolvidos ou em desenvolvimento.

5.2 Fundamentos da engenharia de software

A engenharia de software também é baseada em algumas matérias interdisciplinares; segundo Maffeo (1992), podemos citar as seguintes:

5.2.1 Ciência da computação

É dela que provêm os fundamentos científicos da engenharia de software de modo análogo que vem da física e da química.

Estes fundamentos são a base tecnológica do engenheiro de software, pois abrange arquitetura de computadores, lógica de programação, estrutura de dados, algoritmos e outros.

5.2.2 Administração e projetos

Diretamente ligada ao gerenciamento de projetos de desenvolvimento de software (cronogramas, estimativas, atividade de planejamento, estrutura organizacional), transformando, assim, o engenheiro de software em um gestor do projeto (administrando equipe, atividades, prazos e custos).

5

10

15

20

Page 6: Modelagem de SI - Unid 3

26

Unidade III

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

5.2.3 Comunicação

Atividade de extrema importância para a engenharia de software. A necessidade de comunicação interpessoal escrita e/ou oral é imprescindível para o andamento do desenvolvimento do sistema.

É por meio dela que, como dito anteriormente, o gestor administra seus recursos humanos, prazos, podendo envolver diversos interlocutores e/ou pessoas chaves ao sistema.

5.2.4 Técnica de solução de problemas

Um engenheiro de software é conhecido como um solucionador de problemas, um gerador de soluções integradas e inteligentes, isto se referindo à construção, à implantação ou à manutenção de produtos tecnológicos.

Tais técnicas devem gerar base para as atividades de planejamento, gerenciamento, análise, design ou protótipos, desenvolvimento, implantação, validação e manutenção contínua.

Ter uma escolha consciente de ferramentas e métodos apropriados para cada atividade realizada.

De forma geral, desenvolver software envolve não só escrever um programa de computador, e sim duas vertentes: a tecnologia que engloba o desenvolvimento real do sistema e a gerencial, que tem a abordagem de acompanhar o cronograma, equipe, o desenrolar do projeto em si.

5.3 A importância da engenharia de software

O software deve ser desenvolvido e distribuído com inteligência embutida, padrões visuais, seguindo as necessidades do usuário e/ou cliente, modulares e em redes complexas.

5

10

15

20

25

Page 7: Modelagem de SI - Unid 3

27

MODELAGEM DE SISTEMAS DE INFORMAÇÃO

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

Deve ter sempre o foco no negócio e com o objetivo principal de auxiliar os processos de tomada de decisão estratégicos, gerenciais e operacionais.

5.4 Aplicação de software

Um sistema ou software pode ser aplicado a todo e qualquer negócio e/ou situação, desde que o mesmo seja mapeado com os envolvidos usuários e/ou clientes previamente e seja gerando a documentação bem como os desenhos de diagramas e /ou fluxos, protótipos etc.

5.4.1 Software básico

Conjunto de programas com o objetivo de dar apoio a outros programas. Como compiladores, editores, gerenciadores de arquivos, drives.

5.4.2 Software em tempo real

Um software que monitora, analisa, controla eventos em tempo real.

5.4.3 Software comercial

O processamento de informações comerciais, reestruturação dos dados de forma que facilitam as operações e a tomada de decisão, tais como: folha de pagamento, contas a pagar, processamento de transações em ponto de venda.

5.4.4 Software científico e de engenharia

Caracterizado por algoritmos de processamento de números, utilizado em astronomia, mecânica automotiva, biologia molecular e outros.

5

10

15

20

Page 8: Modelagem de SI - Unid 3

28

Unidade III

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

5.4.5 Software embutido

Reside na memória só de leitura e é usado para controlar produtos e sistemas industriais e de consumo como exemplo temos funções digitais em automóvel como controle de combustível, mostradores no painel.

5.4.6 Software de computador pessoal

São os softwares de contínua inovação no projeto de interface com seres humanos. Tendo uma constância na sua evolução e criação. Software estes como planilhas, editores de texto, diversões, aplicações financeiras pessoais, etc.

5.4.7 Software modelo espiral

Desenvolvido para abranger os melhores pontos de um ciclo de vida de projeto, planejamento, análise de riscos, engenharia ou desenvolvimento do produto, avaliação.

5.4.8 Software com linguagem 4ª geração

4GL é um conjunto de ferramentas de software que possibilita ao desenvolvedor especificar o software em um nível mais elevado.

O uso do 4GL segue um ciclo de vida diferenciado:

• coleta de requisitos;

• estratégia do projeto;

• implantação usando 4GL;

• testes.

5

10

15

Page 9: Modelagem de SI - Unid 3

29

MODELAGEM DE SISTEMAS DE INFORMAÇÃO

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

5.4.9 Software educacional

Tem como objetivo auxiliar o aprendizado e contribuir para a educação geral. Englobam sistemas de multimídia interativa ou não, software de entretenimento, livros eletrônicos etc.

5.4.10 Software de tutores inteligentes

Programas que projetam técnicas de comunidade de inteligência artificial, chamada também de ciência cognitiva.

5.4.11 Software de gestão empresarial

São softwares que integram todas as funções da empresa gerando uma base única de dados de onde provem informações operacionais e gerenciais. O Enterprise Resources Planning (ERP) é um deles.

5.4.12 Software SIG – Sistema de Informações Gerenciais

Fornecem informações para a tomada de decisão

5.4.13 Software SAD – Sistema de Apoio a Decisão

Fornecem informações a serem utilizadas pelos usuários na tomada de decisão.

5.4.14 Software EIS – Executive Information System

Fornecem informações de forma simples e amigável para os executivos de alto nível, permitindo o acompanhamento diário.

5.5 Engenheiro de software

5.5.1 Quem é

Um profissional que desenvolve soluções utilizando recursos de software, seguindo os requisitos previamente levantados,

5

10

15

Page 10: Modelagem de SI - Unid 3

30

Unidade III

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

observando as necessidades do cliente e/ou usuário e principalmente observando e seguindo os padrões de qualidade requeridos.

5.5.2 O que preciso

Este profissional vem da área de tecnologia ou de ciências da computação.

5.5.3 Habilidades necessárias

Deve possuir métodos definidos para o desenvolvimento de software:

• muita dedicação;

• domínio das ferramentas;

• disposição para constante aprendizado;

• disponibilidade para se reciclar em conhecimentos;

• conhecimentos do negócio;

• criatividade;

• conceitos e vivência em qualidade.

5.6 Diagramação de software

A diagramação de software pode ser realizada de diversas formas a partir da definição e a utilização de uma metodologia de desenvolvimento de software.

5.7 Fluxogramas

Muito utilizado pelos analistas de processos ou antigos analistas de OM, principalmente para documentar processos de negócio, administrativos e industriais. Não recomendado para a engenharia, por não possuir uma especificação estruturada.

5

10

15

20

Page 11: Modelagem de SI - Unid 3

31

MODELAGEM DE SISTEMAS DE INFORMAÇÃO

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

Início

Entrada de dados

Transformação

Dados corretos

Imprime

Fim

5.8 Diagrama de fluxo de dados (DFD)

Ferramenta de diagramação de software que possui diversos níveis, cada um deles com características específicas.

5.8.1 Diagrama de fluxo de dados

• Imagem do sistema;

• modelo da organização;

• apresentação em etapas com aumento gradativo de detalhes;

• modularização;

• hierarquização.

5

Page 12: Modelagem de SI - Unid 3

32

Unidade III

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

5.8.2 DFD nível 0

• Visualização do todo;

• macroprocessos visíveis;

• apresentação das entidades externas, fluxo de dados e deposito de dados principais.

5.8.3 DFD nível 1

• Explosão do nível zero;

• maiores detalhes, mais completo;

• possui tratamento de exceções.

5.8.4 Diagrama de contexto

• Visão global;

• desenha o ambiente;

• representado pelas entidades externas e macrofluxos;

• um único macroprocesso;

• sem depósito de dados.

5.9 Simbologias

5.9.1 Entidades externas

Objetos que representam origem ou destino de dados são representações de pessoas (físicas ou jurídicas), sistemas, departamentos ou unidades de negócio. Desenhados conforme figura abaixo:

X – letra para identificaçãoNome – nome da entidade (cliente, sistema)

5

10

15

Page 13: Modelagem de SI - Unid 3

33

MODELAGEM DE SISTEMAS DE INFORMAÇÃO

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

X

Nome

5.9.2 Fluxo de dados

É o meio por onde as informações trafegam. Neste caso, sempre envolvem processos, pois não é possível enviar de uma entidade para outra entidade, entidade para depósito de dados e vice-versa ou, ainda, de depósito de dados para depósito de dados.

Para o desenho, temos as seguintes regras:

Nome – nome do dado (comandos, solicitação de pedidos).Arg – argumento de acesso a um depósito de dados quando

conhecido (CPF, código).

Nome

arg

5.9.3 Processos

São os módulos do sistema que se transformam em fluxo de dados numa atividade. Para facilitar o desenho do processo, deve-se levantar o máximo de requisitos funcionais possível para o sistema que será desenvolvido.

Para o desenho, temos as seguintes regras:

Nr – número de referência do processo (nível 0 ou 1 = 1,2,3 e demais níveis 1.1,1.2).

5

10

15

Page 14: Modelagem de SI - Unid 3

34

Unidade III

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

Função ou nome – descrição do processo no verbo infinitivo (registrar, tratar, gerar relatórios).

Loc – local físico onde o processo ocorre (área financeira, departamento de contabilidade).

Nr.

Nome

loc

5.9.4 Depósito de dados

Local no qual são armazenados os dados ou as informações; são arquivos proprietários. Podemos considerar como depósito de dados três tipos de arquivo:

Cadastral – cliente, fornecedores, itens, produtos.

De movimento – que é a junção de dois depósitos: movimento de caixa, movimento financeiro.

Tabelas – que contêm domínios geralmente com dois campos: tabela de classe, tabela de tipo, tabela de cidade.

Para o desenho, temos as seguintes regras:

Dn – número do depósito (nível 0 e/ou1 = D1,D2).

Nome – nome do depósito (cliente, contas a pagar).

|| duplicação ou repetição do depósito no desenho.

Dn Nome Dn Nome

5

10

15

Page 15: Modelagem de SI - Unid 3

35

MODELAGEM DE SISTEMAS DE INFORMAÇÃO

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

Não temos uma regra ou modelo definido para a elaboração de um DFD, porém, podemos utilizar como sugestão para elaboração e construção dos desenhos do DFD alguns passos:

• identificar e enumerar os requisitos funcionais;

• identificar as entidades externas;

• associar ao fluxo de dados as entidades externas que recebem e/ou enviam dados destas;

• identificar as manipulações dos depósitos de dados e associá-los às respectivas entidades.

Ao desenhar o primeiro DFD, procurar sempre:

• iniciar do lado esquerdo com a entidade externa principal;

• preferencialmente deixar todas as entidades externas nos cantos (à esquerda as de origem e à direita as de destino);

• desenhar somente fluxos necessários;

• não se preocupar ainda com o começo e o fim do sistema;

• não numerar os processos neste momento;

• verificar se todas as entradas e saídas foram incluídas;

• associar manipulações necessárias a depósitos de dados;

• redesenhar o DFD minimizando a interseções;

• discutir com o cliente e anotar as mudanças necessárias;

• explodir ou derivar os processos complexos em níveis inferiores.

O importante na elaboração de um DFD é lembrar o princípio básico de processamento de dados:

5

10

15

20

25

Page 16: Modelagem de SI - Unid 3

36

Unidade III

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

Entrada SaídaSaídaSaídaProcessamento

Todo o DFD parte desse pressuposto básico e a partir dele se constrói um diagrama de fluxo de dados com qualidade, coerência e de forma concisa.

5.10 Diagrama de Entidade-Relacionamento (DER)

Este diagrama representa os objetos de dados e seus relacionamentos, desta forma cada entidade termina representada pelo menos por uma tabela de dados e geralmente é expressa em um depósito de dados do DFD. A utilidade principal é mostrar as coisas importantes que a empresa tem e quais são importantes armazenar e, além disso, como elas se relacionam entre si.

O DER é uma técnica de modelagem de dados que pode ser utilizada em conjunto com outras técnicas de diagramas de software direcionadas ao desenvolvimento de sistemas.

O desenho para os objetos de dados é o retângulo rotulado, e para os relacionamentos, utiliza-se o losango:

Fabricante Constrói Carro

5.10.1 Relacionamento 1:1 (um para um)

Quando cada departamento é gerenciado por apenas um gerente, e cada gerência possui apenas um departamento.

Departamento Gerência

5

10

15

Page 17: Modelagem de SI - Unid 3

37

MODELAGEM DE SISTEMAS DE INFORMAÇÃO

Revi

são:

Níz

ia -

Dia

gram

ação

: Fab

io -

16/

03/1

0

5.10.2 Relacionamento 1: muitos (um para muitos)

Cada venda envolve um ou mais itens, e cada item de venda é parte de apenas uma venda.

Venda Itens de venda

5.10.3 Relacionamento muitos: muitos (muitos para muitos)

Cada fornecedor fornece um ou mais produtos, e cada produto é fornecido por um ou mais fornecedores.

Fornecedor Produto

5.10.4 Entidade de interseção

É quando uma terceira entidade estabelece relações.

Fornecedor Origem do produto Produto

5