Unidade III
MODELAGEM DE
SISTEMAS DE INFORMAÇÃO
Prof. Daniel Arthur Gennari Junior
Sobre esta aula
 Ciclo de Vida de Sistemas
 Engenharia de Software
 Aplicações de Software
 Diagramação de Software
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;
ti continua...
Ciclo de Vida de Sistemas
 implementações: ajustes pós-
implantação;
 maturidade: software sedimentado;
 declínio: dificuldade de continuidade;
 manutenção: tentativa de sobrevivência; manutenção: tentativa de sobrevivência;
 morte: descontinuidade do software.
Ciclo de Vida de Sistemas
Ciclo de Vida de Sistemas
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;g q ;
 descrição de procedimentos;
 conversão de banco de dados;
 instalação.
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:
 Manutenção por legislação: Quando o
software requer alguma alteração ou
ajuste em decorrência de aspectos
legais.
Manutenção do software
Manutenção por melhoria ou
implementação:
 Quando o software necessita de ajustes
para otimização dos
 processos e agregação de valor.p g g ç
 Manutenção por correções de erros:
 Quando o software necessita de
correções para eliminar erros,
manutenção considerada problemática.
Manutenção do software
Manutenção preventiva:
Quando há necessidade de modificação
para melhorar a confiabilidade ou uma
manutenção de ajustes futuros.
Interatividade
Quando o software requer alguma alteração
ou ajuste em decorrência de aspectos
legais, a qual tipo de manutenção refere-se:
a) Manutenção por legislação;
b) Manutenção por melhoria ou) ç p
implementação;
c) Manutenção por correções de erros;
d) Manutenção preventiva;
e) Manutenção corretiva;
Engenharia reversa
 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.
 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.
Engenharia 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.
 Engenharia de software é a aplicaçãog p ç
sistemática, disciplinada e com
abordagem quantitativa para o
desenvolvimento, operação e
manutenção de software
Engenharia Software
 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;
 planejamento e gestão de atividades planejamento e gestão de atividades.
Engenharia Software
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,
difi ã t t t ãcodificação, teste e manutenção.
Engenharia Software
 Objetivos da engenharia de software
 Aprimoramento da qualidade dos
produtos de software.
 Aumento da produtividade dos
engenheiros de software.g
 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ápontos citados, vemos que está
diretamente ligado a padronização com
qualidade dos softwares desenvolvidos
ou
 em desenvolvimento.
Fundamentos da engenharia de
software
A engenharia de software também é
baseada em algumas matérias
interdisciplinares, podemos citar as
seguintes:
 Ciência da computação
 Administração e projetos
 Comunicação
 Técnica de solução de problemas
Fundamentos da engenharia de
software
 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.
 Administração e projetos
 Diretamente ligada ao gerenciamento de
projetos de desenvolvimento de software
(cronogramas, estimativas, atividade de
planejamento, estrutura organizacional),p j , g ),
 transformando, assim, o engenheiro de
software em um gestor do projeto.
Fundamentos da engenharia de
software
 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.
 Técnica de solução de problemas
 Um engenheiro de software é conhecido
como um solucionador de problemas, um
gerador de soluções integradas eg ç g
inteligentes, isto se referindo à
construção, à implantação ou à
manutenção de produtos tecnológicos
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.
 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
Interatividade
Pode ser elaborada na criação de novos
sistemas a partir de sistemas antigos esta
afirmação refere-se:
a) Engenharia de software;
b) Engenharia de sistemas;) g ;
c) Engenharia reversa;
d) Engenharia inversa;
e) Engenharia transversa;
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 desenhosa documentação bem como os desenhos
de diagramas e /ou fluxos, protótipos
etc.
 Software básico
 Conjunto de programas com o objetivo
de dar apoio a outros programas. Como
compiladores, editores, gerenciadores
de arquivos, drives.
Aplicação de software
 Software em tempo real
 Um software que monitora, analisa,
controla eventos em tempo real.
 Software comercial
 O processamento de informações 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 pontop ç p
de venda
Aplicação de software
 Software científico e de engenharia
 Caracterizado por algoritmos de
