pt - ads - sem 6 - atividade individual

30
SISTEMA DE ENSINO PRESENCIAL CONECTADO ANÁLISE E DESENVOLVIMENTO DE SISTEMAS RAMON SANTOS COSTA PRODUÇÃO TEXTUAL INTERDISCIPLINAR

Upload: ramon-santos-costa

Post on 12-Feb-2015

803 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Pt - Ads - Sem 6 - Atividade Individual

SISTEMA DE ENSINO PRESENCIAL CONECTADOANÁLISE E DESENVOLVIMENTO DE SISTEMAS

RAMON SANTOS COSTA

PRODUÇÃO TEXTUAL INTERDISCIPLINAR

Ilhéus2013

Page 2: Pt - Ads - Sem 6 - Atividade Individual

RAMON SANTOS COSTA

PRODUÇÃO TEXTUAL INTERDISCIPLINAR

Trabalho apresentado ao Curso Análise e Desenvolvimento de Sistemas da UNOPAR - Universidade Norte do Paraná para as disciplinas do 6º semestre.

Professores.: Anderson Macedo, Veronice Freitas, Adriane Loper e Merris Mozer.

Ilhéus

2013

Page 3: Pt - Ads - Sem 6 - Atividade Individual

SUMÁRIO

1 INTRODUÇÃO......................................................................................................4

2 OBJETIVO............................................................................................................5

3 DESENVOLVIMENTO..........................................................................................6

3.1 E-COMMERCE X E-BUSINESS............................................................................................................6

3.2 USABILIDADE EM SISTEMAS DE INFORMAÇÃO..............................................................................10

3.3 DESENVOLVIMENTO DE APLICAÇÕES PARA DISPOSITIVOS MÓVEIS...............................................13

3.4 SEGURANÇA EM APLICAÇÕES WEB................................................................................................15

4 CONCLUSÃO.....................................................................................................19

5 REFERÊNCIAS...................................................................................................20

Ilhéus

2013

Page 4: Pt - Ads - Sem 6 - Atividade Individual

1 INTRODUÇÃO

Neste trabalho abordaremos os conteúdos trabalhados nas

disciplinas realizadas no 6ª semestre do Curso de Analise e Desenvolvimento de

Sistemas, demonstrando conceitos teóricos e aplicações práticas das atividades

desenvolvidas durante o semestre. Será abordado a diferença entre E-business, e-

commerce, usabilidade em sistemas de informação, características importantes para

o desenvolvimento de aplicativos móveis e segurança em aplicações Web.

Page 5: Pt - Ads - Sem 6 - Atividade Individual

2 OBJETIVO

Descrever as principais ferramentas para o desenvolvimento de um

Sistema de Informação envolvendo uma Locadora de Livros, incluindo soluções

como e-business, e-commerce, usabilidade em sistemas de informação,

características importantes para o desenvolvimento de aplicativos móveis e

segurança em aplicações Web.

Page 6: Pt - Ads - Sem 6 - Atividade Individual

3 DESENVOLVIMENTO

3.1 E-COMMERCE X E-BUSINESS 

Comércio eletrônico é toda e qualquer permutação, troca, compra e

venda de produtos ou valores realizados através de um meio eletrônico, no nosso

caso, a Internet. Inclui a exposição de bens e serviços on-line, bem como a

colocação de pedidos, faturamento e ainda todo o processamento de pagamentos e

transações.

Segundo Kotler (2000), o termo E-COMMERCE significa ser uma

ampla variedade de transações eletrônicas, tais como o envio de pedidos de compra

para fornecedores via EDI (troca eletrônica de dados). Ainda segundo Kotler, por

trás dos negócios eletrônicos existem dois fenômenos: o da conectividade e da

digitalização.

O autor analisa dois tipos de e-commerce:

Canais comerciais: várias empresas estabeleceram serviços de informação e de e-marketing que podem ser acessados por aqueles que assinam o serviço e pagam uma taxa mensal. (…) Esses canais fornecem informações (notícias, bibliotecas, educação, viagens, esportes, consultas), entretenimento (diversão e jogos), serviços de compra, oportunidades e diálogos (informativos, fóruns, salas de bate-papo) e e-mail. A Internet: a Internet é uma malha global de redes de computadores que tornou possível a comunicação global instantânea e descentralizada. (…)Eles podem enviar e-mails, trocar experiências, comprar produtos e acessar notícias, receitas e informações sobre arte e negócios. A Internet em si é grátis, embora os usuários individuais precisem de um provedor de serviços da Internet para estarem conectados a ela.

