Desenvolvimento de Software como Serviço através do uso de Metodologias Ágeis. Regis Pires Magalhães (IFPI), Nécio de Lima Veras (IFCE)
|
|
- Diogo Alencar Sales
- 8 Há anos
- Visualizações:
Transcrição
1 Desenvolvimento de Software como Serviço através do uso de Metodologias Ágeis Regis Pires Magalhães (IFPI), Nécio de Lima Veras (IFCE)
2 2 Parceria
3 3 Agenda Introdução Processos de Desenvolvimento Arquitetura Orientada a Serviço (SOA) Computação em Nuvem Software como Serviço (SaaS) Arquitetura Modelo-Visão-Controlador (MVC) Testes Integração Contínua Implantação (Deploy) da Aplicação Uso de sistemas de controle de versão
4 4 Introdução
5 5 Introdução Sistemas computacionais estão em todo lugar Qualidade é um item obrigatório Conceito atual Computação em Nuvem
6 6 Introdução Engenharia de Software Meta: criar software de qualidade com melhor custo-benefício Envolve Processos de Software ( Receita de bolo para atingir a meta) Geralmente aumenta o tempo de entrega do sistema Métodos Ágeis Processos menos prescritivos Desenvolvimento incremental do sistema (pequenas entregas)
7 7 Introdução Na indústria de software moderna demanda-se o desenvolvimento de sistemas em menos tempo e com qualidade superior Alguns meios: Métodos Ágeis Testes (qualidade) Ferramentas de Suporte (ferramentas para controle de versão, IDE s e frameworks de desenvolvimento) Arquitetura MVC (Model-View-Controller) Implantação (deployment) das aplicações diretamente na nuvem
8 8 Processos de Desenvolvimento
9 9 Introdução à abordagem de Projetos
10 10 Produtos de software Surge de ideias conceituais e reajustáveis; É intangível; Possui escopo variável; É dotado de incertezas constantes; Difícil visualização do produto final. Mas como obter um produto de software com qualidade diante de todas estas peculiaridades?
11 11 Engenharia de software A ideia foi incluir a disciplina de engenharia no desenvolvimento de software; A E.S. engloba três elementos fundamentais:
12 12 Processos de desenvolvimento Processos para construção de um software são como conjuntos de passos que irão trabalhar de forma ampla definições, desenvolvimento e manutenção; São compreendidos por Paradigmas da Engenharia de Software ou Modelos de Ciclo de Vida de Software [Pressman 2005];
13 13 O modelo cascata em imagem
14 14 Evolução do modelo Notou-se que quando o cliente visualiza um protótipo ele consegue entender melhor o que quer; Isso fez com que fossem combinados: O modelo Waterfall + Protótipos; Existiria uma sequência de 4 fases até atingir um protótipo mais apurado em relação ao anterior. Eis que surge o modelo Espiral.
15 15 O modelo espiral em imagem
16 16 Interseção entre ambos os modelo? Longo período de tempo para o desenvolvimento; Volume muito grande de documentação e planejamento; Fases maiores ainda => Big Design Up Front (BDUF); E agora, para onde vamos?
17 17 Agilidade Um grupo em fevereiro de 2001, chamado de Agile Alliance, começou a descobrir maneiras melhores e mais leves de desenvolver software valorizando: pessoas e interações ao invés de processos e ferramentas; softwares funcionando no lugar de documentações abrangentes; colaborações com clientes do que negociações de contratos e respostas à mudanças por planos fechados. Esses valores originaram o Manifesto Ágil com outros DOZE princípios que regem a filosofia de criar softwares com agilidade [Beck 2001].
18 18 Agilidade O modelo é baseado em mudanças abrangentes e; melhoria contínua de um protótipo incompleto; Algumas práticas são enfatizadas tais como: Test-Driven Development (TDD); Test-Driven Behavior (BDD) User Stories; Integração Contínua; Dentre outras...
19 19 Contraste com os outros dois modelos É tão rápido que novas versões são disponibilizadas ao cliente a cada duas semanas e novos recursos são adicionados continuamente ao mesmo protótipo até que o cliente esteja satisfeito [Fox e Patterson 2012].
20 20 Arquitetura Orientada a Serviço (SOA Service Oriented Architecture)
21 21 Arquitetura Orientada a Serviço (SOA) SOA é uma arquitetura de software onde todos os componentes são projetados para virarem serviços; Os componentes de uma aplicação devem atuar como serviços interoperáveis e podem ser usados de forma independente e/ou recombinados com outras aplicações; Uma implementação contrária a essa ideia é conhecida como software silo ;
22 22 Um exemplo real de SOA Facebook Platform Google+
23 23 Arquitetura de uma livraria com software silo Perceba: Os acessos aos dados; Uma API externa única contendo todos os subsistemas.
24 24 Arquitetura de uma livraria com SOA Perceba Separação e independência de subsistemas; Bases separadas por contextos; Fatias verticais de camadas; Fatias conectadas por serviços; Reusabilidade.
25 25 Computação em Nuvem
26 26 Computação em Nuvem SOA está nos fundamentos de Computação em Nuvem. Provê infra-estrutura composta de: (i) Comunicação realizada através da Internet; (ii) Escalabilidade para lidar com flutuações na demanda, atendendo rapidamente ao crescimento do número de usuários; (iii) Confiabilidade para que o serviço e a comunicação estejam continuamente disponíveis.
27 27 Clusters Antes: servidores de custo elevado mais confiáveis. É mais fácil lidar com poucos servidores do que com muitos computadores com menos recursos. Clusters Permitiram a interligação de computadores de baixo custo. Vantagens: mais escaláveis; distribuição de software facilitada (uso de máquinas virtuais); mais confiáveis devido ao uso de redundância; baixo custo do hardware; distribuição geográfica dificulta indisponibilidade do serviço.
28 28 Economia de escala Custos menores por máquina e de pessoal; Melhor aproveitamento do poder computacional de cada máquina.
29 29 Utility Computing Serviço de nuvem pública capaz de oferecer poder de processamento, armazenamento e comunicação a centavos por hora [Armbrust et al. 2010]. Recursos pagos pelo uso (pay-as-you-go). semelhante a serviços de distribuição de água, luz e telefonia. Objetivo: Fornecer armazenamento, CPUs e largura de banda como mercadoria, através de provedores especializados com um baixo custo por unidade utilizada [Sousa et al. 2010].
30 30 Utility Computing Usuários não se preocupam com: Escalabilidade; Backups. Exemplos: Amazon Elastic Compute Cloud (EC2), Google App Engine e Microsoft Azure.
31 31 Utility Computing Farmville Serviço Amazon Elastic Compute Cloud (EC2). 4 dias - 1 milhão de jogadores 9 meses - 75 milhões de jogadores
32 32 Modelos de Serviço
33 33 Software como Serviço (SaaS)
34 34 Software como Serviço (SaaS) Fornece softwares e dados com propósitos específicos. Softwares ficam acessíveis a partir de vários dispositivos. Não exige instalação e execução de código binário na máquina cliente. Desenvolvedores focam em inovação e não na infraestrutura [Sousa et. al. 2009].
35 35 Software como Serviço (SaaS) Disponibilidade em qualquer lugar e momento. Atualizações transparentes para os usuários. Exemplos: Aplicações Web relacionadas a busca, redes sociais e vídeos.
36 36 Vantagens [Fox e Patterson 2012] Não é preciso instalar a aplicação, nem se preocupar com hardware ou sistema operacional; Dados armazenados e gerenciados pelo próprio serviço. Ambiente propício ao compartilhamento, edição e manipulação coletiva dos dados. Software servidor em ambiente controlado pelo desenvolvedor. Possibilidade de lançar versões de testes para parte dos usuários. Atualizações mais fáceis e freqüentes de hardware e software. Evita a pirataria. Cobrança periódica e/ou pelo uso.
37 37 Crescimento de SaaS As vantagens impulsionam o rápido crescimento de SaaS. Versões SaaS para softwares tradicionais: Microsoft Office 365
38 38 Desvantagens Necessidade de boa conexão com a Internet Trabalho online Versão offline que sincroniza com versão online, acrescenta complexidade ao software.
39 39 Frameworks para desenvolvimento de SaaS Alguns frameworks foram especificamente concebidos para facilitar o desenvolvimento através de metodologias Ágeis. Alinham-se ao ciclo de vida ágil. Aplicações podem ser facilmente disponibilizadas em modelos de PaaS ou mesmo IaaS. Exemplos: Play Framework VRaptor Grails Django Ruby on Rails etc.
40 40 Arquitetura MVC
41 41 Testes
42 42 Testes A grande maioria das pessoas já teve alguma experiência com um software que não funcionou como esperado. Softwares que não funcionam corretamente podem levar a muitos problemas, incluindo financeiro, tempo e reputação das empresas. Podendo, inclusive, chegar a influenciar na integridade das pessoas [ISTQB 2011].
43 43 Testes Podemos associar a qualidade de um software à quantidade de falhas percebidas no mesmo O teste de software ajuda a medir e/ou garantir essa qualidade Níveis de Teste Unidade (componente) Integração (interface entre componentes) Sistema (comportamento) Aceitação (apropriado para uso)
44 44 Testes Métodos de Testes; No contexto de testes automáticos se sobressaem duas abordagens: TDD (Testing-Driven Development) ou Desenvolvimento dirigido por testes BDD (Behavior-Driven Design) ou Projeto guiado por comportamento
45 45 Testes
46 Test Driven Development
47 47 Testes Passo 1: Cria-se o teste! Mesmo SEM a classe principal. public class TestaSorteio { private Sorteio public void setup() throws Exception { sorteio = new Sorteio(); } public void testtotalparticipantes() { sorteio.settotal(200); assertequals(200, sorteio.gettotalparticipantes() ); }
48 48 Testes Passo 2: Tenta-se executar o teste, mas o mesmo não funcionará porque o código está incompleto.
49 49 Testes Passo 3: Cria os códigos de maneira que ele faça o teste funcionar. public class Sorteio { int total; public void settotal(int total){ } public int gettotal(){ return 200; } } Perceba que o código funcionará apenas para esse teste
50 50 Testes Passo 4: Roda-se o Teste e verifica-se que o mesmo será VERDE.
51 51 Testes Passo 5: Refatora-se o código implementado de maneira que ele funcione agora para outros testes. public class Sorteio { int total; public void settotal(int total){ this.total = total; } public int gettotal(){ return total; } }
52 52 Testes Passo 6: Repete-e novamente os testes que DEVEM continuar verdes.
53 53 Testes de comportamento Sobre BDD podemos fazer as seguintes considerações [Fox e Patterson 2012]: BDD faz perguntas sobre comportamentos antes e durante o desenvolvimento; Requisitos são escritos como estórias BDD se concentra no comportamento da aplicação versus a implementação da aplicação e os testes são conduzidos utilizando TDD. de usuários.
54 54 Fluxo padrão do BDD
55 55 Fluxo padrão do BDD
56 56 Fluxo padrão do BDD
57 57 Fluxo padrão do BDD
58 58 BDD Estória 1 Uma narrativa simples: uma confirmação de inscrição para o ENUCOMP faz o participante concorrer a um sorteio.
59 59 BDD Classe que mapeia a Estória 1
60 60 BDD Classe que testa tudo
61 61 Resultado da execução
62 Integração Contínua
63 63 Integração contínua Integração Contínua é uma pratica de desenvolvimento de software onde os membros de um time integram seu trabalho frequentemente, geralmente cada pessoa integra pelo menos diariamente podendo haver múltiplas integrações por dia. Cada integração é verificada por um build automatizado (incluindo testes) para detectar erros de integração o mais rápido possível. Muitos times acham que essa abordagem leva a uma significante redução nos problemas de integração e permite que um time desenvolva software coeso mais rapidamente. Martin Fowler
64 64 Integração contínua Cada commit no servidor de integração contínua realiza um build da aplicação e executa todos os testes. Vantagem: Feedback instantâneo. Após o processo bem sucedido de integração contínua a aplicação está pronta para implantação no servidor de produção. Ferramentas: CruiseControl, Hudson, Jenkins, Bamboo, BuildMaster, AnthillPro e Teamcity.
65 65 Implantação (Deploy) da Aplicação
66 66 Implantação (deploy) O processo de implantação é todo o conjunto de atividades necessárias para que o software esteja disponível para o cliente. O momento para a realização desse processo vai depender dos acordos feitos entre o desenvolvedor e o cliente.
67 67 Implantação (deploy) Basicamente três ambientes são bastante utilizados pela comunidade: Desenvolvimento: Desenvolvida Homologação: Testada Produção : Podemos visualizar funcionando
68 68 Heroku PaaS que permite fazer deploy automático da aplicação Utiliza GIT para enviar a aplicação para a nuvem. É gratuito com um determinado limite (vamos utilizar esse limite) Bem simples para fazer deploy de aplicações com Play, Rails e outros frameworks
69 69 Heroku É necessário instalar GIT em sua máquina
70 70 GIT: Comandos Adicionando arquivos (que foram modificados ou arquivos novos) git add. Comitando as suas modificações git commit -m Minha Mensagem do Commit Recebendo as atualizações git pull Enviando as suas alterações para o origin (remoto) git push origin master
71 71 Conclusão
72 72 Conclusão Engenharia de software cada vez mais focada na qualidade e eficiência do software. Buscamos também rapidez na entrega. Metodologias Ágeis aliam esses fatores. A Internet revoluciona o modo como o software é feito e distribuído.
73 73 Conclusão O modelo de SaaS e a arquitetura MVC viabilizam o desenvolvimento de software mais dinâmico, colaborativo, eficiente e com feedback do usuário. Os testes de software e ambientes de integração contínua asseguram a qualidade do software de forma automatizada. Sistemas de controle de versão e modelos de fluxos de trabalho facilitam o desenvolvimento em equipe e possibilitam um gerenciamento mais efetivo sobre as modificações ocorridas no software.
74 74 Referências Armbrust, M., Fox, A., Griffith, R., Joseph, A. D., Katz, R., Konwinski, A., Lee, G., Patterson, D., Rabkin, A., Stoica, I., and Zaharia, M. (2010). A view of cloud computing. Commun. ACM, 53(4): Beck, K., et al. (2001). "Manifesto for Agile Software Development". Agile Alliance. Acessado em 18 de agosto de Fox, A., Patterson, D. (2012). Engineering Long-Lasting Software: An Agile Approach Using SaaS and Cloud Computing, Alpha Edition. Strawberry Canyon LLC, Hoelzle, U. and Barroso, L. A. (2009). The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines. Morgan and Claypool Publishers, 1st edition. ISTQB. (2011). Certified Tester Foundation Level Syllabus, version Pressman, R. S. (2005). Software engineering: a practitioner s approach, 6 ed. New York: MacGraw-Hill, Serman, D. V. (2010). Orientação a projetos: uma proposta de desenvolvimento de uma arquitetura orientada a serviços. JISTEM: Journal of Information Systems and Technology Management, Sin mes, Sousa, F. R. C., Moreira, L. O. e Machado, J. C. (2009). Computação em Nuvem: Conceitos, Tecnologias, Aplicações e Desafios. In: Santos Neto, P. (Org.). III Escola Regional de Computação Ceará - Maranhão - Piauí, ERCEMAPI 2009, 1 ed. SBC, Piauí. Sousa, F. R. C., Moreira, L. O., Macedo, J. A. F. e Machado, J. C. (2010). Gerenciamento de Dados em Nuvem: Conceitos, Sistemas e Desafios. In: XXV Simpósio Brasileiro de Banco de Dados, 2010, Belo Horizonte. SBBD 2010.
75 Obrigado! Dúvidas, sugestões, comentários?
A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer
A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer lugar e independente da plataforma, bastando para isso
Leia maisAlexandre Malveira, Wolflan Camilo
Alexandre Malveira, Wolflan Camilo Introdução Cloud Computing Computação Móvel SaaS, PaaS e IaaS CloudBees Diariamente arquivos são acessados, informações dos mais variados tipos são armazenadas e ferramentas
Leia maisCurso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2
Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Aula 1 Conceitos da Computação em Nuvem A computação em nuvem ou cloud computing
Leia maisFaculdade Integrada do Ceará FIC Graduação em Redes de Computadores
Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Disciplina - Sistemas Distribuídos Prof. Andrey Halysson Lima Barbosa Aula 12 Computação em Nuvem Sumário Introdução Arquitetura Provedores
Leia maisPlanejamento Estratégico de TI. Felipe Pontes felipe.pontes@gmail.com
Planejamento Estratégico de TI Felipe Pontes felipe.pontes@gmail.com VPN Virtual Private Network Permite acesso aos recursos computacionais da empresa via Internet de forma segura Conexão criptografada
Leia maisIntrodução a Computação nas Nuvens
Introdução a Computação nas Nuvens Professor: Rômulo César Dias de Andrade. E-mail: romulocesar@faculdadeguararapes.edu.br romulodandrade@gmail.com www.romulocesar.com.br PROFESSOR... Mini CV: NOME: RÔMULO
Leia maisComputação em Nuvem. Alunos: Allan e Clayton
Computação em Nuvem Alunos: Allan e Clayton 1 - Introdução 2 - Como Funciona? 3 - Sistemas Operacionais na Nuvem 4 - Empresas e a Computação em Nuvem 5 - Segurança da Informação na Nuvem 6 - Dicas de Segurança
Leia maisFernando Seabra Chirigati. Universidade Federal do Rio de Janeiro EEL879 - Redes de Computadores II Professores Luís Henrique Costa e Otto Duarte
Fernando Seabra Chirigati Universidade Federal do Rio de Janeiro EEL879 - Redes de Computadores II Professores Luís Henrique Costa e Otto Duarte Introdução Grid x Nuvem Componentes Arquitetura Vantagens
Leia maisIntrodução ao Modelos de Duas Camadas Cliente Servidor
Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos
Leia maisCONCEITOS E APLICAÇÕES DA COMPUTAÇÃO EM NUVEM
CONCEITOS E APLICAÇÕES DA COMPUTAÇÃO EM NUVEM Rogério Schueroff Vandresen¹, Willian Barbosa Magalhães¹ ¹Universidade Paranaense(UNIPAR) Paranavaí-PR-Brasil rogeriovandresen@gmail.com, wmagalhaes@unipar.br
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS Cluster, Grid e computação em nuvem Slide 8 Nielsen C. Damasceno Introdução Inicialmente, os ambientes distribuídos eram formados através de um cluster. Com o avanço das tecnologias
Leia maisGIS Cloud na Prática. Fabiano Cucolo 26/08/2015
GIS Cloud na Prática Fabiano Cucolo 26/08/2015 Um pouco sobre o palestrante Fabiano Cucolo fabiano@soloverdi.com.br 11-98266-0244 (WhatsApp) Consultor de Geotecnologias Soloverdi Engenharia www.soloverdi.com.br.
Leia maisArmazenamento em nuvem é feito em serviços que poderão ser acessados de diferentes lugares, a qualquer momento e utilizando diferentes dispositivos,
Nuvem cloud Armazenamento em nuvem é feito em serviços que poderão ser acessados de diferentes lugares, a qualquer momento e utilizando diferentes dispositivos, não havendo necessidade de armazenamento
Leia maisANÁLISE COMPARATIVA ENTRE APLICAÇÕES GRATUITAS EM NUVEM
ANÁLISE COMPARATIVA ENTRE APLICAÇÕES GRATUITAS EM NUVEM Pedro Victor Fortunato Lima, Ricardo Ribeiro Rufino Universidade Paranaense UNIPAR Paranavaí Paraná Brasil pedrin_victor@hotmail.com, ricardo@unipar.br
Leia maisPor que Office 365? Office 365 Por que usar?
Por que Office 365? Office 365 Por que usar? POR QUE OFFICE 365? Olá. Nesse guia, vamos tratar de um serviço que está sendo extremamente procurado por executivos e especialistas em TI das empresas: o Office
Leia maisSistemas de Informação I
+ Sistemas de Informação I Processo de software I Ricardo de Sousa Britto rbritto@ufpi.edu.br + O que é Engenharia de Software n Definição dada pela IEEE [IEE93]: n Aplicação de uma abordagem sistemática,
Leia maisNa medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.
1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade
Leia maisMinicurso Computação em Nuvem Prática: Openstack
Grupo de Pesquisa em Software e Hardware Livre André Rover de Campos Membro Colméia andreroverc@gmail.com Joinville Minicurso Computação em Nuvem Prática: Openstack Roteiro Definições Virtualização Data
Leia mais1 http://www.google.com
1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou
Leia maisAUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0
AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 SUMÁRIO 1 Conceitos Básicos... 3 1.1 O que é Software?... 3 1.2 Situações Críticas no desenvolvimento
Leia maisO que é Cloud Computing?
O que é Cloud Computing? Referência The Economics Of The Cloud, Microsoft, Nov. 2010 Virtualização, Brasport, Manoel Veras, Fev. 2011. 2 Arquitetura de TI A arquitetura de TI é um mapa ou plano de alto
Leia maisArquiteturas Paralelas e Distribuídas
Arquiteturas Paralelas e Distribuídas TSI-6AN Apresentado por: Cleber Schroeder Fonseca 1 CLOUD COMPUTING 2 Cloud Computing A expressão cloud computing (computação nas nuvens) começou a ganhar força em
Leia maisComputação nas Nuvens
Computação nas Nuvens TÓPICOS Introdução Internet: O fundamento principal O que é Computação em Nuvens Vantagens Dúvidas Corrida pela tecnologia Trabalhos Futuros Conclusão Referências 2 TÓPICOS Introdução
Leia maisCOMPUTAÇÃO EM NUVEM: UM FUTURO PRESENTE
COMPUTAÇÃO EM NUVEM: UM FUTURO PRESENTE Andressa T.R. Fenilli 1, Késsia R.C.Marchi 1 1 Universidade Paranaense (UNIPAR) Paranavaí PR Brasil andressa.trf@gmail.com, kessia@unipar.br Resumo. Computação em
Leia maisESTUDO DE CASO WINDOWS VISTA
ESTUDO DE CASO WINDOWS VISTA História Os sistemas operacionais da Microsoft para PCs desktop e portáteis e para servidores podem ser divididos em 3 famílias: MS-DOS Windows baseado em MS-DOS Windows baseado
Leia maisJoão Víctor Rocon Maia Engenharia de Computação - UFES
João Víctor Rocon Maia Engenharia de Computação - UFES Agenda Quem usa? Conceito Ilustração Vantagens Tipologia Topologia Como fazer? O que é preciso? Infraestrutura Sistema Operacional Software Eucalyptus
Leia maisMÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS O termo metodologia não possui uma definição amplamente aceita, sendo entendido na maioria das vezes como um conjunto de passos e procedimentos que
Leia maisTUTORIAL PRÁTICO SOBRE Git. Versão 1.1
TUTORIAL PRÁTICO SOBRE Git por Djalma Oliveira Versão 1.1 "Git é um sistema de controle de revisão distribuida, rápido e escalável" (tradução rápida do manual). Basicamente é
Leia maisRenan Borges Pereira¹, Rodrigo Rodrigues da Silva². Faculdade de Tecnologia de Ourinhos FATEC. renanzaum_1@hotmail.com¹, rodrigues_fatec@hotmail.
Renan Borges Pereira¹, Rodrigo Rodrigues da Silva² Faculdade de Tecnologia de Ourinhos FATEC renanzaum_1@hotmail.com¹, rodrigues_fatec@hotmail.com² Há algum tempo o termo computação em nuvem ou Cloud Computing
Leia maisFeature-Driven Development
FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por
Leia maisConceitos ADMINISTRAÇÃO DE SISTEMAS DE INFORMAÇÃO. Comunicação; Formas de escritas; Processo de contagem primitivo;
Conceitos Comunicação; Formas de escritas; Bacharel Rosélio Marcos Santana Processo de contagem primitivo; roseliomarcos@yahoo.com.br Inicio do primitivo processamento de dados do homem. ADMINISTRAÇÃO
Leia maisARQUITETURA DE SISTEMAS. Cleviton Monteiro (cleviton@gmail.com)
ARQUITETURA DE SISTEMAS Cleviton Monteiro (cleviton@gmail.com) Roteiro Definição Documento de arquitetura Modelos de representação da arquitetura Estilos arquiteturais Arquitetura de sistemas web Arquitetura
Leia maisRelatório de Progresso
Luís Filipe Félix Martins Relatório de Progresso Mestrado Integrado em Engenharia Electrotécnica e de Computadores Preparação para a Dissertação Índice Introdução... 2 Motivação... 2 Cloud Computing (Computação
Leia maisAutomação de Locais Distantes
Automação de Locais Distantes Adaptação do texto Improving Automation at Remote Sites da GE Fanuc/ Water por Peter Sowmy e Márcia Campos, Gerentes de Contas da. Nova tecnologia reduz custos no tratamento
Leia maisENGENHARIA DE SOFTWARE I
ENGENHARIA DE SOFTWARE I Prof. Cássio Huggentobler de Costa [cassio.costa@ulbra.br] Twitter: www.twitter.com/cassiocosta_ Agenda da Aula (002) Metodologias de Desenvolvimento de Softwares Métodos Ágeis
Leia maisSolução Integrada para Gestão e Operação Empresarial - ERP
Solução Integrada para Gestão e Operação Empresarial - ERP Mastermaq Softwares Há quase 20 anos no mercado, a Mastermaq está entre as maiores software houses do país e é especialista em soluções para Gestão
Leia maisGestão em Sistemas de Informação. Profa.: Me. Christiane Zim Zapelini E-mail: christianezapelini@nwk.edu.br
Gestão em Sistemas de Informação Profa.: Me. Christiane Zim Zapelini E-mail: christianezapelini@nwk.edu.br Gestão em Sistemas de Informação Cloud Computing (Computação nas Nuvens) 2 Cloud Computing Vocês
Leia maisMANUAL DE IMPLANTAÇÃO SISTEMA DE INVENTÁRIO CACIC GOVERNO FEDERAL SOFTWARE PÚBLICO
MANUAL DE IMPLANTAÇÃO SISTEMA DE INVENTÁRIO CACIC Configurador Automático e Coletor de Informações Computacionais GOVERNO FEDERAL SOFTWARE PÚBLICO software livre desenvolvido pela Dataprev Sistema de Administração
Leia maisEngenharia de Software
Universidade São Judas Tadeu Profª Dra. Ana Paula Gonçalves Serra Engenharia de O Processo Uma Visão Genérica Capítulo 2 (até item 2.2. inclusive) Engenharia de - Roger Pressman 6ª edição McGrawHill Capítulo
Leia maisPROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às
Leia maisIntrodução à Computação
Aspectos Importantes - Desenvolvimento de Software Motivação A economia de todos países dependem do uso de software. Cada vez mais, o controle dos processos tem sido feito por software. Atualmente, os
Leia maisPor Antonio Couto. Autor: Antonio Couto Enterprise Architect
Cloud Computing e HP Converged Infrastructure Para fazer uso de uma private cloud, é necessário crescer em maturidade na direção de uma infraestrutura convergente. Por Antonio Couto O que é Cloud Computing?
Leia mais3 SCS: Sistema de Componentes de Software
3 SCS: Sistema de Componentes de Software O mecanismo para acompanhamento das chamadas remotas se baseia em informações coletadas durante a execução da aplicação. Para a coleta dessas informações é necessário
Leia maisUniverso Online S.A 1
Universo Online S.A 1 1. Sobre o UOL HOST O UOL HOST é uma empresa de hospedagem e serviços web do Grupo UOL e conta com a experiência de mais de 15 anos da marca sinônimo de internet no Brasil. Criado
Leia maisDesenvolvimento de um software de gerenciamento de projetos para utilização na Web
Resumo. Desenvolvimento de um software de gerenciamento de projetos para utilização na Web Autor: Danilo Humberto Dias Santos Orientador: Walteno Martins Parreira Júnior Bacharelado em Engenharia da Computação
Leia maisSistemas Distribuídos
Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor
Leia maishttp://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho
vi http://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Administração de Redes de Computadores Resumo de Serviços em Rede Linux Controlador de Domínio Servidor DNS
Leia maisProf. Samuel Henrique Bucke Brito
- Anéis Ópticos em Backbone www.labcisco.com.br ::: shbbrito@labcisco.com.br Prof. Samuel Henrique Bucke Brito Introdução Em 1980 foi formado o grupo de trabalho ANSI X3T9.5 com a finalidade de desenvolver
Leia maisVirtualização de Sistemas Operacionais
Virtualização de Sistemas Operacionais Felipe Antonio de Sousa 1, Júlio César Pereira 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil felipeantoniodesousa@gmail.com, juliocesarp@unipar.br Resumo.
Leia maisModelo Cascata ou Clássico
Modelo Cascata ou Clássico INTRODUÇÃO O modelo clássico ou cascata, que também é conhecido por abordagem top-down, foi proposto por Royce em 1970. Até meados da década de 1980 foi o único modelo com aceitação
Leia maisUsando Service Design Thinking para criar SOA Corporativo
Usando Service Design Thinking para criar SOA Corporativo Hilton Menezes 2013 Introdução Uma área de Tecnologia da Informação - TI ágil pode contribuir significativamente para que o negócio possa fazer
Leia maisProfs. Deja e Andrei
Disciplina Sistemas Distribuídos e de Tempo Real Profs. Deja e Andrei Sistemas Distribuídos 1 Conceitos e Projetos de Sistemas Distribuídos Objetivos: Apresentar uma visão geral de processamento distribuído,
Leia maisAgenda da Aula. Resumo dos Padrões (Aula 4) Padrões Arquiteturais. Arquitetura Cliente-Servidor. Arquitetura Cliente-Servidor
Reuso de Software Aula 05 Agenda da Aula Linha de Produtos de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com 19 Março 2012 Padrões arquiteturais Cliente-Servidor
Leia maisCPG: sincronização entre diferentes dispositivos
CPG: sincronização entre diferentes dispositivos Vitor Hugo Galhardo Moia Marco Aurélio Amaral Henriques {vhgmoia, marco}@dca.fee.unicamp.br Universidade Estadual de Campinas - UNICAMP Faculdade de Engenharia
Leia maisPráticas de Desenvolvimento de Software
Aula 8. 13/04/2015. Práticas de Desenvolvimento de Software Aula 8 - Arquitetura e infraestrutura de aplicações Web. Oferecimento Modelo cliente-servidor (1) Cliente Rede scheme://domain:port/path?query_string#fragment_id
Leia mais10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO
10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO UMA DAS GRANDES FUNÇÕES DA TECNOLOGIA É A DE FACILITAR A VIDA DO HOMEM, SEJA NA VIDA PESSOAL OU CORPORATIVA. ATRAVÉS DELA, ELE CONSEGUE
Leia maisMANIFESTO ÁGIL. Esses conceitos aproximam-se melhor com a forma que pequenas e médias organizações trabalham e respondem à mudanças.
METODOLOGIAS ÁGEIS SURGIMENTO As metodologias ágeis surgiram em resposta ao problema dos atrasos no desenvolvimento de software e aos cancelamentos, devido ao fato dos sistemas demorarem muito tempo para
Leia maisUM NOVO CONCEITO EM HOSPEDAGEM DE DOMÍNIO
www.origy.com.br UM NOVO CONCEITO EM HOSPEDAGEM DE DOMÍNIO CARACTERÍSTICAS: E-MAIL IMAP * Acesso simultâneo e centralizado, via aplicativo, webmail e celular/smartphone * Alta capacidade de armazenamento
Leia maisDESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES
DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.
Leia maisCloud Computing. Edy Hayashida E-mail: edy.hayashida@uol.com.br
Cloud Computing Edy Hayashida E-mail: edy.hayashida@uol.com.br Facebook 750 milhões de usuários 42% de todos os usuários do Facebook estão localizado na América, 27% na Ásia e 25% na Europa 4% na África
Leia maisArtur Petean Bove Júnior Tecnologia SJC
Artur Petean Bove Júnior Tecnologia SJC Objetivo O objetivo do projeto é especificar o desenvolvimento de um software livre com a finalidade de automatizar a criação de WEBSITES através do armazenamento
Leia maisBRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:
BRAlarmExpert Software para Gerenciamento de Alarmes A TriSolutions conta com um produto diferenciado para gerenciamento de alarmes que é totalmente flexível e amigável. O software BRAlarmExpert é uma
Leia maisSegurança da Informação
INF 108 Segurança da Informação Computação em Nuvem Prof. João Henrique Kleinschmidt Introdução Centralização do processamento Surgimento da Teleinformática Década de 60 Execução de programas localmente
Leia maisTópicos. Métodos Ágeis. Histórico; Valores; Métodos Ágeis x Modelos Tradicionais; Exemplo: Referências Bibliográficas.
Métodos Ágeis Edes Garcia da Costa Filho edes_filho@dc.ufscar.br 1 Tópicos Histórico; Valores; Métodos Ágeis x Modelos Tradicionais; Exemplo: Extreme Programming (XP). Referências Bibliográficas. 2 Histórico
Leia maisANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.
ANEXO 11 O MATRIZ Para o desenvolvimento de sites, objeto deste edital, a empresa contratada obrigatoriamente utilizará o framework MATRIZ desenvolvido pela PROCERGS e disponibilizado no início do trabalho.
Leia maisSoluções de Gerenciamento de Clientes e de Impressão Universal
Soluções de Gerenciamento de Clientes e de Impressão Universal Guia do Usuário Copyright 2007 Hewlett-Packard Development Company, L.P. Windows é uma marca registrada nos Estados Unidos da Microsoft Corporation.
Leia maisCLOUD. tendências CLOUD. entendendo e contratando assertivamente. Agosto/2012 INFORMATIVO TECNOLÓGICO DA PRODESP EDIÇÃO 02
tendências CLOUD EDIÇÃO 02 Agosto/2012 CLOUD O conceito de nuvem é nebuloso Como uma organização pode contratar assertivamente Serviços em Cloud? Quais são os principais riscos de um contrato de Cloud
Leia maisHistórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial
1 of 14 27/01/2014 17:33 Sistema de Paginação de Esportes Universitários Documento de Arquitetura de Software Versão 1.0 Histórico da Revisão Data 30 de novembro de 1999 Versão Descrição Autor 1.0 Versão
Leia maisUma aplicacação de privacidade no gerenciamento de identidades em nuvem com uapprove
Uma aplicacação de privacidade no gerenciamento de identidades em nuvem com uapprove Daniel Ricardo dos Santos Universidade Federal de Santa Catarina 10 de novembro de 2011 Agenda 1 Introdução 2 Identidade
Leia maisO CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE
O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE Renan Leme Nazário, Ricardo Rufino Universidade Paranaense (Unipar) Paranavaí PR - Brasil renazariorln@gmail.com, ricardo@unipar.br Resumo. Este artigo
Leia maisCom metodologias de desenvolvimento
Sociedade demanda grande quantidade de sistemas/aplicações software complexo, sistemas distribuídos, heterogêneos requisitos mutantes (todo ano, todo mês, todo dia) Mas, infelizmente, não há gente suficiente
Leia maisENG1000 Introdução à Engenharia
ENG1000 Introdução à Engenharia Aula 01 Processo de Desenvolvimento de Software Edirlei Soares de Lima Processo de Software O processo de software consiste em um conjunto estruturado
Leia maisWindows 2008 Server. Windows 2008 Server IFSP Boituva Prof. Sérgio Augusto Godoy. www.profsergiogodoy.com sergiogutogodoy@hotmail.
Windows 2008 Server IFSP Boituva Prof. Sérgio Augusto Godoy www.profsergiogodoy.com sergiogutogodoy@hotmail.com Windows 2008 Server Construído sob o mesmo código do Vista Server Core (Instalação somente
Leia maisProfessor: Curso: Disciplina:
Professor: Curso: Disciplina: Aula 1 Turma: Esp. Marcos Morais de Sousa Sistemas de informação Engenharia de Software I Dinâmica da disciplina, plano de curso e avaliação 03º semestre Prof. Esp. Marcos
Leia maisFigura 1 - Arquitetura multi-camadas do SIE
Um estudo sobre os aspectos de desenvolvimento e distribuição do SIE Fernando Pires Barbosa¹, Equipe Técnica do SIE¹ ¹Centro de Processamento de Dados, Universidade Federal de Santa Maria fernando.barbosa@cpd.ufsm.br
Leia maisCloud Computing. Eduardo Roloff
Cloud Computing Eduardo Roloff Sumário Conceituação Modelos de Serviços Modos de Implantação Oportunidades de Pesquisa Discussão Conceituação Cloud Computing é um modelo que pretende prover computação
Leia maisMultiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação
Multiplexadores Permitem que vários equipamentos compartilhem um único canal de comunicação Transmissor 1 Receptor 1 Transmissor 2 Multiplexador Multiplexador Receptor 2 Transmissor 3 Receptor 3 Economia
Leia maisVersão Liberada. www.gerpos.com.br. Gerpos Sistemas Ltda. info@gerpos.com.br. Av. Jones dos Santos Neves, nº 160/174
Versão Liberada A Gerpos comunica a seus clientes que nova versão do aplicativo Gerpos Retaguarda, contendo as rotinas para emissão da Nota Fiscal Eletrônica, já está disponível. A atualização da versão
Leia maisHardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)
Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,
Leia maisPROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -ARQUITETURAS DE APLICAÇÃO MÓVEL. Prof. Angelo Augusto Frozza, M.Sc. http://about.
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS -ARQUITETURAS DE APLICAÇÃO MÓVEL Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução Cliente-Servidor Cliente Servidor Tipos de conexão
Leia maisCOMPUTADORES NAS EMPRESAS Cloud Computing Prof. Reginaldo Brito
COMPUTADORES NAS EMPRESAS Prof. Reginaldo Brito Os computadores são essenciais para enfrentar o desafio da concorrência global, na qual as empresas precisam ser eficientes e ágeis e tem de produzir produtos
Leia maisGerenciamento de software como ativo de automação industrial
Gerenciamento de software como ativo de automação industrial INTRODUÇÃO Quando falamos em gerenciamento de ativos na área de automação industrial, fica evidente a intenção de cuidar e manter bens materiais
Leia maisTRIBUTAÇÃO NA NUVEM. Tax Friday 21 de outubro de 2011 AMCHAM - RJ
TRIBUTAÇÃO NA NUVEM Tax Friday 21 de outubro de 2011 AMCHAM - RJ PROGRAMA 1. INTRODUÇÃO À COMPUTAÇÃO EM NUVEM CONCEITOS APLICÁVEIS 2. PRINCIPAIS OPERAÇÕES E ASPECTOS TRIBUTÁRIOS POLÊMICOS INTRODUÇÃO À
Leia mais5 motivos pelos quais as empresas estão mudando suas WANs para Banda Larga
5 motivos pelos quais as empresas estão mudando suas WANs para Banda Larga Como os tempos mudaram e por quê está na hora de Evoluir a TI A WAN sempre teve como objetivo conectar usuários à aplicativos
Leia maisUML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2
UML 2 Guia Prático Gilleanes T.A. Guedes Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 Novatec capítulo 1 Introdução à UML A UML (Unified Modeling Language ou Linguagem de Modelagem
Leia maisComputação em Nuvem. Henrique Ruschel, Mariana Susan Zanotto, Wélton Costa da Mota. Especialização em Redes e Segurança de Sistemas 2008/2
Computação em Nuvem Henrique Ruschel, Mariana Susan Zanotto, Wélton Costa da Mota Especialização em Redes e Segurança de Sistemas 2008/2 Pontifícia Universidade Católica do Paraná Curitiba, Abril de 2010
Leia maisSIMCAP Simpósio de Computação Aplicada Cloud Computing
SIMCAP Simpósio de Computação Aplicada Cloud Computing A importância da nuvem na indústria dos games. Fábio Araújo Quintas / 2009027846 Micaely Bernardo Freire/2009036250 Ana Carolina M. Castro / 2008117299
Leia maisBancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info
Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com Última atualização: 20.03.2013 Conceitos Banco de dados distribuídos pode ser entendido como uma coleção de múltiplos bds
Leia maisABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE
ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE Amarildo Aparecido Ferreira Junior 1, Ricardo Ribeiro Rufino 1 ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil aapfjr@gmail.com
Leia maisDesenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto
Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto
Leia maisInfraestrutura: devo usar a nuvem? Prof. Artur Clayton Jovanelli
Infraestrutura: devo usar a nuvem? Prof. Artur Clayton Jovanelli Conceitos principais Nuvem Local Dados (informações) Profissional Pessoal Procedimento padrão (modelo) Produzir Armazenar Como era... Como
Leia maisEMAIL FECAP. Plataforma Microsoft Live@Edu
EMAIL FECAP Plataforma Microsoft Live@Edu Apresentação A FECAP, visando oferecer uma ferramenta mais dinâmica aos seus alunos, passou a disponibilizar, desde Julho/2011, o serviço chamado E-Mail FECAP,
Leia maisProfa. Gislaine Stachissini. Unidade III GOVERNANÇA DE TI
Profa. Gislaine Stachissini Unidade III GOVERNANÇA DE TI Information Technology Infrastructure Library ITIL Criado pelo governo do Reino Unido, tem como objetivo a criação de um guia com as melhores práticas
Leia maisComparativo entre os meios de comunicação para atingir 50 milhões de usuários
Comparativo entre os meios de comunicação para atingir 50 milhões de usuários Fonte: TAKAHASHI, 2000; VEJA ONLINE, 2006 Definições de comércio eletrônico/e-business E - BUSINESS, acrônimo do termo em
Leia maisQual servidor é o mais adequado para você?
Qual servidor é o mais adequado para você? Proteção de dados Tenho medo de perder dados se e o meu computador travar Preciso proteger dados confidenciais Preciso de acesso restrito a dados Acesso a dados
Leia mais