processamento de números, utilizado em
astronomia, mecânica automotiva,
biologia molecular e outros.
 Software embutido
 Reside na memória só de leitura e é
usado para controlar produtos e
sistemas industriais e de consumo como
exemplo:p
 temos funções digitais em automóvel
como controle de combustível,
mostradores no painel
Aplicação de software
 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.
 Software modelo espiral
 Desenvolvido para abranger os melhores
pontos de um ciclo de vida de projetopontos de um ciclo de vida de projeto,
planejamento, análise de riscos,
engenharia ou desenvolvimento do
produto, avaliação.
Aplicação de software
 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.
 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.
Aplicação de software
 Software de tutores inteligentes
 Programas que projetam técnicas de
comunidade de inteligência artificial,
chamada também de ciência cognitiva.
 Software de gestão empresarialg p
 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 Resource Planning (ERP) ép g ( )
um deles.
Aplicação de software
 Software SIG
Fornecem informações para a tomada de
decisão
 Software SAD
Fornecem informações a serem
utilizadas pelos usuários na tomada de
decisão.
 Software EIS
Fornecem informações de forma simples
e amigável para os executivos de alto
nível, permitindo o acompanhamento
diário.
Interatividade
Tem como objetivo auxiliar o aprendizado e
contribuir para a educação geral refere-se a
qual aplicação de software:
a) Software de tutores inteligentes;
b) Software de gestão empresarial;) g p ;
c) Software de computador pessoal;
d) Software educacional;
e) Software modelo espiral;
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.
 Fluxogramas
 Muito utilizado pelos analistas de
processos ou antigos analistas de OM,
principalmente para documentar
processos de negócio, administrativos e
industriais. Não recomendado para a
engenharia, por não possuir uma
especificação estruturada.
Diagramação de software
Fl Fluxogramas
Diagramação de software
Di d fl d d d (DFD) 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.
Diagramação de software
DFD í l 0 DFD nível 0
 visualização do todo;
 macroprocessos visíveis;
 apresentação das entidades externas,
fluxo de dados e deposito de dadosfluxo de dados e deposito de dados
principais.
 DFD nível 1
 explosão do nível zero;
 maiores detalhes, mais completo;
 possui tratamento de exceções.
Diagramação de software
Di d t t Diagrama de contexto
 Visão global;
 desenha o ambiente;
 representado pelas entidades externas e
macrofluxos;macrofluxos;
 um único macroprocesso;
 sem depósito de dados.
Diagramação de software
Di d E tid d R l i tDiagrama de Entidade-Relacionamento
(DER)
O DER é uma técnica de modelagem de
dados que pode ser utilizada em conjunto
com outras técnicas de diagramas deg
software direcionadas ao desenvolvimento
de sistemas.
Diagramação de software
R l i t 1 1 ( ) Relacionamento 1:1 (um para um)
Quando cada departamento é gerenciado
por apenas um gerente, e cada gerência
possui apenas um departamento.
Diagramação de software
R l i t 1 it ( Relacionamento 1: muitos (um para
muitos) cada venda envolve um ou mais
itens, e cada item de venda é parte de
apenas uma venda.
Diagramação de software
R l i t it it ( it Relacionamento muitos: muitos (muitos
para muitos) cada fornecedor fornece
um ou mais produtos, e cada produto é
fornecido por um ou mais fornecedores.
Diagramação de software
E tid d d i t ã Entidade de interseção
É quando uma terceira entidade estabelece
relações.
Conclusão da aula
 Falamos basicamente sobre ciclo de vida
de sistemas, engenharia de software,
aplicações de software e diagramação de
software
Interatividade
Ferramenta de diagramação de software
que possui diversos níveis, cada um deles
com características específicas refere-se a
qual tipo de diagramação de software:
a) Fluxograma
b) Organograma
c) Diagrama de fluxo de dados
d) Diagrama de caso de uso
e) Diagrama de classes
ATÉ A PRÓXIMA!