MODELOS DE E-COMMERCE:

Business to Business (B2B) - é o comércio entre duas empresas. Grande parte

das transações que ocorrem comércio eletrônico são B2B. O Business to Business

também é conhecido por Electronic Data Interchange (EDI).

Page 7: Pt - Ads - Sem 6 - Atividade Individual

Business to Consumer (B2C) - envolve a venda direta ao consumidor. Sites

populares como a Americanas.com Submarino e Amazon.com são exemplos de

sites de e-commerce Business to Consumer.

Consumer to Business (C2B) - este modelo inverte a lógica do B2C. Através dele,

os consumidores ofertam um bem de consumo para uma empresa. O

desenvolvimento de serviços por freelancers são exemplos deste modelo de

negócio.

Business to Employee (B2E) - através dele, empresas oferecem bens ou serviços

aos seus empregados em um ambiente de intranet. O B2E normalmente é utilizado

para automatizar processos de trabalho relativos aos trabalhadores. Exemplos de

aplicações B2E podem ser vistos na gestão online de apólices de seguros para os

trabalhadores, programas de ofertas e recompensas para funcionários, entre outros.

Consumer to Consumer (C2C) - neste modelo, um intermediário permite a troca

comercial entre dois ou mais consumidores. O comércio em sites de leilão (como o

MercadoLivre e eBay) é um exemplo de e-commerce C2C.

Abaixo, alguns exemplos de alguns dos principais sites de e-commerce do Brasil.

 

E-BUSINESS é um conjunto de todos os sistemas utilizados nos

processos de um negócio, incluindo um ERP (Enterprise Resource Planning), que

basicamente lida com a produção, um SCM (Supply Chain Managment), trabalhando

com a rede de fornecedores, um DSS (Decision Suport System) ou um processo de

Figura 01 – Site Americanas Figura 02 – Site Submarino

Page 8: Pt - Ads - Sem 6 - Atividade Individual

BI(Business Intelligence), que trabalha a inteligência do negócio e tomada de

decisões estratégicas, um CRM (Customer Relationship Managment), que trabalha

com a relação do cliente com a empresa e, finalmente, um processo de commerce,

que lida diretamente com as transações comerciais. O e-business engloba todas as

atividades de uma empresa, é uma integração de atividades empresariais

organizacionais que utiliza o sistema de informação e posteriormente a internet

como meio de alcançar objetivos mercadológicos e comerciais.

E-commerce significa comércio eletrônico, ou seja, o conjunto de

atividades comerciais que acontecem online. A diferença entre E-commerce e E-

business, expressões que muitas pessoas confundem, existe. E-business não

envolve transação comercial, é um negócio eletrônico, uma negociação feita pela

Internet, mas que não envolve necessariamente uma transação comercial. É um erro

de quem está no mercado utilizar estas duas expressões para dizer sobre a mesma

coisa", explica o especialista. Um gerente de E-commerce de uma empresa, por

exemplo, é aquele profissional responsável pelas relações comerciais da empresa

na Internet. O gerente de E-business , por sua vez, é responsável pelas

negociações da empresa na Internet. Um tem em seu trabalho a atividade de vendas

e o outro não. Esta é a principal diferença. Para trabalhar numa destas duas

ocupações, principalmente em e-commerce é essencial ter uma facilidade de

comunicação para manter uma relação direta com o cliente, conhecer Internet e

entender de Marketing. A intenção deve ser sempre atender a satisfação do

consumidor, assim como em todas as outras maneiras que existem de firmar uma

relação de custo-benefício.

Segundo Stamford (2000, p. 1): o ERP é um sistema integrado, que

possibilita um fluxo de informações único, contínuo e consistente por toda a empresa

sob uma única base de dados. É um instrumento para a melhoria de processos de

negócio, tais como produção, compras ou distribuição, orientado por estes

processos e não as funções/departamentos da empresa, com informações on-line e

em tempo real. Possui uma arquitetura aberta, a qual viabiliza operar com diversos

sistemas operacionais, banco de dados e plataformas de hardware. Desta forma, o

ERP permite visualizar por completo as transações efetuadas pela empresa,

