informaÇÃo de sistemas de desenvolvimento ciclo de vida …

Post on 11-Jul-2022

3 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

CICLO DE VIDA DO DESENVOLVIMENTO DE SISTEMAS DE INFORMAÇÃOME. MARCELO AIRES

Relembrando▸ Tecnologia▸ Tecnologias na Computação

▹ Laptops, Desktops, Smartphones, Tablets, Roteadores e Switches

▸ Tendências Tecnológicas▹ Inteligência Artificial, Coisas autônomas, Big Data, Internet das Coisas

(IoT), Realidade Virtual, Realidade Aumentada, Blockchain, Criptomoedas, Nanotecnologia, Impressão 3D e Computação Quântica

2

Agenda▸ Introdução▸ Principais fases▸ Modelos

▹ Cascata, Espiral, Incremental, V, Prototipagem e Metodologias Ágeis

▸ O gerenciamento do ciclo de vida da aplicação▸ Modelagem de Sistemas

3

INTRODUÇÃO...contextualizando o tema.

4

Introdução▸ Para iniciar qualquer desenvolvimento, é necessário ter um

guia para não se perder no meio do caminho.▸ Este guia para desenvolvimento de um produto, é chamado

de ciclo de vida - consiste desde o planejamento ao produto final.

▸ Como qualquer produto, o software também possui ciclos de vida e modelos que podem ser adotados.

5

O que é o CVDS?▸ Um Ciclo de Vida de Desenvolvimento de Software - CVDS,

segundo a norma NBR ISO/IEC 12207:1998, se define como:▹ “Estrutura contendo processos, atividades e tarefas envolvidas no

desenvolvimento, operação e manutenção de um produto de software, abrangendo a vida do sistema, desde a definição de seus requisitos até o término de seu uso.”

6

O que é o CVDS?▸ Uma definição mais simples seria: "É um processo utilizado

por um analista de sistemas para desenvolver um sistema de informação." (wikipédia)

▸ De maneira menos formal: é um processo reconhecido pela indústria como uma série de atividades ou etapas para o desenvolvimento de um novo produto software ou para modificar um software existente.

7

O que é o CVDS?▸ A principal função do ciclo de vida do desenvolvimento de

software é indicar as fases, atividades, entregas e responsabilidades de cada envolvido no processo de desenvolvimento de software.

▸ As principais fases são: de requisitos, de projeto, de implementação, de testes e de produção.

8

Principais fases

9

IDEIA

Requisitos

levanta os requisitos mínimos, estuda a viabilidade e define o modelo a ser usado.

PLANO

Projeto

Planejamento do software: concepção, especificação, design da interface, prototipação, design da arquitetura.

CONTRUÇÃO

Implementação

tradução para uma linguagem de programação das funcionalidades definidas durante as fases anteriores.

CONFIRMAÇÃO

Testes

realização de testes no que foi desenvolvido de acordo com os requisitos.

PRODUTO

Produção

implantação em produção do produto final.

Principais fases

10

IDEIA

Requisitos

levanta os requisitos mínimos, estuda a viabilidade e define o modelo a ser usado.

PLANO

Projeto

Planejamento do software: concepção, especificação, design da interface, prototipação, design da arquitetura.

CONTRUÇÃO

Implementação

tradução para uma linguagem de programação das funcionalidades definidas durante as fases anteriores.

CONFIRMAÇÃO

Testes

realização de testes no que foi desenvolvido de acordo com os requisitos.

PRODUTO

Produção

implantação em produção do produto final.

necessidade do consumidor

11

▸ necessidade que ainda não foi atendida▸ possibilidades de inseri-la no contexto▸ curto, médio ou longo prazo

“viabilidade, custos, aspectos técnicos e todo tipo de investigação preliminar que pode reduzir os riscos e potencializar a tomada de decisão.

12

enfrentamento da ideia

Principais fases

13

IDEIA

Requisitos

levanta os requisitos mínimos, estuda a viabilidade e define o modelo a ser usado.

PLANO

Projeto

Planejamento do software: concepção, especificação, design da interface, prototipação, design da arquitetura.

CONTRUÇÃO

Implementação

tradução para uma linguagem de programação das funcionalidades definidas durante as fases anteriores.

CONFIRMAÇÃO

Testes

realização de testes no que foi desenvolvido de acordo com os requisitos.

PRODUTO

Produção

implantação em produção do produto final.

construção do plano de negócio

14

Vai nortear todos os processos produtivos do produto.▸ O que é seu produto?▸ Quem são clientes, concorrentes, etc?▸ Qual o posicionamento do seu produto?▸ Qual a melhor maneira de executar as tarefas?▸ Qual investimento e projeção de retorno?

