Estratégias em Tecnologia da Informação
Capítulo 08
Alternativas de Investimento em TI
Fábricas de software, Softwarehouses,
Virtualização, Computação em Nuvem
Datacenter
2
Esse material é de apoio para as aulas da disciplina e não substitui a leitura da bibliografia básica.
Os professores da disciplina irão focar alguns dos tópicos da bibliografia assim como poderão adicionar alguns detalhes não presentes na bibliografia, com base em suas experiências profissionais.
O conteúdo de slides com o título “Comentário” seguido de um texto, se refere a comentários adicionais ao slide cujo texto indica e tem por objetivo incluir alguma informação adicional aos conteúdo do slide correspondente
Bibliografia básica:
OLIVEIRA, Djalma P. Rebouças.. Planejamento Estratégico: Conceitos, Metodologia e Práticas. 28ª ed. São Paulo: Atlas, 2010.
LAUDON, Kenneth.; LAUDON, Jane.. Sistemas de Informação Gerenciais. 7ª ed. São Paulo: Prentice Hall, 2007.
TURBAN, E. e RAINER Jr., R.K. & POTTER, R.E. Administração de tecnologia da informação. Rio de Janeiro: Campus, 2005.
WEILL, Peter e ROSS, Jeanne W. Governança de TI: Tecnologia da informação. 1ª ed. São Paulo: M. Books, 2006.
POLLONI, Enrico Giulio F.. Administrando sistemas de informação: Estudo de Viabilidade. 1ª ed. São Paulo: Futura, 2003.
3
Relembremos de modo resumido que um sistema de informação tem como objetivo principal resolver algum problema relacionado ao negócio, aumentar produtividade e produzir informações úteis.
Baseado nesta condição, o Gestor de TI muitas vezes precisa avaliar se compra um software (ou sistema) pronto, se desenvolve internamente com seu pessoal, se contrata uma empresa para desenvolver ou mesmo se contrato alguns profissionais para realizar este trabalho.
O fato é que sua responsabilidade, nestes temos, é a de conhecer as alternativas existentes voltadas para atender à necessidade do negócio que se apresenta à área de TI buscando soluções.
Todas estas opções exigirão recursos financeiros da empresa e quem deve avaliar e apresentar aos executivos quais as melhores opções de custo e benefício, é o Gestor de TI.
4
Desenvolver software não significa apenas comprar um software de linguagem de programação, contratar um programador e sair escrevendo linhas de códigos.
É necessário agregar todo seu expertise em TI para reunir dados não só relacionados à ato de desenvolver o sistema propriamente dito, mas também avaliar questões de equipamentos, banco de dados, infraestrutura e demais recursos de TI que tal solução irá requisitar.
Para tanto, o Gestor de TI deve fazer um estudo de viabilidade para determinar se cada solução encontrada é viável, ou exequível, do ponto de vista financeiro, técnico e organizacional.
O estudo de viabilidade determina qual alternativa é um bom investimento, se a tecnologia necessária para o sistema está disponível e se poderia ser administrada pelos especialistas em sistemas de informação da empresa, e se a organização poderia administrar as mudanças introduzidas pelo sistema.
6
Fábrica de software é um conjunto de recursos humanos, materiais, processos e metodologias estruturados de forma semelhante àqueles das indústrias tradicionais, utilizando as melhores práticas criadas para o processo de desenvolvimento, testes e manutenções dos softwares.
O objetivo de uma fábrica de software é minimizar custo e
maximizar a funcionalidade e a qualidade do produto que está sendo desenvolvido.
Utiliza em sua operação indicadores de qualidade e produtividade em cada etapa do ciclo de desenvolvimento de software, bem como busca maximizar a reutilização de componentes anteriormente desenvolvidos.
É uma solução tecnológica, que funciona em linha de montagem, para modelar processos e desenvolver sistemas, composta por metodologia, equipamentos e programas organizados em determinado padrão ambiental.
Nela são executadas todas as fases de desenvolvimento de sistemas, da especificação à implementação final.
7 Fábricas de software
8
Funcionamento da Fabrica de Software
Uma fabrica de software possui os mesmos recursos de uma fábrica modelo. A função da fábrica é maximizar a produção de software.
Estrutura de uma fábrica de software
Área de atendimento a clientes
Área de planejamento e controle da produção
Área de produção
Área de garantia e qualidade
Área de suporte
Ambientes de uma fábrica de software
O funcionamento de uma fábrica de software se dá em dois ambientes:
Ambiente de Engenharia de Processo
Ambiente de Engenharia de Software
9
Ambiente de Engenharia de Processo
Esta etapa tem como objetivo modelar e simular os processos de trabalho da organização e traz como grande inovação a efetiva participação do usuário.
Com a orientação de um Engenheiro de Processos, o usuário utiliza uma linguagem gráfica, interativa e de simples compreensão para criar virtualmente a sua rotina de trabalho, simular o seu funcionamento e promover refinamentos sucessivos até alcançar um modelo otimizado, com adequada alocação de recursos.
Ao final desse estágio, estará pronta e detalhada a especificação dos aplicativos, que serão desenvolvidos no Ambiente de Engenharia de Software e que automatizarão o processo de trabalho do usuário.
10
Ambiente de Engenharia de Software
Nessa etapa, os Engenheiros de Software produzem componentes de forma semiautomática.
A integração desses componentes gera o software especificado pelo usuário na modelagem dos seus processos.
O funcionamento em linha de montagem assegura trabalho em equipe e alta produtividade.
CMMI (Capability Maturity Model Integration)
As fábricas de softwares, em sua maioria devem atender a requisitos do CMMI que é um modelo integrado de maturidade da capacidade para engenharia de software e de sistemas.
Aderência ao modelo CMMI é uma maneira de medir a
maturidade/capacidade de uma organização.
11
Exemplo
12
Visão sistêmica de uma fábrica de software
14
O mercado de desenvolvimento de softwares é hoje uma das áreas mais promissoras da informática e como tudo que envolve produtos e clientes necessitam de seriedade, ordem e disciplina, o mercado de desenvolvimento possui paradigmas e equipes especializadas para alcançar as necessidades e realizar uma implantação com sucesso.
15
Uma Softwarehouse é uma empresa ou organização que se dedica a construir software, ou seja programas de computador, geralmente com fins comerciais.
Normalmente empresas assim implementam programas comercias e trabalham com uma equipe com funções diversificadas.
É responsável por projetar, desenvolver, fazer manutenção e opcionalmente, comercializar softwares que atendam as necessidades
de um determinado nicho de mercado, ou que atendam as
necessidades específicas de uma empresa.
Diferentemente de uma fábrica de software, a softwarehouse não segue o conceito de linha de produção.
16
Ciclo de desenvolvimento de software
18
Computadores Pessoais (PC) tornaram populares
Surgiu arquitetura Client-Server (Cliente-Servidor)
19
Arquitetura Client-Server (Cliente-Servidor)
Em cada servidor roda um Sistema Operacional (Windows, Linux ou Netware)
Servidores dedicados para cada aplicação (1 Server x 1 Aplicação)
Proliferação de servidores (Problemas com consumo de energia, espaço e refrigeração)
20
Surgimento do SBC – Server Based Computing (Computação Baseada em Servidor)
21
Servidores se tornam menores
Racks ou Blades (Lâminas)
Redução de espaço no Datacenter
22
Virtualização é uma abstração entre o hardware e o sistema operacional que provê recursos (instalado no computador).
Permite que múltiplas máquinas virtuais (Com múltiplos sistemas operacionais – Windows, Linux e outros ) funcione em um mesmo hardware.
Cada máquina virtual possui o seu próprio hardware virtual (como RAM, CPU, Placa de Rede, etc) para que suas respectivas aplicações possam funcionar.
As máquinas virtuais são instaladas dentro de um arquivo que podem ser facilmente alocados de um computador para outro.
Novos processadores já vem com instruções para virtualização.
23
Virtualização de Servidores
Virtualização
Escalabilidade
Rápido Provisionamento para novos servidores
Disponibilidade
Mover máquinas virtuais de forma fácil e eficiente
Eficiência
Rodar múltiplas aplicações e sistemas operacionais independentemente em um único servidor
24
Virtualização de Servidores - Benefícios
Aumenta efetivamente o nível de segurança
Facilita o "disaster recovery" de TODOS os servidores do ambiente
Servidores podem ser consolidados em máquinas virtuais, escalando arquiteturas.
Diminui do consumo de Energia e Refrigeração
Reduz do número de switches de rede que são grandes
consumidores de energia.
Novas ferramentas de gerenciamento e contadores de desempenho tornam o ambiente virtualizado mais fácil de gerenciar e monitorar.
25
Virtualização de Servidores - Benefícios
Recursos computacionais são tratados em uma política uniforme para que sejam alocadas máquinas virtuais de maneira controlada.
Máquinas virtuais são completamente isoladas da máquina hospedeira e de outras máquinas virtuais.
Se uma máquina virtual tem problemas, todas as outras não são afetadas.
Um completo ambiente de máquina virtual salvo em um simples arquivo é mais fácil de fazer backup.
Padronização de hardware virtualizado é fornecida para a aplicação, garantindo compatibilidade.
26
Virtualização de Desktops
O que está levando as empresas a repensar suas arquiteturas clientes?
Virtualização
Deve haver outra forma mais simples
e gerenciável!
Deve haver outra forma mais econômica!
Deve haver outra forma mais
eficiente! Deve haver
outra forma mais segura!
27
Virtualização de Desktops
Prós
Centralização de serviço
Melhor utilização de recursos
Controle de licenças de SW mais eficiente
Segurança
Contra
Ponto único de falha
Dependência da eficiência de rede
Limitação da capacidade de processamento
Limitação em processamento off-line
Virtualização
Data Center Departamentos
28
Gartner Group, maior referência em consultoria e prospecção mundial, estimou que a tecnologia de virtualização será peça fundamental dentro dos datacenters até o ano de 2012, com uma estimativa de 58 milhões de máquinas virtuais rodando em todo o mundo.
Isso mostra a importância deste tipo de profissional que dentro de um mercado econômico e globalizado estará cada vez mais em evidência.
Profissional especializado
Profissionais com sólida experiência no desenvolvimento e na gestão de infraestruturas virtuais são bastante raros no mercado.
O profissional que tem “olho clínico” será capaz de analisar o ambiente de TI e desenvolver uma arquitetura estável, eficiente e flexível.
É necessário ter um profundo conhecimento das novas tecnologias disponíveis no mercado e ser bastante criterioso ao selecionar os recursos de virtualização, a fim de evitar gargalos e transtornos na hora de movimentar dados.
30
A denominação Cloud Computing chegou aos ouvidos de muita gente em 2008.
É uma maneira de estruturar a computação de forma a permitir o acesso, sob demanda da rede, para recursos de computação.
Características principais:
A escalabilidade.
A independência da localização física.
A utilização de medição, bem como cobrança baseados na sua utilização.
31
Há 3 modelos emergentes:
32
Infrastructure as a Service (IaaS)
Prove recursos de computação (processadores, memória, armazenamento, largura de banda, etc) conforme a necessidade;
Fornece desde um único servidor a um datacenter;
Permite a escalabilidade de infra-estrutura (acréscimo ou decréscimo) para atender à demanda;
Serve para basear a construção em uma arquitetura de computação utilitária para receber uma camada de aplicação SOA (Service Oriented Analisys).
33
Platform as a Service (PaaS)
Permite que aplicativos sejam construídos na "nuvem“ da plataforma, usando uma variedade de tecnologias adequadas;
Simplifica a administração de serviços;
Permite que o ambiente de teste, desenvolvimento e produção (servidores, armazenamento, consumo de banda, etc) sejam cobrados no serviço de hospedagem;
Permite a escalabilidade de ambientes (acréscimo ou decréscimo);
As preocupações incluem o código e privacidade de dados, segurança e escalabilidade.
34
Software as a Service (SaaS )
Permite que aplicações (processadores de texto, CRM, etc.) ou serviços de aplicativos (agenda, cronograma, etc.) sejam executados na "nuvem", utilizando a internet para propagar dados.
Prove serviços personalizados em combinação com terceiros, e serviços comerciais considerando SOA para criar novas aplicações;
Permite a integração com sistemas de “back-office”;
Requer investimentos para construção de uma “camada” gerando com segurança, governança e gerenciamento de dados e suas funcionalidades.
35
Algumas das dificuldades enfrentadas
Dificuldade em lidar com sistemas operacionais heterogêneos (em especial hardware);
Demanda de "banda“ para facilitar a comunicação entre aplicativos e dados em vários locais;
Muitos profissionais de TI ainda são resistentes à mudança, porém esta resistência diminui a cada ano;
Embora se tenha noção dos custos no dia-a-dia, mesmo considerando o investimento inicial, muitas vezes há um desconhecimento do custo final para se ter uma visão real do benefício.
37
Um Datacenter é uma modalidade de serviço de valor agregado que oferece recursos de processamento e armazenamento de dados em larga escala.
Pode atender organizações de qualquer porte e mesmo profissionais liberais para que possam ter ao seu alcance uma estrutura de grande capacidade e flexibilidade, alta segurança, e igualmente capacitada do ponto de vista de hardware e software para processar e armazenar informações.
O gerenciamento é um dos principais serviços que um Datacenter
oferece na previsão e prevenção de falhas dos sistemas e equipamentos dos usuários.
A infraestrutura do data center é constituída por milhares de servidores com suas correspondentes redes de comunicação, subsistemas de armazenamento, distribuição de energia e extensos sistemas de refrigeração.
38
A infraestrutura da nuvem é formada pelos datacenters os quais abrigam os servidores que, mediante diferentes níveis de organização e técnicas de virtualização, oferecem os serviços em nuvem.
Portanto, os datacenters são a manifestação física da computação em nuvem, sendo a infraestrutura de rede a base de comunicações que habilita o paradigma de cloud computing, interligando servidores físicos em grande escala.
Os servidores físicos são tipicamente montados em conjunto dentro de um rack e interligados através de um switch Ethernet de acesso.
Este switch é denominado Top-of-Rack (ToR) e usa interfaces de uplink de 1 ou 10 Gbps para se interligar com um ou mais switches IP/Ethernet de agregação (AGGR), também conhecidos como switches End-of-Row (EOR).