desenhando um amplo cenário de seus processos de negócios.

Segundo Stamford (2000), o sistema ERP se tornou uma ferramenta

poderosa para as empresas em busca da competitividade. Sua popularidade tem

Page 9: Pt - Ads - Sem 6 - Atividade Individual

crescido substancialmente, como se pode ver, por exemplo, que a implantação de

um sistema ERP foi à opção adotada pelas 500 maiores empresas do mundo. As

razões para isto são várias, mas, como principais benefícios, as empresas esperam

uma integração e maior agilidade para os processos de negócios, bem como a

integração da informação.

Principais áreas de aplicação dos sistemas ERP:

Finanças e Controles Operações logísticas Recursos Humanos

Contabilidade

financeira

Contas a pagar

Contas a receber

Tesouraria

Ativo imobilizado

Orçamentos

Contabilidade gerencial

Suprimentos

Administração de

materiais

Gestão da qualidade

Planejamento e

controle da produção

Custos de produção

Previsão de vendas

Entrada de pedidos

Faturamento

Fiscal

Recrutamento e

seleção de pessoal

Treinamento

Benefícios

Desenvolvimento de

pessoal

Medicina e segurança

do trabalho

Quadro 1 - Principais áreas de aplicação dos sistemas ERP.Fonte: adaptado de Filho (2001).

Sistemas de Customer Relationship Management

(CRM) disponibilizam fluxos de trabalho, processos de aprovação e outros

procedimentos relacionados aos negócios. Mas nem sempre fica claro para a

empresa quais recursos devem ser usados na ferramenta e que o excesso de

mecanismos rigorosos pode causar insatisfação nos usuários.

Processos de negócios podem ser a saída para esse desafio.

Durante o ciclo de vendas, por exemplo, existem passos importantes que as

pessoas não podem controlar e é por isso que estabelecer um workflow é vital.

Abaixo, veja alguns processos de negócios que ilustram características relevantes

do CRM.

Processos de aprovação - esses são fluxos de trabalho clássicos que normalmente

envolvem controles, atualizações de documentos, timeouts, aprovações e

Page 10: Pt - Ads - Sem 6 - Atividade Individual

delegações. Exemplos de uso nas empresas incluem configuração de ordem,

verificações de crédito, termos especiais contratuais, atendimento de pedidos e

renovação de assinaturas. No CRM, a maioria desses exemplos está focada nas

áreas de vendas.

Fluxos de trabalho - em alguns casos, o principal problema é que um processo de

aprovação é muito rígido. Assim, usar uma série de fluxos de trabalho para substituir

um processo formal de aprovação permite que o processo de negócio avance

mesmo que uma etapa de aprovação seja adiada. 

Notificação via e-mail - sistemas clássicos de fluxo de trabalho usam documentos

de transação, ou outras atribuições de tarefas explícitas para gerenciar o fluxo de

trabalho entre os donos das tarefas. Quando um usuário conclui uma atividade, o

status do documento é atualizado e o trabalho, então, passa para a próxima pessoa

envolvida no processo.

Sequência de status - em muitos dos processos de negócios - especialmente na

parte inicial do ciclo de vendas - é impossível saber exatamente a sequência de

passos. É aí que etapas podem acontecer fora de ordem, em paralelo, ou fora do

controle. 

3.2 USABILIDADE EM SISTEMAS DE INFORMAÇÃO

A informação de qualidade é essencial para qualquer organização e,

assim, as organizações necessitam de sistemas de informação fáceis de serem

usados. Essa necessidade de informação qualificada e de boa usabilidade torna a

interface com o usuário parte fundamental dos sistemas de informação. Por ser a

parte visível do software, por meio da qual os usuários se comunicam com os

sistemas para executarem suas tarefas, é preciso que ela seja amigável, ou seja, de

fácil utilização e que atenda as expectativas e necessidades de seus usuários. Para

obter tais interfaces, deve ser dada atenção especial aos requisitos relacionados às

entradas de dados e à exibição de informação.

Segundo Barbosa e Silva (2010), a usabilidade é o critério de

qualidade de uso mais conhecido e, por conseguinte, o mais frequentemente

Page 11: Pt - Ads - Sem 6 - Atividade Individual

considerado. Para algumas pessoas, ainda, qualidade de uso chega a ser sinônimo