Principais fases

15

IDEIA

Requisitos

levanta os requisitos mínimos, estuda a viabilidade e define o modelo a ser usado.

PLANO

Projeto

Planejamento do software: concepção, especificação, design da interface, prototipação, design da arquitetura.

CONTRUÇÃO

Implementação

tradução para uma linguagem de programação das funcionalidades definidas durante as fases anteriores.

CONFIRMAÇÃO

Testes

realização de testes no que foi desenvolvido de acordo com os requisitos.

PRODUTO

Produção

implantação em produção do produto final.

meter a mão na massacumprir os prazos,

orçamento e exigências

16

Principais fases

17

IDEIA

Requisitos

levanta os requisitos mínimos, estuda a viabilidade e define o modelo a ser usado.

PLANO

Projeto

Planejamento do software: concepção, especificação, design da interface, prototipação, design da arquitetura.

CONTRUÇÃO

Implementação

tradução para uma linguagem de programação das funcionalidades definidas durante as fases anteriores.

CONFIRMAÇÃO

Testes

realização de testes no que foi desenvolvido de acordo com os requisitos.

PRODUTO

Produção

implantação em produção do produto final.

confronto prático - choque de realidade

18

Ajustes realizados

Alinhamento do produto com o cliente.Correção de erros.

Viabilidade testada

Momento em que tudo que foi construído é colocado à prova.

Resultado satisfatório

Alcance de um produto adequado a realidade.

Principais fases

19

IDEIA

Requisitos

levanta os requisitos mínimos, estuda a viabilidade e define o modelo a ser usado.

PLANO

Projeto

Planejamento do software: concepção, especificação, design da interface, prototipação, design da arquitetura.

CONTRUÇÃO

Implementação

tradução para uma linguagem de programação das funcionalidades definidas durante as fases anteriores.

CONFIRMAÇÃO

Testes

realização de testes no que foi desenvolvido de acordo com os requisitos.

PRODUTO

Produção

implantação em produção do produto final.

LANÇAMENTO E MARKETINGMomento de vender o bichão

$

COMO MONETIZAR?Quero dinheiro no bolso!

?

VISUALIZAÇÕESAnúncios PPC ou Empresas

MENSALIDADEManutenção e Custos

REQUISIÇÕESPedidos, Compras, Afiliados

22

MODULARIDADEMódulo ou Especialidade

MODELOS DO CICLO DE VIDA...desenvolvimento de SI.

23

Modelos do ciclo de vida de desenvolvimento de SI▸ Existem diversos modelos que podem ser adotados. Os

principais são:▹ Modelo em Cascata▹ Modelo Espiral▹ Modelo Incremental▹ Modelo em V▹ Prototipagem▹ Metodologias Ágeis

24

Modelo em Cascata▸ Divide todo o processo de

desenvolvimento de software em fases separadas e sequenciais onde o desenvolvimento movimenta-se somente num sentido, de modo que as etapas não podem ser repetidas.

▸ Somente quando uma fase estiver concluída a outra fase poderá iniciar.

▸ Neste modelo nenhum componente do sistema será entregue até a proximidade final do projeto.

25

Modelo Espiral▸ O software é entregue em versões,

onde cada versão passa por cada etapa do ciclo de desenvolvimento. Produto final é entregue rapidamente.

▸ Ciclo de atividades em 4 estágios:▹ Determina objetivos, soluções alternativas

e restrições.▹ Analisa os riscos do estágio anterior▹ Atividades da fase de desenvolvimento:

design, especificação, codificação e verificação

▹ Revisão das etapas anteriores e o planejamento da próxima fase

26

Modelo Incremental▸ Desenvolve várias partes do sistema

em paralelo e as íntegra ao concluí-las.▸ O desenvolvimento é dividido em

"incrementos" que produzem o sistema de forma incremental até a sua versão final.

▸ Cada incremento passa por todo o ciclo de desenvolvimento do software, produzindo um sistema funcional embora não atenda todos os requisitos.

27

Modelo em V (regressão)▸ o modelo em cascata é colocado em

forma de "V".▸ Do lado esquerdo ficam da análise ao

projeto, a codificação fica no vértice e os testes, desenvolvimento, implantação e manutenção, à direita.

▸ O que diferencia do modelo em cascata, é a ênfase dada à verificação e validação: cada fase do lado esquerdo gera um plano de teste a ser executado no lado direito.

28

Prototipagem▸ Constrói um protótipo do produto de

