Você está na página 1de 33

WBA0446_v1.

CASE
As principais ferramentas no
ciclo de desenvolvimento de
softwares
Gerenciamento de projetos
de software
Bloco 1
André Olímpio
Projeto
• É caracterizado por uma sequência clara e lógica de eventos, planejados e
organizados. Início, meio e fim definidos.
• Destina a atingir um objetivo claro e estabelecido, sendo conduzido por pessoas
dentro de parâmetros de:

• Tempo.

• Custo.

• Recursos envolvidos.

• Qualidade.
Projeto

Processos de Processos de
inicialização. planejamento.

Processos de Processos de
monitoração e execução.
controle.

Processos de
encerramento.
Projeto

Necessidade (interna ou externa)

Requisitos

Validações
Controle de versionamento
• Uma versão é o registro de uma determinada situação do software em seu
ciclo de vida.

• A manutenção pode ser:

• Corretiva: correções de código, não afetando a


estrutura do software.

• Agregação de recursos: novos recursos serão


atribuídos ao software, afetando a estrutura.
Controle de versionamento

Corretiva:

1.1 1.2 1.3 1.4

Inclusão Correção da Correção de


inicial. palavra Inclusão de
palavra
Hello. !!! ao final.
World.
Controle de versionamento

Agregação de valores:
HelloWorld.java

1.0 2.0 3.0

Versão
entregue. Módulo de Conectividade
impressão de com BD.
resultados.
DevOps

• Integração entre desenvolvimento (Dev) e a operação (Ops).

• Garantia da automação e do monitoramento em todas as etapas do


processo de desenvolvimento.

• Objetivo: fornecer entregas contínuas de pequenos incrementos do


sistema, ao final de cada etapa do processo.
Pipeline
• Canais para garantir o fluxo e processamento de dados
durante a execução de cada etapa do desenvolvimento do
sistema.

• Este fluxo é dividido em três etapas:


• Data engineering.
• Data preparation.
• Analytics.
Pipeline
• Data engineering é um processo responsável por:
• Coletar dados.

• Remover possíveis inconsistências.

• Inserir esses dados em um ambiente de armazenamento


variado.

• Data lake: repositório de dados não formatados, geralmente,


objetos BLOB.
Pipeline

• Data preparation: processo de refinamento de dados,


adicionando as regras de negócio, gerando uma base
consistente para as demais etapas do fluxo.

• Analytics: processo de análises sobre os dados que foram


gerados na etapa de preparação.
Ferramentas CASE para
controle de versionamento
de software
Bloco 2
André Olímpio
GitHub

• Estrutura em ambiente web.

• Plataforma de hospedagem de códigos com controle de versão.

• Armazenamento de dados em repositórios que apresentam


um histórico de todas as revisões e alterações feitas em um
arquivo.
GitHub
Figura 1 - GitHub

Fonte: teguhjatipras/istock.com
GitHub
Figura 2 - GitHub

Fonte: captura de tela do site GitHub.com.


GitHub

Principais comandos:
Comando Descrição
git branch nome_branch Criar branch.
git merge nome_branch Reagrupar branch.
Atualizar uma aplicação
git pull
localmente.
Enviar versões atualizadas para o
git push
servidor web.
git clone local_origem : local_destino Criar clone de um repositório.
Ferramentas CASE para
gerenciamento de projetos
de software
Bloco 3
André Olímpio
GitHub Desktop

• Permite trabalhar, localmente, com repositórios disponibilizados


on-line na plataforma do GitHub.

• Criação de clones dos repositórios.

• Extensão do GitHub.

• Versões para Windows e MacOS.


GitHub
• Serviços disponíveis:
• Trabalhar, localmente, e fazer upload diretamente no
repositório do GitHub.

• Utilizar todos os comandos do Git.


• Visualizar mudanças feitas no repositório desde a clonagem.
• Integrar projetos em plataformas diferentes.
Visual Studio Team System (VSTS)

• Também conhecido como Azure DevOps.

• Utilizado no gerenciamento do ciclo de vida de aplicativos e


projetos de software.

• Possui portabilidade para serviços do GitHub.

• Arquitetura de serviços em ambiente Web.


Visual Studio Team System (VSTS)
• Serviços disponíveis:

• Utilizar os recursos de DevOps em todo ciclo


de vida do software.

• Utilizar serviços web semelhantes aos desktop.

• Visualizar os serviços de diferentes etapas em


uma única interface.

• Gerenciar o projeto utilizando comandos do


GitHub.
Visual Studio Team System (VSTS)
Figura 3 - VSTS

Fonte: captura de tela do Azure.


Redmine

• Também conhecido como Easy Redmine.

• Baseados em serviços web e correção de bugs.

• Conjunto de bibliotecas utilizadas para aumentar a


velocidade e a facilidade de criação de websites orientados
a banco de dados.
Redmine
• Serviços disponíveis:
• Plugins de recursos de métodos ágeis.

• Cronograma de tarefas.

• Interface integrada com diferentes serviços.

• Integração com Microsoft Excel, Microsoft Project e Jira.


Redmine
Figura 4 - Redmine

Fonte: captura de tela do Azure.


Teoria em Prática
Bloco 4
André Olímpio
Sistema: câmeras inteligentes
• Sistema interno de vigilância de um aeroporto.

• Uma cidade de 300 mil habitantes que apresenta


uma frota, aproximada, de 100 mil carros.

• Software de reconhecimento facial.

• Auxiliar as autoridades policiais a encontrar pessoas


desaparecidas ou procuradas.
Sistema: câmeras inteligentes
• Identificar de que forma uma ferramenta CASE, para
controle de versões, pode ser utilizada.

• Qual é a necessidade de rever estados anteriores da


codificação?

• Como essas ferramentas poderiam auxiliar o trabalho


colaborativo da equipe de desenvolvimento?

• Quais são as plataformas on-line de gerenciamento de


projetos de software para controle e monitoramento das
tarefas?
Dica do Professor
Bloco 5
André Olímpio
Outra ferramenta CASE (AWS CodeCommit)

• Controle de versionamento de código fonte.


• Seguro e confiável.
• Múltiplos repositórios.
• Integração com o GitHub e Microsoft Azure.
Tutorial disponível em:
https://www.youtube.com/watch?v=voWo0hF8mQQ.
Acesso em: 7 ago 2020.
Referências

• SOMMERVILLE, I. Engenharia de Software. 10. ed. São Paulo: Pearson


Education do Brasil, 2018.
• PRESSMAN, R. S. Engenharia de Software: uma abordagem profissional.
8. ed. Porto Alegre: AMGH, 2016.
• ARTERO, M. A. Gestão de projetos de software. 1. ed. Londrina: Editora e
Distribuidora Educacional S.A., 2016.
• FILHO, W. P. P. Engenharia de Software: projetos e processos. 4. ed. Rio
de Janeiro: LTC, 2019.
Bons estudos!

Você também pode gostar