de usabilidade.

A área vem conquistando um grau de importância elevado no

mercado. Produtos e dispositivos tecnológicos vêm cada vez mais conquistando o

público que, em geral, não são especialistas em computação, mas se tornam cada

vez mais exigentes. Neste caso, as interfaces destes produtos devem ser

desenvolvidas com mais foco na interação do usuário. O não atendimento dos

requisitos e necessidades do usuário pode chegar a afetar o lucro de uma empresa

se a interface de seu produto não for agradável, atrativa e de fácil uso. Antes de

declarar um software pronto pra uso é necessário saber se ele atende os usuários

em suas necessidades e expectativas nas tarefas por ele executadas e no ambiente

em que será utilizado (PRATES e BARBOSA, 2007). Nesta fase é muito importante

que se tenha em mente as práticas de avaliação de IHM. É recomendado que

especialistas em IHC estejam envolvidos no projeto. Bailey, citado por Myers

(1993), relata que um estudo formal informou que os designers especialistas em IHM

criam interfaces com menos erros e com suporte de execução mais rápida do que

interfaces projetadas por programadores.

Tognazzini citado por Preece et al.(2005), aponta cinco boas razões

para que se façam avaliações de interface. São elas:

1. Os problemas são concertados antes de o produto ser lançado, não depois.

2. A equipe pode se concentrar em problemas reais, não em problemas imaginários.

3. Os engenheiros codificam, em vez de debater.

4. O tempo para que o produto entre no mercado é menor.

5. Finalmente, após a entrega da primeira versão, seu departamento de vendas

apresentará um design sólido que poderá ser vendido sem que se tenha de que

preocupar se ele vai funcionar realmente apenas na versão 1.1 ou 2.0.

“Para obter esses benefícios, uma avaliação de IHC não pode ser realizada simplesmente entregando (um protótipo de) o sistema para alguns usuários utilizarem e aguardando o relato espontâneo de problemas. Pelo contrário, avaliar a qualidade de uso, requer um planejamento cuidadoso da avaliação para que não sejam desperdiçados tempo e dinheiro.” (BARBOSA e SILVA, 2010).

Page 12: Pt - Ads - Sem 6 - Atividade Individual

As definições dos termos que envolvem a norma ISO 9241-11 são descritas como

segue (ISO, 2007):

Usabilidade: é a medida na qual um produto pode ser usado por usuários

específicos para alcançar objetivos específicos com eficácia, eficiência e satisfação

em um contexto específico de uso;

Eficácia: está ligada à acurácia e completude com as quais os usuários alcançam

objetivos específicos;

Eficiência: relaciona-se com o nível de eficácia alcançada no consumo de recursos

relevantes, como esforço mental ou físico, tempo, custos materiais ou financeiros;

Satisfação: tem a ver com o conforto e com atitudes positivas em relação ao uso de

um produto, podendo ser medida pela avaliação subjetiva em escalas de

desconforto experimentado, gosto pelo produto, satisfação com o uso do produto ou

aceitação da carga de trabalho, quando da realização de diferentes tarefas, ou a

extensão dos objetivos de usabilidade que foram alcançados;

Contexto de uso: refere-se a usuários, tarefas, equipamentos (hardware, software

e materiais) e ao ambiente físico e social no qual um produto é usado;

Sistema de trabalho: envolve o sistema, composto de usuários, equipamento,

tarefas e o ambiente físico e social, com o propósito de alcançar objetivos

específicos.

Com esses termos, a ISO (2007) traz uma estrutura de usabilidade, ilustrado na

Figura abaixo:

Figura 03 – Estrutura de Usabilidade

Page 13: Pt - Ads - Sem 6 - Atividade Individual

Na especificação de usabilidade devem descrever os objetivos

pretendidos e os componentes do contexto de uso como usuários, tarefas,

equipamento e ambientes, detalhando-se os aspectos que influenciam a usabilidade

e, descrevem-se, também os valores reais ou desejados de eficácia, eficiência e

satisfação para o objetivo do contexto que são necessários.

Exemplo de Medidas de Usabilidade

3.3 DESENVOLVIMENTO DE APLICAÇÕES PARA DISPOSITIVOS MÓVEIS

O uso de aplicações para dispositivos móveis, como celulares,

PDAs, Handhelds tem se tornado cada vez maior entre pessoas e empresas que