software para mostrar suas funcionalidades de forma limitada.

▸ É usado para permitir que os usuários avaliem propostas de desenvolvedores testando-as antes da implementação final do produto.

▸ Ajuda a compreender as exigências específicas do usuário que não podem ter sido consideradas pelos desenvolvedores durante a fase de concepção do produto.

29

Metodologias Ágeis▸ Cada iteração é um mini-projeto, que

normalmente dura de 1 a 4 semanas, e inclui todas as fases para implementá-lo.

▸ Ao final de cada iteração deve haver uma entrega ao cliente, que inclua um conjunto de novas funcionalidades, uma nova versão de software.

▸ Após essa entrega há um novo processo de comunicação com o cliente e então são definidas quais deverão ser as novas entregas.

30

CICLO DE VIDA DA APLICAÇÃO...como gerenciar?

31

O gerenciamento do ciclo de vida da aplicação - ALM

▸ Semelhante ao CVDS.▸ Application Lifecycle Management (ALM) atua

no acompanhamento de todo o processo de vida útil de uma aplicação, da construção de à alterações, integrando todas as fases da engenharia de software:▹ análise de requisitos, modelagem de arquitetura,

desenvolvimento de código, gerenciamento de mudanças, gerenciamento de testes e gerenciamento de versões de produtos realizados.

32

MODELAGEM DE SISTEMAS...como gerenciar?

33

Modelagem de Sistemas▸ Os desenvolvedores de sistemas usam dados, processos e

modelos de objeto para compreender os sistemas existentes e projetar os novos.

▸ Estes modelos fornecem uma linguagem que os analistas, os projetistas e os desenvolvedores podem usar para comunicar-se eficientemente.

34

Modelagem de Sistemas▸ Alguns software geram programas de computador

diretamente dos modelos de sistemas e outros softwares geram modelos de sistemas a partir de programas existentes.

▸ Muitos produtos suportam, também, a tradução entre modelos do mesmo tipo, por exemplo, de um modelo de dados para outro.

35

Modelagem de Sistemas▸ Alguns software geram programas de computador

diretamente dos modelos de sistemas e outros softwares geram modelos de sistemas a partir de programas existentes.

▸ Muitos softwares suportam a tradução entre modelos do mesmo tipo, por exemplo, de um modelo de dados para outro.

36

Modelagem de Sistemas▸ Existem diversos modelos, alguns deles são:

▹ Modelos de Dados▹ Modelos de Processos ▹ Diagrama de Fluxo de Dados (DFD) ▹ Modelos de Objeto

37

Modelos de Dados▸ Descrevem os relacionamentos entre

os elementos de dados que uma organização usa.

▸ O modelo E-R (Entidade – Relacionamento) é um dos modelos de dados mais extensamente usados.

38

Modelos de Processos▸ Dividem um processo em suas partes,

mostram como estas partes se relacionam entre si e indicam as saídas e entradas dos processos.

▸ Os modelos mais populares incluem diagramas de estrutura e diagramas de fluxos de dados.

▸ Os diagramas de estrutura mostram o relacionamento entre os programas (ou módulo) e subprogramas que compreenderão o sistema acabado.

39

Diagrama de Fluxo de Dados (DFD)

▸ Os DFDs modelam o fluxo de dados entre processos. Eles não modela a ordem em que as tarefas são executadas.▹ As setas indicam o fluxo dos dados;▹ os retângulos abertos lateralmente

representam dados armazenados;▹ os círculos indicam processos; e ▹ os retângulos fechados representam as

fontes das entrada ou os usuários das saídas.

40

Modelos de Objeto▸ Descrevem as propriedades dos

objetos, seus relacionamentos entre si e as funções que executam.

▸ Os modelos incluem, normalmente, os diagramas de herança e podem incluir diagramas de estado (mudança de características a partir de eventos).

▸ Os objetos incorporam os dados e as operações que podem ser executadas.

▸ Linguagem de Modelagem Unificada (UML – Unified Modeling Language).

41

Exercício de Fixação▸ Avalie as principais fases do ciclo de desenvolvimento e

faça um resumo sobre a importância de cada fase.▸ Faça uma pesquisa sobre as metodologias ágeis e escreva

um resumo sobre cada uma, com definição e vantagens.▸ Sobre os modelos de sistemas, escolha um que você se

identificou e defenda-os mostrando que ele é melhor que os demais.

42

43

OBRIGADO!Perguntas?Pode me encontrar em:

▸ @mairesweb▸ marcelo.vieira@ftc.edu.br

top related