TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Teoria Geral da Administração

Por:   •  28/9/2020  •  Trabalho acadêmico  •  2.226 Palavras (9 Páginas)  •  96 Visualizações

Página 1 de 9

1.1 – Introdução Conceitual.

A seleção de um modelo de processo de desenvolvimento de software é uma atividade central e crítica durante o projeto. A escolha deste modelo irá definir quais atividades serão executadas, e em qual sequência elas serão executadas.

Podemos definir “processo” como sendo um conjunto de atividades que devem ser executadas em uma dada sequência ao longo do tempo. Estas atividades recebem um conjunto de dados e informações, e por sua vez ao final da execução da atividade são gerados novos dados e informações, os quais serão consumidos pela atividade seguinte do processo. A execução (realização) de uma atividade é feita com o uso de técnicas, métodos e/ou ferramentas computacionais.

Basicamente existem dois paradigmas de processos de software. Os dois paradigmas são os processos do tipo preditivo e os processos do tipo iterativo e incremental. Os processos do tipo preditivo são processos onde todo o planejamento é feito a priori, e nada deverá ou deveria alterar este planejamento a posteriori. Cada atividade do projeto é bem definida, e uma atividade somente pode ser executada se, e somente se, a sua atividade anterior foi executada em sua totalidade e foi considerada como concluída. Este tipo de processo foi criado no final dos anos 60, e o mais conhecido e famoso dos processos preditivos é o processo da cascata (também conhecido como sequencial ou linear), o qual é apresentado na figura 1 abaixo.

[pic 1]

Figura 1 – Processo de desenvolvimento sequencial.

Neste tipo de processo ao lado, a fase de Projeto somente terá início após concluída a fase Requerimento. Isto significa que o projeto somente irá mover-se para a fase subsequente depois de todos os requisitos terem sido identificados, modelados, documentados e aprovados. A fase de Implementação somente será iniciada após a fase de projeto ter sido concluída totalmente, e assim por diante.

O processo da cascata foi proposto por Winston Royce em uma conferência acadêmica nos USA, e documentado na publicação: Managing the Development of Large Software Systems, Proceedings of IEEE Western Electronic Show and Convention (WesCon), Los Angeles, USA, 1970.

Como todos e qualquer processo de desenvolvimento o processo da cascata possui pontos fortes e pontos fracos.

Pontos Fortes

Pontos Fracos

  • Fácil de entender, fácil de usar.
  •  Fornece um processo de trabalho estruturado para uma equipe inexperiente.
  •  Marcos das mudanças de uma fase para outra são bem definidos.
  •  Define e estabiliza os requisitos desde o início do projeto.

 

  • Os requisitos devem ser estáveis, o que muitas vezes não ocorre.
  • Alterações geram impactos grandes, uma vez que as fases anteriores devem ser refeitas para alterar a mudança que ocorreu.
  • Pouca oportunidade para que o cliente visualize o software durante o seu desenvolvimento, e quando e consegue visualizar pode ser tarde demais para solicitar correções e alterações.
  • Não prioriza o ataque aos riscos desde o início do projeto. Todos os requisitos devem ser concluídos ao final da fase de Requisitos, e todos os requisitos serão modelados em conjunto na fase de Projeto etc. Isto impões dificuldades em lidar com requisitos que representam riscos.

O processo iterativo e incremental caracteriza-se por seus dois elementos: a iteração e o incremento, os quais são definidos a seguir.

  • Definição de Iterativo:
  • Fazer de forma semelhante repetidamente (n vezes).
  • Definição de incremental:
  • Que vai aumentando gradativamente por partes, ou seja, incrementos.

É iterativo na medida em que envolve o refinamento sucessivo da definição e implementação da solução pela aplicação repetitiva das atividades de desenvolvimento. É incremental no que cada passagem através do ciclo iterativo aumenta a compreensão do problema e a capacidade oferecida pela solução.

Modelo iterativo e incremental é uma alternativa para solução de problemas enfrentado no modelo cascata.  Nesse modelo, considera-se o desenvolvimento do software em ciclos iterativos onde uma pequena porção dos requisitos passa por todas as etapas de desenvolvimento como em um modelo cascata. Ao final de cada ciclo de iteração têm-se uma nova versão do software, a qual será incrementada a cada novo ciclo que ocorrer. Isso reduz a ansiedade e a expectativa do usuário em relação ao software. Embora pareça que o modelo imprima uma forma mais ágil de desenvolvimento, um planejamento formal não é desprezado.

A ideia das iterações desse modelo é permitir que o sistema seja melhor compreendido e refinado a cada etapa.  A figura 2 ilustra este paradigma de processo de desenvolvimento.

[pic 2] 

Figura 2 – Processo de desenvolvimento iterativo e incremental.

O paradigma de processo de desenvolvimento iterativo e incremental foi formalizado e por Barry Bohem em seu artigo “A Spiral Model of Software Development and Enhancement” publicado na IEEE Software Magazine em 1988. Neste artigo Bohem também propôs um modelo de desenvolvimento iterativo e incremental chamado de “modelo espiral”.

O paradigma iterativo e incremental é também utilizado por todos os denominados “métodos ágeis”. Dentre estes métodos, talvez, o mais famoso dentre eles seja o método ágil “Scrum”. O conceito de iterativo e incremental esta presente no Scrum no seus Sprints. Cada Sprint nada mais é do que um “uma iteração em um incremento do escopo (requisitos)” do projeto.

Pontos Fortes

Pontos Fracos

  • Permitem que o cliente vá visualizando progressivamente o produto à medida que o projeto avança. Isto é importante para garantir que o projeto está desenvolvendo o produto correto.
  •  Mudanças são mais facilmente absorvidas, uma vez que afetarão somente a parte dos requisitos implementados até o ciclo do momento.
  •  Permite que o cliente vá amadurecendo melhor os requisitos, pois somente os requisitos que serão implementados no ciclo em questão precisam ser aprovados.
  • Permite um melhor gerenciamento dos riscos, pois os requisitos que apresentem riscos podem ser selecionados para serem implementados log no primeiro ciclo.

 

  • Requer uma equipe com maior experiência, e maturidade em desenvolvimento de software.
  • Impõe uma mudança cultural forte na empresa, pois o usuário deverá ter uma participação bastante intensa durante todo o projeto, e não somente no início no final como no processo da cascata.
  • Quantos ciclos (iterações) serão necessários para desenvolver o produto? O planejamento do projeto utilizando este paradigma é mais complicado, o que gera um esforço de gerenciamento maior.

2.2 – Estudo de Caso Winburg.

Para reduzir o congestionamento de tráfego no centro da cidade de Winburg, em Indiana - USA, o prefeito convenceu a cidade a criar um sistema de transporte público. As ruas terão faixas exclusiva para os ônibus para poderem trafegar mais rapidamente, e os passageiros serão encorajados a "estacionar e andar"; isto é, estacionar seus carros em áreas de estacionamento suburbano e, em seguida, pegar ônibus a partir de lá para irem trabalhar e voltar com um custo de um dólar por viagem.

...

Baixar como (para membros premium)  txt (14.4 Kb)   pdf (228.6 Kb)   docx (56.1 Kb)  
Continuar por mais 8 páginas »
Disponível apenas no TrabalhosGratuitos.com