necessitam de grande flexibilidade no acesso e troca de informações. Porém, a

grande variedade de dispositivos existentes, a falta de frameworks e ferramentas

adequadas de desenvolvimento tem dificultado muito a construção dessas

aplicações.

O desenvolvimento de aplicações para dispositivos móveis requer

um cuidado especial, pois estes geralmente apresentam limitações de memória,

processamento e resolução que devem ser levadas em consideração no projeto

destas aplicações.

Figura 04 – Medidas de Usabilidade

Page 14: Pt - Ads - Sem 6 - Atividade Individual

Além disso, a grande variedade dos dispositivos existentes e a falta

de ferramentas de desenvolvimento adequadas e frameworks tem dificultado muito a

construção de aplicações portáveis e que utilizem, de maneira otimizada, os

recursos específicos de determinados equipamentos. Pode-se perceber claramente

que a maioria dos problemas acontece devido a fatores inerentes ao dispositivo em

uso e que estes problemas são agravados atualmente pela ausência de

ferramentas, técnicas e frameworks estruturados que permitam um desenvolvimento

mais fácil das aplicações.

O surgimento de aplicações web móveis também tem gerado algumas questões que

devem ser levadas em consideração no projeto de tais aplicações. Dentre elas pode-

se citar:

Variedade de dispositivos com diferentes capacidades

Múltiplas linguagens de marcação de texto

Múltiplas implementações de browsers

Múltiplas implementações do padrão wap.

Variações na capacidade de procesamento client-side

Falta de um ambiente sofisticado de desenvolvimento e debugging de

aplicações web

Informações importantes a serem consideradas antes de iniciar o

desenvolvimento aplicativos para dispositivos móveis, são eles: sistema operacional,

desempenho, usabilidade, segurança e recurso do aparelho.

Sistema Operacional: os sistemas operacionais (SO) que se destacam com mais

frequência na dinâmica do mercado atual são, o IOS da Apple, Android da Google e

o Windows Phone da Microsoft, porém ainda sem muita expressividade. Diante

desses três principais SO´s disponíveis no mercado, deve haver uma atenção

especial para versões do aplicativo para que funcione corretamente nos diferentes

tipos de SO´s.

Desempenho: um aplicativo embarcado, ou seja, um aplicativo que roda de fato no

dispositivo tem melhor desempenho do que aquele aplicativo web, mesmo que em

versão mobile. A diferença é que no nativo, todas as imagens e textos estáticos já

estarão carregados no aparelho e o que trafega é apenas os dados que serão

Page 15: Pt - Ads - Sem 6 - Atividade Individual

populados, o que deixa o aplicativo mais rápido. E na versão web ao abrir qualquer

página, será obrigatório baixar todo o conteúdo que está sendo visualizado.

Usabilidade: diante de tanta incompatibilidade e limitações dos recursos dos

navegadores web é que uma versão nativa será mais proveitosa para o usuário, pois

considerando que ele já esteja acostumado com os recursos do seu aparelho, não

terá dificuldade em utilizar o aplicativo.

Segurança: aplicativos nativos possuem recursos de segurança mais aprimorados

do que versão web. Para quem usa e instala o aplicativo, as informações podem ser

criptografadas para envio e descriptografadas no cliente. Assim, seus sistemas não

ficam expostos para toda a Internet – apenas os clientes terão acesso aos serviços.

Recurso do aparelho: a briga para produzir aplicativos compatíveis com os

modelos mais modernos é o maior desafio dos desenvolvedores, pois a cada dia os

recursos tecnológicos equipam os aparelhos com câmeras e filmadoras poderosas,

GPS, bússola, tocador de música, etc. Apenas aplicativos nativos tem o poder de

interagir com esses recursos do dispositivo, pois para utilizá-lo algumas APIs do SO

são necessárias e como seu núcleo se protege de acessos externos, por motivo de

segurança e restrição de linguagem, as versões web não tem a capacidade de

realizar estas integrações.

Plataforma de desenvolvimento: cada SO tem linguagem e ferramentas de

desenvolvimento próprias. Assim, um aplicativo que funciona no IOS, não irá

funcionar no Android e vice-versa. Em resumo, terá que ser desenvolvido um

aplicativo para cada Sistema Operacional. Neste caso, a versão web se comporta

