160 likes | 277 Vues
Think : Guia de Desenvolvimento Mobile em Equipes Reduzidas. Aluno: Rafael Rabelo Itajubá Orientador: Prof. Dr. Eduardo Martins Morgado Co-Orientador : Lais Munhoz Mastelari. Sumário. 1 ........... Ambientes 1.1 ....... Ambiente de Produção 1.2 ....... Ambiente de Palco
E N D
Think: Guia de Desenvolvimento Mobile em Equipes Reduzidas Aluno: Rafael Rabelo Itajubá Orientador: Prof. Dr. Eduardo Martins Morgado Co-Orientador: Lais Munhoz Mastelari
Sumário 1........... Ambientes 1.1 ....... Ambiente de Produção 1.2 ....... Ambiente de Palco 1.3 ....... Ambiente de Desenvolvimento 2 .......... Frameworks 3 .......... Modelos e Arquitetura 4 .......... Resultados e Conclusões Parciais
1 - Ambientes Três tipos básicos de Ambientes: • Development (Desenvolvimento) • Staging (ou ‘Encenação’) • Production (Produção)
1.1 – Ambiente de Produção Constituído basicamente do Servidor, dos softwares essenciais para o funcionamento do webservice e dos aparelhos mobile dos usuários finais. • Dominio: thinkapp.me • 1 Servidor Kameda KS 2G (PROC: 1.6 GHz, RAM: 2GB, HD: 1TB, Link: 100 Mbps); • Arch Linux, distribuição ovh; • Tomcat 7; • MariaDB 5.5; • Apache 2.2; • IPTables 1.4; • Aparelhos Android 4.0, Windows 8+;
1.2 – Ambiente de Encenação Como trata da encenação literal do ambiente de produção, a configuração dos software é a mesma, variando o que for relacionado à software. • Domínio: stg.thinkapp.me • 1 VM (VMWare) (PROC: 1.6 GHz, RAM: 2GB, HD: 60GB); • Arch Linux, distribuição ovh; • Tomcat 7; MariaDB 5.5; • Apache 2.2; • IPTables 1.4; • Galaxy Note 10.1; NexusX; Windows 8;
1.1 – Ambiente de Desenvolvimento Mais complexo dos ambientes, composto por tudo o que é necessário ao desenvolvimento. • Domínio: dev.thinkapp.me • Eclipse Juno, com plug-ins para Maven, Mercurial e Hibernate Tools; • Visual Studio 2012, com plug-ins para NuGet e Mercurial; • Tomcat 7; • MySQL 5.5; • Apache 2.2; • Vários Emuladores de Android 4.0+;
1.1 – Ambiente de Desenvolvimento Alguns serviços rodam no servidor de Produção por comodidade, porém o correto é a separação em dois servidores, um somente para serviços de desenvolvimento e outro para produção. • Domínio neptune.li • Bugzilla; • Rhodecode & Mercurial; • Icescrum;
2 - Frameworks Uma variedade enorme de frameworks foram utilizados na construção do Web Service, porém são abaixo são citados os mais importantes: Web Service • VRaptor: framework generalista brasileiro, REST e ótima integração com Spring; • Spring Security: Autenticação (do usuário e das aplicações) e Autorização; • Hibernate: ORM e gerenciamento do acesso aos dados;
2 - Frameworks Todos os frameworks utilizados nas aplicações mobile estão citados abaixo: Android • AndroidAnnotations: framework generalista com o proposito de facilitar a manutenabilidade do código; • Spring Simple REST Template: Autenticação e consumo de dados REST; Windows 8 • sqlite3: para persistência dos dados localmente utilizando sqlite;
3 – Modelos e Arquitetura • Visão do Desenvolvedor Java C# think-android think-web think-rest think-win8 think-winphone7 think-core think-core
4 – Resultados e Conclusões Parciais Manutenabilidade Segurança Projeto de Software Experiência de Usuário Desempenho
4 – Resultados e Conclusões Parciais Android 4.0
4 – Resultados e Conclusões Parciais Android 4.0
4 – Resultados e Conclusões Parciais Windows 8
4 – Resultados e Conclusões Parciais Staging Production