Tutor eletrnico:
Alessandro Cavalheiri de Almeida
Tutor de sala:
Jardson de Souza Alves da Silva
Da Universidade Norte do Paran UNOPAR.
CUIAB
2015
Sumrio
1
INTRODUO .......................................................................................................... 3
Objetivo ................................................................................................................... 4
Desenvolvimento .................................................................................................... 6
3.1
3.2.1 Resenha dos captulos 11, 12, 13 e 29 do livro Engenharia de software de Lan
Sommerville Erro! Indicador no definido.
3.2.2 CAPITULO 12 Arquitetura de sistemas distribudosErro! Indicador no definido.
3.2.3 CAPITULO 13 Arquitetura de aplicaes ... Erro! Indicador no definido.
3.2.4 Capitulo 29 Gerenciamento De ConfiguraesErro! Indicador no definido.
3.3
CONCLUSO .......................................................................................................... 15
1 INTRODUO
A produo textual interdisciplinar individual tem como base os
assuntos abordados envolvendo todas as disciplinas do 6 semestre do Curso
Superior de Tecnologia em Anlise e Desenvolvimento de Sistemas:
Fundamentos de Redes de Computadores com o professor Paulo K. Nishitani,
Tpicos Avanados em Desenvolvimento de Sistemas
Anderson E.M. Gonalves
com o professor
Merris Mozer.
Sendo
eixo
temtico
GESTO
DO
PROCESSO
DE
2 OBJETIVO
3 DESENVOLVIMENTO
3.1
3.1.1 Persistencia
3.1.2 thread
Thread, Um pequeno programa que trabalha como
um subsistema independente de um programa maior, executando alguma
tarefa especfica. Um programa dividido em vrios threads pode rodar mais
rpido que um programa monoltico, pois vrias tarefas podem ser
executadas simultaneamente. Os vrios threads de um programa podem
trocar dados entre si e compartilhar o mesmo espao de memria e os
mesmos recursos do sistema.
Para o programador, existem vantagens e desvantagens em dividir um
programa em vrios threads. Por um lado isso facilita o desenvolvimento, pois
Sincronismo de processos
3.1.4
10
Nos ltimos anos a demanda por aplicativos mveis cresceu em um ritmo acelerado.
Somente no ltimo trimestre de 2011, foram vendidos 157, 8 milhes de smartphones,
um aumento de 54,7% em relao ao mesmo perodo do ano anterior, segundo a
consultoria IDC. medida que as vendas crescem a necessidade de aplicaes
tambm cresce tanto no mbito corporativo quanto no entretenimento. A partir deste
crescimento, cada vez mais surgem tcnicas e ferramentas para tornar este
desenvolvimento produtivo, principalmente nas trs plataformas mais populares do
momento: iOS, Android e Windows Phone.
Vamos abordar trs modos de desenvolvimento para dispositivos mveis:
desenvolvimento nativo, cross-platform e site mvel (web mobile). Focando nas suas
principais vantagens e desvantagens, apresentando casos de sucesso no intuito de
permitir que o leitor conhea melhor as trs abordagens e ajudando a definir qual a
melhor alternativa para cada situao.
Aplicativo Nativo
a abordagem mais simples e direta: para cada plataforma desenvolvida uma verso
do aplicativo.
O grande benefcio desta abordagem a melhor experincia de interface e
comportamento obtida. Os aplicativos mveis requerem excelentes experincias de
uso na interface e comportamento para se destacarem e obterem a ateno do usurio.
E a experincia de uso no portvel de uma plataforma para outra. Ela deve ser
repensada e construda do zero a cada plataforma em que o aplicativo criado. Um
simples exemplo pode ser visto na posio das abas: no iOS, as abas se posicionam
abaixo do contedo; enquanto no Android, acima. Apresentando maior diferena, o
Windows Phone as abas esto todas em um mesmo plano, sendo acessadas
deslocando o contedo horizontalmente.
Cada uma das plataformas possui suas convenes sobre interfaces e comportamentos.
Essas convenes auxiliam ao usurio a rapidamente compreender a utilizao do
aplicativo, j que ele habituado com a plataforma onde todos os aplicativos seguem
os mesmos padres de interface e comportamento.
As capacidades de cada dispositivo e plataforma tambm so acessveis sem
restries. A cada nova verso da plataforma, novas bibliotecas so adicionadas,
tornando possvel ou facilitando o desenvolvimento de vrios recursos pelos
aplicativos. Essas verses so liberadas em uma alta frequncia, uma por ano ou mais,
e geralmente coincidem com a chegada de novos aparelhos cujo hardware aproveita
todos essas novas capacidades. Os usurios desses novos aparelhos requerero os
novos recursos o mais breve possvel, e utilizando o desenvolvimento nativo
possvel satisfaze-los mais facilmente (verses betas so liberadas anteriormente para
os desenvolvedores).
O desenvolvimento nativo tambm conta com uma documentao mais abrangente e
completa, e a busca por solues ou resoluo de problemas facilitada, j que a
maioria dos desenvolvedores opta por essa alternativa.
11
Apesar de todas as vantagens, essa abordagem pode ter um alto custo. Construir n
verses do mesmo aplicativo para variadas plataformas geralmente multiplica o custo
do projeto na mesma taxa. Este custo adicional adicionado manuteno, j que so
vrias bases de cdigo, e em cada uma delas pode haver erros que no se encontram
nas outras. Outra dificuldade a obteno de uma equipe que consiga desenvolver
para as mltiplas plataformas ou a obteno de uma equipe para cada plataforma.
Aplicativo Cross-Platform
O desenvolvimento Cross-Platform, consiste em um desenvolvimento nico para
vrias plataformas. Atualmente, existem vrias ferramentas que permitem essa
abordagem, onde a parte visual normalmente desenvolvida em HTML 5 e CSS e que
so renderizados em um browser embutido no SDK padro da linguagem nativa
(Objective-C do iOS, Java do Android, etc.) tornando assim possvel o
desenvolvimento para vrias plataformas. Abaixo so listadas duas das principais
ferramentas do mercado e que foram utilizadas internamente:
Adobe
Air:
Utilizando o Adobe Air possvel programar em Actionscript 3.0 em
background e desenvolver a parte visual utilizando MXL (linguagem de
marcao da Adobe) ou ainda utilizando HTML 5/CSS. Atualmente possvel
criar verses para Android, iOS e Blackberry Tablet OS. Para instalar um
aplicativo desenvolvido utilizando o Adobe AIR necessrio ter instalado no
dispositivo o Adobe AIR Runtime. Entretanto, ao tentar instalar um aplicativo
desenvolvido no AIR, automaticamente solicitada a instalao do o Adobe
Air Runtime. O SDK do Adobe Air totalmente gratuito, porm, o Flash
Builder que uma IDE tambm desenvolvida para Adobe, com uma srie
facilidades para desenvolvimento paga. A referncia da linguagem
(Actionscript) bem detalhada, porm a documentao da parte visual no
to rica.
Motorola
Rhomobile
A plataforma Rhodes foi adquirida pela Motorola no incio de 2012 se
tornando Rhomobile. No Rhomobile possvel desenvolver em Ruby, com o
framework parecido com o j famigerado Rails, j a parte visual pode ser
desenvolvida em HTML5 e CSS. Ao criar um projeto novo, j est incluso um
skin em CSS de cada plataforma. A prpria criao do projeto j contm
uma rotina que determina em qual plataforma o aplicativo est rodando.
Tambm possui uma vasta camada de abstrao de banco de dados, tornando
esta parte do desenvolvimento simples. Em contrapartida, a parte da sua API
que trata requisies HTTP e Threads ainda muito instvel, alm disso, a
documentao e o suporte no Brasil deixam a desejar, principalmente nas
questes de licenciamento do produto.
12
13
Em Desenvolvimento....
14
15
4 CONCLUSO
16
17
gil
18
BANCO
DE
DADOS.
Disponvel
em:
<https://intranet.ifs.ifsuldeminas.edu.br/~fatima.bueno/Banco%20de%20Dado
s/Apostila%20Banco%20de%20Dados.pdf>. Acesso em: 08 Maio. 2015.
PHPPIT. Disponvel em: < http://www.phpit.com.br/artigos/frameworksphp-qual-e-o-melhor-pra-voce.phpit>. Acesso em: 10 Maio. 2015.
SOMMERVILE, Ian. ENGENHARIA DE SOFTWARE. 8 Edio. So
Paulo: Pearson Addison Wesley, 2007."
SIELO
Frameworks.
Disponvel
<http://www.scielo.br/scielo.php?script=sci_arttext&pid=S003476122011000500014>. Acesso em: 11 Outubro. 2015.
em:
SEGURANA
EM
APLICAOES
WEB.
Referencia digitais:
http://jakarta.apache.org/struts/
http://java.sun.com/j2ee/javaserverfaces/
http://www.hibernate.org
http://www.java.sun.com/products/JDO
19
http://www.prevayker.org
http://junit.org
http://jakarta.apache.org/ant
http://jakarta.apache.org/cactus/index.html
http://www.springframework.org/
http://logging.apache.org/log4j/docs/
http://jakarta.apache.org/commons/logging/
http://ireport.sourceforge.net/
http://www.jbanana.org