melhor por ser mais genérica, dependendo apenas do browser utilizado.

3.4 SEGURANÇA EM APLICAÇÕES WEB

Um requisito básico da maioria das aplicações web é a segurança.

Os principais componentes de um sistema segurança são conhecidos como os

"quatro As": Autenticação, Autorização, Auditoria e Administração.

Page 16: Pt - Ads - Sem 6 - Atividade Individual

Autenticação - representa a forma como o usuário prova que é realmente quem

está dizendo que é. Na maioria das aplicações, a autenticação é feita utilizando o

nome do usuário e sua senha. Esta é a forma mais simples de autenticação e por

isso a mais utilizada. Mas a autenticação pode ser muito mais sofisticada,

envolvendo, por exemplo, a análise de um certificado digital ou a verificação de

padrões biológicos, como características da íris do olho ou o reconhecimento de

faces (autenticação biométrica).

Autorização - é utilizada para verificar se o usuário previamente autenticado possui

permissão para acessar um determinado recurso, ou para executar alguma função

da aplicação. Em termos simples, a autorização determina “quem pode fazer o que”.

Auditoria - os sistemas de segurança devem fornecer relatórios que permitam uma

auditoria nos sistemas, e não apenas logs em arquivos texto. Um exemplo comum é

o registro das operações realizadas por cada usuário. São armazenados qual foi o

usuário, a data e a hora, e que operação foi executada. Entretanto não é evidente, a

partir da simples leitura deste logs, quais acessos foram indevidos ou quais partiram

de usuários regulares. Um sistema de auditoria permitiria correlacionar padrões nos

logs e identificar reais tentativas de violar a aplicação.

Administração - a administração de usuários é uma tarefa complexa e exige uma

interface de fácil operação. É uma parte fundamental de sistemas de segurança,

porém muitas vezes subestimada, talvez por não ser um requisito tecnológico e sim