Sld 3

  • 1.
    Unidade III MODELAGEM DE SISTEMASDE INFORMAÇÃO Prof. Daniel Arthur Gennari Junior
  • 2.
    Sobre esta aula Ciclo de Vida de Sistemas  Engenharia de Software  Aplicações de Software  Diagramação de Software
  • 3.
    Ciclo de Vidade 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; ti continua...
  • 4.
    Ciclo de Vidade Sistemas  implementações: ajustes pós- implantação;  maturidade: software sedimentado;  declínio: dificuldade de continuidade;  manutenção: tentativa de sobrevivência; manutenção: tentativa de sobrevivência;  morte: descontinuidade do software.
  • 5.
    Ciclo de Vidade Sistemas
  • 6.
    Ciclo de Vidade Sistemas 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;g q ;  descrição de procedimentos;  conversão de banco de dados;  instalação.
  • 7.
    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:  Manutenção por legislação: Quando o software requer alguma alteração ou ajuste em decorrência de aspectos legais.
  • 8.
    Manutenção do software Manutençãopor melhoria ou implementação:  Quando o software necessita de ajustes para otimização dos  processos e agregação de valor.p g g ç  Manutenção por correções de erros:  Quando o software necessita de correções para eliminar erros, manutenção considerada problemática.
  • 9.
    Manutenção do software Manutençãopreventiva: Quando há necessidade de modificação para melhorar a confiabilidade ou uma manutenção de ajustes futuros.
  • 10.
    Interatividade Quando o softwarerequer alguma alteração ou ajuste em decorrência de aspectos legais, a qual tipo de manutenção refere-se: a) Manutenção por legislação; b) Manutenção por melhoria ou) ç p implementação; c) Manutenção por correções de erros; d) Manutenção preventiva; e) Manutenção corretiva;
  • 11.
    Engenharia reversa  Aengenharia 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.  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.
  • 12.
    Engenharia Software  Engenhariade software vem da arte da construção, com base no conhecimento científico e empírico adequado ao  atendimento das necessidades humanas.  Engenharia de software é a aplicaçãog p ç sistemática, disciplinada e com abordagem quantitativa para o desenvolvimento, operação e manutenção de software
  • 13.
    Engenharia Software  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;  planejamento e gestão de atividades planejamento e gestão de atividades.
  • 14.
    Engenharia Software O métodode 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, difi ã t t t ãcodificação, teste e manutenção.
  • 15.
    Engenharia Software  Objetivosda engenharia de software  Aprimoramento da qualidade dos produtos de software.  Aumento da produtividade dos engenheiros de software.g  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ápontos citados, vemos que está diretamente ligado a padronização com qualidade dos softwares desenvolvidos ou  em desenvolvimento.
  • 16.
    Fundamentos da engenhariade software A engenharia de software também é baseada em algumas matérias interdisciplinares, podemos citar as seguintes:  Ciência da computação  Administração e projetos  Comunicação  Técnica de solução de problemas
  • 17.
    Fundamentos da engenhariade software  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.  Administração e projetos  Diretamente ligada ao gerenciamento de projetos de desenvolvimento de software (cronogramas, estimativas, atividade de planejamento, estrutura organizacional),p j , g ),  transformando, assim, o engenheiro de software em um gestor do projeto.
  • 18.
    Fundamentos da engenhariade software  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.  Técnica de solução de problemas  Um engenheiro de software é conhecido como um solucionador de problemas, um gerador de soluções integradas eg ç g inteligentes, isto se referindo à construção, à implantação ou à manutenção de produtos tecnológicos
  • 19.
    A importância daengenharia 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.  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
  • 20.
    Interatividade Pode ser elaboradana criação de novos sistemas a partir de sistemas antigos esta afirmação refere-se: a) Engenharia de software; b) Engenharia de sistemas;) g ; c) Engenharia reversa; d) Engenharia inversa; e) Engenharia transversa;
  • 21.
    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 desenhosa documentação bem como os desenhos de diagramas e /ou fluxos, protótipos etc.  Software básico  Conjunto de programas com o objetivo de dar apoio a outros programas. Como compiladores, editores, gerenciadores de arquivos, drives.
  • 22.
    Aplicação de software Software em tempo real  Um software que monitora, analisa, controla eventos em tempo real.  Software comercial  O processamento de informações 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 pontop ç p de venda
  • 23.
    Aplicação de software Software científico e de engenharia  Caracterizado por algoritmos de processamento de números, utilizado em astronomia, mecânica automotiva, biologia molecular e outros.  Software embutido  Reside na memória só de leitura e é usado para controlar produtos e sistemas industriais e de consumo como exemplo:p  temos funções digitais em automóvel como controle de combustível, mostradores no painel
  • 24.
    Aplicação de software 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.  Software modelo espiral  Desenvolvido para abranger os melhores pontos de um ciclo de vida de projetopontos de um ciclo de vida de projeto, planejamento, análise de riscos, engenharia ou desenvolvimento do produto, avaliação.
  • 25.
    Aplicação de software 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.  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.
  • 26.
    Aplicação de software Software de tutores inteligentes  Programas que projetam técnicas de comunidade de inteligência artificial, chamada também de ciência cognitiva.  Software de gestão empresarialg p  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 Resource Planning (ERP) ép g ( ) um deles.
  • 27.
    Aplicação de software Software SIG Fornecem informações para a tomada de decisão  Software SAD Fornecem informações a serem utilizadas pelos usuários na tomada de decisão.  Software EIS Fornecem informações de forma simples e amigável para os executivos de alto nível, permitindo o acompanhamento diário.
  • 28.
    Interatividade Tem como objetivoauxiliar o aprendizado e contribuir para a educação geral refere-se a qual aplicação de software: a) Software de tutores inteligentes; b) Software de gestão empresarial;) g p ; c) Software de computador pessoal; d) Software educacional; e) Software modelo espiral;
  • 29.
    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.  Fluxogramas  Muito utilizado pelos analistas de processos ou antigos analistas de OM, principalmente para documentar processos de negócio, administrativos e industriais. Não recomendado para a engenharia, por não possuir uma especificação estruturada.
  • 30.
  • 31.
    Diagramação de software Did fl d d d (DFD) 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.
  • 32.
    Diagramação de software DFDí l 0 DFD nível 0  visualização do todo;  macroprocessos visíveis;  apresentação das entidades externas, fluxo de dados e deposito de dadosfluxo de dados e deposito de dados principais.  DFD nível 1  explosão do nível zero;  maiores detalhes, mais completo;  possui tratamento de exceções.
  • 33.
    Diagramação de software Did t t Diagrama de contexto  Visão global;  desenha o ambiente;  representado pelas entidades externas e macrofluxos;macrofluxos;  um único macroprocesso;  sem depósito de dados.
  • 34.
    Diagramação de software Did E tid d R l i tDiagrama de Entidade-Relacionamento (DER) O DER é uma técnica de modelagem de dados que pode ser utilizada em conjunto com outras técnicas de diagramas deg software direcionadas ao desenvolvimento de sistemas.
  • 35.
    Diagramação de software Rl i t 1 1 ( ) Relacionamento 1:1 (um para um) Quando cada departamento é gerenciado por apenas um gerente, e cada gerência possui apenas um departamento.
  • 36.
    Diagramação de software Rl i t 1 it ( Relacionamento 1: muitos (um para muitos) cada venda envolve um ou mais itens, e cada item de venda é parte de apenas uma venda.
  • 37.
    Diagramação de software Rl i t it it ( it Relacionamento muitos: muitos (muitos para muitos) cada fornecedor fornece um ou mais produtos, e cada produto é fornecido por um ou mais fornecedores.
  • 38.
    Diagramação de software Etid d d i t ã Entidade de interseção É quando uma terceira entidade estabelece relações.
  • 39.
    Conclusão da aula Falamos basicamente sobre ciclo de vida de sistemas, engenharia de software, aplicações de software e diagramação de software
  • 40.
    Interatividade Ferramenta de diagramaçãode software que possui diversos níveis, cada um deles com características específicas refere-se a qual tipo de diagramação de software: a) Fluxograma b) Organograma c) Diagrama de fluxo de dados d) Diagrama de caso de uso e) Diagrama de classes
  • 41.