6º Semestre Individual

  • Published on
    10-Dec-2015

  • View
    13

  • Download
    0

Embed Size (px)

DESCRIPTION

Sobre Uml, gesto de conhecimento

Transcript

<p>ABNT - UNOPAR - Resumido</p> <p>3</p> <p>Sistema de Ensino Presencial ConectadoTecnologia em Anlise e Desenvolvimento de Sistemas</p> <p>Tiago alves Sena</p> <p>Atividade Interdisciplinar - Individual</p> <p>Irec - BA2015</p> <p>Tiago alves Sena</p> <p>Atividade Interdisciplinar - Individual</p> <p>Trabalho apresentado ao Curso de Tecnologia em Anlise e Desenvolvimento de Sistemas da Universidade Norte do Paran UNOPAR, para as disciplinas, interligadas. Fundamentos de redes de computadores, gesto do conhecimento, tpicos especiais em desenvolvimento de sistemas e seminrios vi. Professores:AndersonGonalvesPauloK.NishitaniMerris MozerVeronicedeFreitas</p> <p>Irec- Bahia2015</p> <p>SUMRIO1INTRODUO32OBJETIVO43RECURSOS UTILIZADOS EM DISPOSITIVES MVEIS53.1PERSISTNCIA EM APLICATIVOS PARA DISPOSITIVOS MVEIS COM J2ME53.1.1J2ME e perfil MIDP53.1.2RMS63.1.3Classe RecordStore73.2THREAD73.3SINCRONIA DE PROCESSOS83.3.1Excluso Mtua Com Espera Ativa93.3.2Desativando as Interrupes93.3.3Variveis de Bloqueio103.3.4Alternncia Estrita103.3.5Soluo de Peterson103.3.6Deadlock113.3.7Starvation113.4USABILIDADE DE INTERFACES PARA DISPOSITIVOS MVEIS113.4.1Recomendaes Crticas Para o Projeto de Interfaces Mobile113.4.1.1Reduzir clicks123.4.1.2Reduzir funcionalidades123.4.1.3Reduzir contedo123.4.1.4Dar escolhas ao usurio123.4.2Outras Prticas Importantes Que Herdamos da Usabilidade Convencional ....................................................................................................................................133.4.2.1Integridade esttica133.4.2.2Consistncia133.4.2.3Metforas133.4.2.4Contexto do usurio133.4.2.5Modelo mental133.4.2.6Navegao133.4.2.7Interao e feedback143.4.2.8Aparncia e design143.4.2.9Visualizao de informaes143.5JAVA DB E DISPOSITIVOS MVEIS144GESTO E SEGURANA NO SISTEMA DE INFORMAO174.1ENGENHARIA SOCIAL174.1.1Evitando a Engenharia Social194.2VULNERABILIDADE204.2.1Anlise de Vulnerabilidades204.2.2A origem das Vulnerabilidades204.2.3Principais Objetivos da Anlise de Vulnerabilidades214.3AMEAAS, ATAQUES E VULNERABILIDADES214.3.1Alguns Exemplos de Ameaas e Vulnerabilidades224.4MEDIDAS DE SEGURANA E POLTICA DE SEGURANA254.4.1As causas da Insegurana264.5AUDITORIA DE SISTEMAS DE INFORMAO264.5.1O Auditor de Sistemas285CONCLUSO30REFERNCIAS31</p> <p>INTRODUONeste trabalho ser abordada toda a matria do 6 Semestre, dentro deste contexto sero apresentados vrios recursos utilizados em dispositivos mveis, como a persistncia dos dados, threads e sincronia de processos.Ainda contexto dos sistemas mveis ser mostrado usabilidade de interfaces para dispositivos mveis, e podendo como isso trazer benefcios para o usurio, como a facilidade de uso, melhorando assim a forma como as pessoas interagem com estes dispositivos.Outro tema de suma importncia neste trabalho, fala sobre a gesto e segurana no sistema de informao, onde sero descritos alguns critrios como engenharia social, vulnerabilidades, ameaas e ataques, bem como medidas de segurana e auditoria.OBJETIVOTem-se como objetivo desta produo textual o aprofundamento dos contedos estudados durante o semestre, bem como o aperfeioamento nas tcnicas e conceitos vistos no decorrer das matrias, obtendo insumos para confeco do Trabalho de Concluso de Curso. RECURSOS UTILIZADOS EM DISPOSITIVES MVEISPersistncia em aplicativos para dispositivos mveis com J2MEA capacidade de persistir dados ou armazenar informaes sem dvida um dos recursos mais importantes em qualquer linguagem de programao. Armazenar dados para uma posterior recuperao uma constante na maioria dos ambientes computacionais, seja para persistncia simples de parmetros de configuraes de algum sistema ou persistncia de informaes digitadas pelo usurio para alimentar algum banco de dados.No que diz respeito persistncia em ambientes computacionais, o complicador quando esse mesmo ambiente tem recursos de armazenamento restrito e, ainda, uma arquitetura de hardware e software bem diferente da encontrada em desktops ou grandes servidores, como o caso dos dispositivos mveis. Essas diferenas podem ser observadas tanto do ponto de vista do usurio (ergonomia de hardware e software), quanto do ponto de vista do desenvolvedor (ferramentas de software, APIs e recursos). Os telefones celulares conseguiram alcanar uma popularidade quase to grande quanto a observada na utilizao de computadores pessoais a partir da dcada de 80. Mas, assim como todos os dispositivos mveis, eles tambm trazem consigo algumas dificuldades, como, problemas relacionados ergonomia do teclado, uma interface visual simples porm limitada e a dependncia de baterias que requerem recarga constante. </p> <p>J2ME e perfil MIDPO Java 2 Micro Edition (J2ME) foi desenvolvido para contemplar toda a diversidade computacional existente nos dispositivos mveis. A tecnologia J2ME conseguiu abstrair conceitos e tcnicas para homogeneizar o desenvolvimento em dispositivos mveis de forma completamente transparente. O perfil de informao de dispositivos mveis, conhecido como MIDP (Mobile Information Device Profile) surgiu como soluo para diferenciar alguns dispositivos que apesar de possuirem caractersticas semelhantes, ainda assim so tecnologicamente diferentes. O perfil MIDP contempla os aparelhos celulares e o responsvel pela definio das APIs necessrias para a persistncia de dados.RMSO conjunto de classes responsveis por armazenar e recuperar dados conhecido como Record Management System (RMS) ou sistema de gerenciamento de registros. O RMS permite manter os dados persistentes entre vrias chamadas de um MIDlet (aplicao baseada no MIDP). Segundo a especificao MIDP, deve haver, disponvel no dispositivo, pelo menos 8 kbytes de memria no-voltil (ROM) para que os aplicativos persistam dados. Exemplos de memria no-voltil seriam ROM, flash e etc. Em teoria, todo o espao livre na memria ROM, ou flash de um dispositivo mvel, estaria disponvel aos aplicativos para persistirem seus dados.A unidade bsica de dados mantida pelo RMS conhecida como RecordStore ou repositrio de registro (RR). Um RR pode ser comparado a uma tabela ou entidade no modelo relacional e identificado por um nome de at 32 caracteres. Cada registro composto por um identificador nico e um array de bytes, onde os dados do registro sero armazenados. Um RR mantm em sua estrutura um conjunto de registros que podem ter tamanhos variveis.Um MIDlet um aplicativo executado em um dispositivo mvel. Para isso, ele precisa ser empacotado em um arquivo Java (JAR). Um MIDlet pode, ainda, ser empacotado junto com outros MIDlets em um mesmo arquivo JAR, formando um conjunto. Tanto um MIDlet quanto um conjunto de MIDlets, formam uma aplicao J2ME nica e completa. Cada conjunto de MIDlets ou um MIDlet, pode criar e manter diversos RRs, podendo, inclusive, compartilh-los entre si, com o detalhe de que os nomes atribudos aos RRs precisam ser nicos. A verso 1.0 do MIDP no permitia o compartilhamento de RRs entre MIDlets empacotados em diferentes arquivos JAR. A verso 2.0 do MIDP corrigiu essa limitao, permitindo assim o compartilhamento de um RR por todas os MIDlets instalados no dispositivo.As APIs do RMS no fornecem recurso para travamento de registros. A implementao de um RR garante que a operao de persistncia ser realizada de forma indivisvel e sncrona evitando eventuais inconsistncias no caso de acessos mltiplos. Se for necessrio que um MIDlet utilize mltiplas threads para acessar um RR, necessrio toda uma ateno para manter a consistncia dos dados. Tambm, responsabilidade da implementao no dispositivo fazer todo o possvel para garantir a integridade e a consistncia dos RRs durante operaes normais ao seu uso como reinicializao, troca de baterias e etc. Durante a desinstalao de um MIDlet do dispositivo, os armazns de dados pertencentes a ele so removidos automaticamente.Classe RecordStoreQualquer operao de insero, atualizao e excluso de registros em um RR provocam a atualizao automtica do seu nmero de verso e da data em que ocorreu a mudana. O nmero da verso de um RR pode servir como referencial, por exemplo, para algoritmos de replicao. uma maneira interessante de detectar quantas vezes um RR foi modificado. Esses dois valores, o nmero da verso e a data da atualizao, podem ser recuperados atravs do uso dos mtodos getVersion() e getLastModified() respectivamente.THREADPara programas "normais" (single thread), tem um nico ponto de execuo dentro do programa num momento particular, um thread semelhante: tem um incio, uma sequncia e um fim, como um programa "normal". Tem um nico ponto de execuo no certo momento dentro de um thread.O thread no um programa, mas executa dentro de um programa (ver figura).</p> <p>Definio: thread um fluxo nico de controle sequencial dentro de um programa.A coisa fica mais interessante quando temos mais de um thread no mesmo programa (ver figura).</p> <p>O browser um exemplo de uma aplicao multithreaded, onde vrias coisas podem ocorrer ao mesmo tempo: Scroll; Download de um applet; Download de uma imagem; Tocar uma animao; Tocar um som; Imprimir uma pgina em background; Download de uma nova pgina; Olhar 3 applets de ordenao trabalhando.Um thread parece ser um processo mas compartilha o mesmo "espao de endereamento", sendo muito rpido chavear a execuo entre threads mas no entre processos.O thread recebe alguns recursos prprios durante a execuo: Uma pilha de execuo para poder chamar mtodos, passar parmetros, alocar variveis locais; Um "Program Counter"; Chamamos isso o "contexto de execuo do thread"; Alguns autores chamam thread de "contexto de execuo".sincronia de processosA sincronia de processos permite gerenciar o acesso concorrente a recursos do sistema operacional de forma controlada por parte dos processos, de maneira que um recurso no seja modificado em simultneo, ou que os processos no fiquem em espera que o recurso seja libertado.Os processos (aplicativos ou programas) de um computador compartilham determinados recursos da chamada regio crtica, que so as variveis globais, as instrues de E/S, algum banco de dados, etc. Neste compartilhamento podem ocorrer erros.Exemplo:Uma escola est fazendo sua matrcula apenas pela internet, o nmero de vagas 5, dois usurios esto fazendo a matrcula no exato momento, finalizam a matrcula . A operao que o programa usa da regio crtica: matrcula finalizada -1.Se os dois usurios fazem a operao ao mesmo tempo, quando a matricula for finalizada subtrai-se 1 vaga:Matrcula finalizada -1 (5-1)=4Matrcula finalizada -1 (5-1)=4Quando um terceiro usurio for fazer esta mesma matrcula,o nmero de vagas ser expresso como 4, sendo que na verdade deveria ser 3. Isto causar instabilidade e poder comprometer todo o sistema. A soluo para este tipo de caso a certeza de excluso mtua, isto , apenas um processo pode acessar a regio crtica por vez; Os mecanismos que implementam a excluso mtua utilizam um protocolo de acesso regio crtica. Toda vez que um processo for executar sua regio crtica, ele obrigado a passar por um controle de entrada e outro de sada.Excluso Mtua Com Espera AtivaApenas um processo acessa a regio crtica de cada vez. Espera ativa faz testes continuos em uma varivel, at que ela seja alterada, causando assim um grande disperdicio de CPU. Abaixo temos solues para problemas como o mostrado acima.Desativando as InterrupesA forma mais simples de garantir a excluso mtua fazer com que o processo desabilite as interrupes ao entrar na regio crtica, e antes de sair as habilite novamente. Com isso a CPU no far um chaveamento no momento em que o processo estiver na regio crtica, pois o chaveamento vem de uma interrupo atravs de um relgio.Variveis de BloqueioQuando uma vriavel "lock" estiver como 0, significa que a regio crtica esta livre, e 1 esta ocupada. Assim, antes de entrar cada processo testa o valor da varivel "lock", se for 0, coloca como 1 e entra na regio crtica, aps sair coloca o valor 0, se o valor j for 1, aguarda at ser 0.Alternncia EstritaNeste metodo, criada uma varivel "turn", com valor inicial 0, a imagem abaixo mostra dois processos 'a' e 'b' utilizando este metodo.</p> <p>Fonte: http://pt.wikipedia.org/wiki/Sincronia_de_processos</p> <p>Como "turn" esta como 0, o processo 'a' no fica "preso" no while, e assim executa a regio crtica, aps terminar, ele seta "turn" para 1 e parte para o resto do cdigo, caso ocorra um chaveamento e o processo 'b' tente executar a regio crtica antes que o processo 'a' sete "turn" como 1, ele ficara em um loop, apenas testando a variavel "turn"(espera ativa).Soluo de PetersonAntes do processo entrar na regio crtica ele executa o procedimento enter_region(), com o seu nmero. E aps sair da regio crtica, executa leave_region().DeadlockDois ou mais processos ficam irreversivelmente bloqueados.StarvationUm processo fica sempre no final na fila e no consegue ser atendido, pois processos com maior prioridade "roubam" sua vez.Usabilidade de interfaces para dispositivos mveisUm questionamento comum sobre as melhores prticas de front-end / usabilidade para dispositivos mveis o quanto elas so especficas ao contexto mobile, pois muitas delas no se distinguem das diretrizes que vm sendo difundidas h 20 anos. fato que grande parte das diretrizes so semelhantes, mas o que muda a criticidade quando tratamos de mobile. Algumas recomendaes tornam-se mais graves e imperdoveis quando no so seguidas no projeto de interfaces para dispositivos mveis.Como exemplo, podemos usar a questo da densidade informacional. Em aplicaes que sero visualizadas em dispositivos mveis, os textos devem ser concisos, eliminando informaes secundrias que podem ser irrelevantes. Ora, mas isso tambm vale para aplicaes visualizadas em desktop!, voc pensa. Porm, para mobile, a conciso deve ser ainda maior e informaes que seriam aceitveis nas aplicaes web/desktop convencionais devem ser removidas de aplicaes mobile. A diretriz base a mesma: reduzir informao secundria. O que diferencia o grau de severidade que isto representa neste outro cenrio.Recomendaes Crticas Para o Projeto de Interfaces MobileDesenvolver sites e aplicaes para mobile requer ateno para alguns critrios que tem um grande impacto na forma com que as pessoas interagem com estes dispositivos.Reduzir clicksEsta parece ser uma recomendao bvia para ambiente mobile. Porm, quem j desenvolveu para mobile ou utiliza aplicaes nestes dispositivos, pense: voc j deve ter visto algum site que apresenta uma informao bem limitada na primeira tela com um link de leia mais, onde voc tem o esforo de clicar e esperar o carregamento do restante do contedo que voc necessita, que s vezes poderia ser resumido em apenas uma tela.Se em um projeto usual de interface as melhores prticas indicam que seria mais adequado disponibilizar toda a informao necessria em uma nica tela e poupar cliques do usurio, porque esta diferena em mobile? Por isso, deixar o contedo mais conciso crucial para que a informao possa ser apresentada de modo objetivo e o menos fragmentada possvel.Reduzir funcionalidadesRestringir a quantidade de funcionalidades, mantendo as que so necessrias ao ambiente mobile, diminui a chance dos usu...</p>