operacional. Adicionar novos usuários e gerenciar roles (veja o quadro "O que são

roles") são algumas das tarefas comuns da administração. Estas tarefas se tornam

mais complexas à medida que aumenta o número de usuários, aplicações e

permissões.

Outros importantes conceitos de sistemas de segurança são: confidencialidade,

integridade e não-repudiação. Os dados devem trafegar de forma segura entre o

cliente e o servidor, sem o risco de serem interceptados ou copiados enquanto em

trânsito pela rede, e com a garantia de que estão sendo enviados para o seu destino

real em vez de outro destino qualquer, indesejado. O problema de confidencialidade

é resolvido com criptografia. Nos servidores web, o SSL (Secure Sockets Layer) é a

forma mais utilizada de criptografia, fornecendo a integridade necessária para

Page 17: Pt - Ads - Sem 6 - Atividade Individual

garantir que os dados trafegados não sejam alterados durante o percurso, e

utilizando certificados digitais para garantir a identidade das partes envolvidas.

Vulnerabilidades e ameaças nas aplicações - o Website de uma empresa

geralmente serve como porta de entrada para os ataques. Aplicativos web são a

porta preferida dos invasores. Isso porque equipes de TI em geral investem apenas

em segurança do perímetro e do tráfego da rede, incluindo proteções clássicas

como firewall, antivírus, antispam, IDS/IPS, SSH, HTTPS e VPN. E mesmo nestes

casos, não fazem um monitoramento proativo e contínuo, nem tem um plano de

resposta a incidentes consistente e efetivo. Por outro lado, mantém sistemas

desatualizados e ignoram aplicativos falhos que podem, facilmente, ser explorados.

Códigos de software com pouca ou nenhuma preocupação com segurança desde

sua concepção — o que passa inclusive pela escolha de tecnologias que já

englobem conceitos e mecanismos nativos de segurança, robustez e proteção —

escancaram brechas de segurança por todos os pontos das aplicações. Nas

aplicações corporativas internas, as maiores preocupações costumam ser com

vazamento de informações e com uso e permissões indevidos — até mesmo

maliciosos, no caso de colaboradores insatisfeitos ou despreparados, negligentes,

imprudentes. Mas quando as aplicações são externas, especialmente em portais,

sítios e serviços web abertos à Internet, o universo de ameaças subitamente se

expande para o mundo todo, para qualquer pessoa no planeta com acesso internet,

algum tempo disponível e intenções que podem ir da curiosidade inconsequente ao

crime.

Aplicações sem segurança tipicamente expõem vulnerabilidades

amplamente conhecidas — do conhecimento de qualquer hacker de plantão — e

graves como:

Autenticação vulnerável, com usuários e senhas fracas, pouco ou nenhum controle a

tentativas de acesso “força bruta” etc.

Baixa granularidade de permissões, de forma que um vez acessado

com usuário legítimo muitas vezes se permite acessar alguns serviços ou situações

que não seriam efetivamente necessárias ou mesmo devidos àquele usuário.

Ausência de validação, consistência e crítica de dados no lado

servidor, quando um usuário está com JavaScript desativado ou defeituoso no lado

cliente.

Page 18: Pt - Ads - Sem 6 - Atividade Individual

Ausência de validação de condições limite nos tipos, formatos,

valores e tamanhos recebidos em dados ou parâmetros fornecidos pelo usuário,

permitindo ataques como Estouro de buffer e de pilha, Corrupção de memória,

Negação de serviço (DoS).

Ausência ou insuficiência de tratamento robusto, inteligente e

proativo de exceções na aplicação. Muitas vezes a maior parte das inúmeras

situações de erro ou exceção possíveis são esquecidas, descartadas ou

subestimadas pelos programadores.

Ausência de mecanismos de rastreabilidade e auditoria, como

gravação de registros de log/históricos de acessos e ações do usuário e do próprio

sistema.

Mecanismos de proteção (integridade e privacidade) de dados com

criptografia ausentes, simplórios/precários, ou mal implementados.

Não evitar Injeção de código, Injeção de SQL, Injeção de HTML e

Cross site scripting (XSS) nas entradas de dados e parâmetros fornecidos pelo

cliente/usuário.

Utilizar ou permitir a Inclusão de arquivos locais (ou remotos).

A lista de possibilidades comuns poderia se estender. Mas por aí já

se percebe que boa parte das aplicações na web são “queijos suíços” em potencial,

em se tratando de abundância de furos de segurança.

Page 19: Pt - Ads - Sem 6 - Atividade Individual

4 CONCLUSÃO

Este trabalho procurou demonstrar uma abordagem sistemática,

disciplinada e quantificável do desenvolvimento de software, demonstrando as

principais ferramentas utilizadas, seus conceitos teóricos e aplicações práticas das

atividades desenvolvidas durante o semestre.

O mundo móvel é a novidade da vez, a competitividade aumenta a

cada dia e certamente este é o momento ideal para que as empresas se tornem

ícones.

Page 20: Pt - Ads - Sem 6 - Atividade Individual

5 REFERÊNCIAS

 KORTH, Henry F.; SILBERSCHATZ, Abraham; SUDARSHAN, S. Sistema de

bancos de dados. 3a ed.Trad. Marília Guimarães Pinheiro e Paulo César Canhette.

São Paulo: Makron, 1999.

BOOCH, Grady; RUMBAUGH, James; JACOBSON, Ivar. UML: guia do usuário.

Trad. Fábio Freitas. Rio de Janeiro: Campus, 2000.

http://ri.bmfbovespa.com.br/upload/portal_investidores/pt/governanca_corporativa/

estatutos_politicas/Politica_da_Seguranca_da_Informacao.pdf. Capturado em

15/10/2012.

CONTREIRAS, B., 11/01/06 Quando surgiu o conceito de e-commerce? Sistemas

de Informação.

GARCIA, A., NOVAES, J., FREITAS, R., FIGUEREDO, M., LEITE, N., CARDOSO,

A.L., eCommerce: Conceitos, Evolução e Tendências.Disponível em:

<http://www.scribd.com/doc/7631644/eCommerce-Conceitos-Evolucao-e-

Tendencias&gt;. Acesso em: 14 maio 2013.

[ISO, 2007] ISO 9241-11:1998; Ergonomic Requirements for Office Work with

Visual Display Terminals (VDTs), Part 11, Guidance on Usability. Disponível em: ;

acesso em: Abr. 2007

[Rocha e Baranauskas, 2000] Rocha, Heloisa V. da; Baranauskas, Maria C.

C.; Design e avaliação de interfaces humano-computador. IME-SP, São Paulo,

2000.

Moraes, Everson, Um estudo sobre a validade e fidedignidade de métodos de

avaliação de interfaces. Maringá, 2007