Upload
jailson-vanessa
View
70
Download
0
Embed Size (px)
Citation preview
0
SISTEMA DE ENSINO PRESENCIAL CONECTADO
ANALISE E DESENVOLVIMENTO DE SISTEMAS
ALESSANDRO JÚNIOR DA SILVA
CRIANDO TENDÊNCIAS
Morrinhos
2013
ALESSANDRO JÚNIOR DA SILVA
1
CRIANDO TENDÊNCIAS
Trabalho apresentado ao Curso (analise e
desenvolvimento de sistemas) da UNOPAR -
Universidade Norte do Paraná.
Prof. Reinaldo Nishikawa
Marco lkuro hisatomi
Adriane Aparecida Lopes
Everson Morais
Paulo Kiyoshi Nishitani
Veronice de Freitas
Morrinhos
2013
2
SUMÁRIO
1 INTRODUÇÃO..........................................................................................................3
2 DESENVOLVIMENTO..............................................................................................4
2.1 Objetivo..................................................................................................................4
2.2 Vantagem de usar UML.........................................................................................4
2.3 Perguntas relacionadas à empresa.............................................................................5
2.4 Planejamento e Orçamento ..................................................................................6
2.5 Propostas e Soluções....................................................................................................6
2.6 Responsabilidade de Social.................................................................................6
2.7 Como criar uma Stored Procedure Select, insert, delete………..………………….7
2.8 ORM ( Object-Relational Mapping )………………………..………………………..10
2.9 Conclusão ...........................................................................................................11
3 Referencias.............................................................................................................11
3
1 INTRODUÇÃO
O objetivo deste trabalho é aplicar os conceitos das disciplinas do
5° semestre, abordando e elaborando as etapas como informar 6 livros de redes de
computadores para o auxílio para criação de um sistema .
Também falamos sobre comunicabilidade entre o Design e o
usuário.
Realizei uma pesquisa sobre sistemas com Multiprogramáveis e com
múltiplos processadores, falando sobre suas características.
Com tudo levantamos uma pesquisa sobre projeto de sistemas.
2 Desenvolvimento
Livros sobre redes de computadores
1- OBRA: Engenharia de Redes de Computadores
AUTOR: Alencar Marcelo Sampaio de
Sinopse
O livro apresenta as redes de computadores com enfoque para
Engenharia e mostra a evolução da rede mundial até a Internet, com base em
tecnologia da informação. A Teoria de Filas e as principais definições da área,
incluindo fluxo de dados, classes e modelos de filas e redes locais, são colocadas,
além dos protocolos e arquiteturas de redes e o modelo de referência ISO. O fluxo
de pacotes na rede é apresentado, assim como o protocolo Internet para voz. As
redes de comunicações ópticas, de alta velocidade e a gerência integrada de redes
e serviços são abordadas. O texto pode ser utilizado por estudantes, para
treinamento de engenheiros de empresas de Tecnologia de Informação e
Comunicação e demais profissionais da área.
2- OBRA: Segurança De Redes
AUTOR: Tom Thomas
Sinopse
Este livro lhe conduz por um passeio ao cerne das tecnologias que
compreendem e controlam a Segurança de Redes. Sumário Capítulo 1 - Deve Haver
4
Hackers Aqui!; Capítulo 2 - Políticas de Segurança e Respostas; Capítulo 3 - Visão
Geral das Tecnologias de Segurança; Capítulo 4 - Protocolos de Segurança;
Capítulo 5 - Firewalls; Capítulo 6 - Segurança de roteadores; Capítulo 7 - Redes
Privadas Virtuais IPSec (VPNs); Capítulo 8 - Segurança de Redes sem-fio; Capítulo
9 - Detenção de invasão e HoneyPots; Capítulo 10 - Ferramentas do negócio;
Apêndice A; Respostas das questões de revisão dos capítulos; Glossário.
3- OBRA: - Redes de Computadores
AUTOR: Diane Barrett; Todd King
Sinopse
Redes de Computadores traz os conceitos básicos do assunto: já
no início do livro os autores tratam das comunicações de dados (multiplexação, sina
lização e codificação), para depois introduzir o modelo de referência OSI. Em
seguida, equipamentos de rede e tecnologias são discutidos. Com essa base, os
protocolos das camadas de enlace e rede são apresentados partindo-se da pilha de
protocolos TCP/IP para propor outras pilhas.
A estrutura do texto permite aos estudantes exercitar e sintetizar os conteúdos
tratados em cada capítulo. Esta obra possui características que a tornam uma
excelente escolha para livro-texto dessas disciplinas, pois aborda os conceitos
básicos, tecnologias e protocolos de redes, associados a uma visão prática e a
exercícios que estimulam os estudantes a sintetizar o conteúdo abordado.
4: OBRA: Rede de Computadores - Tecnologia e Convergência de
Redes
AUTOR: Almir Wirth Lima Junior
Sinopse
Nosso livro fornece detalhes sobre praticamente todas as áreas das
comunicações de dados, desde assuntos básicos e práticos, até profundas
informações. Portanto, esse livro é indicado tanto para alunos e profissionais do
nível técnico, quanto para universitários, pós-graduandos e profissionais de nível
superior. Nosso trabalho fornecerá ao mais experiente profissional da área de
comunicação de dados, os conhecimentos necessários para a sua formação
profissional, reciclagem e/ou acompanhamentos de cursos de pós-graduação.
5
Trata-se de uma obra cuidadosamente elaborada, a qual engloba assuntos desde
princípios básicos sobre a teoria de transmissão digital, até os assuntos referentes
às redes de computadores, assuntos básicos e aprofundando-se até a inclusão da
convergência das redes (tráfego simultâneo de voz, vídeo e multimídia em uma
única rede).
Ao final da leitura deste trabalho, o leitor terá adquirido todas as informações para a
sua completa atualização nessa área de trabalho, incluindo configuração e
protocolos de rede, interfaces, modems, redes multi-plataforma, redes locais (LANs),
redes com enlaces de longa distância (WANs), e redes sem fio ("wireless"), incluindo
topologias, switches, roteadores e os demais componentes dessas redes.
5 - OBRA: Criptografia e Segurança de Redes
AUTOR: William Stallings
Sinopse
Guia definitivo sobre o assunto, "Criptografia e Segurança de
Redes", 4º edição, apresenta a teoria, a prática e os princípios para o
desenvolvimento de sistemas que visam a segurança de computadores e redes,
bem como das informações armazenadas e que trafegam nesses meios.
Seguindo o estilo didático característico de William Stallings, o livro inicialmente traz,
em detalhes, conceitos e padrões criados e utilizados para a criptografia, tais como
cifras, assinaturas digitais e criptografia de chaves pública e simétrica. Em seguida,
aborda a parte prática da segurança de redes, apresentando os recursos de última
geração para a segurança de autenticação, IP e Web. Por fim, discute os desafios
da segurança de sistemas, explicando como se dão e como evitar os mais comuns e
danosos ataques da atualidade.
Uma ampla gama de recursos e informações disponíveis on-line, no site exclusivo
do livro, complementa a obra, indispensável para professores e estudantes de
segurança de redes e criptografia, nos cursos de ciência da computação, e para
qualquer profissional que queira se destacar no mercado de trabalho.
6 OBRA: Infra-Estrutura Elétrica Para Rede De Computadores
AUTOR: José Maurício Pinheiro
6
A difusão da Informática, da automação e dos sistemas de
telecomunicações modernos tem levado ao uso cada vez maior de novas
tecnologias e de novos equipamentos eletroeletrônicos com finalidades diferentes.
Com efeito, essa difusão de tecnologias muitas vezes cria efeitos conflitantes que
exigem cuidados no momento de se utilizar um ou outro tipo de equipamento.
Impõe-se, portanto, o conhecimento de técnicas que permitam a coexistência de
sistemas de fabricantes diferentes, com aplicações diferenciadas, mas que
necessitam funcionar em conjunto. É disso que trata Infra-estrutura Elétrica para
Rede de Computadores. Saiba de que forma garantir a segurança de sua rede e de
seus equipamentos simplesmente por entender melhor os elementos elétricos que
suas máquinas utilizam para operar. Entenda de que forma utilizar a sua instalação
elétrica de modo a preservar a vida útil e o bom funcionamento do seu equipamento.
Comunicabilidade
Comunicabilidade e quando o designer deve se expressar
adequadamente por meio da interface, assegurando que o usuário consiga prever e
compreender o que fazer no sistema para realizar tarefas sozinho, com eficiência,
facilidade e com uma comunicação em mão dupla entre usuário e sistema. Assim, o
usuário entende a mensagem do designer e consegue interagir com o sistema, e o
sistema responde às ações do usuário informando o que está acontecendo, evitando
que o usuário fique angustiado e insatisfeito.
A comunicabilidade diz respeito à capacidade da interface de
comunicar ao usuário a lógica do design: as intenções do designer e os princípios de
interação resultantes das decisões tomadas durante todo o processo de design,
Por isso que o usuário, através de sua interação com a aplicação,
seja capaz de compreender as premissas, intenções e decisões tomadas pelo
projetista durante o processo de design.
Nesse sentido um sistema de alta comunicabilidade, os designer
devem responder às seguintes questões ao usuário:
Para que o sistema serve?
7
Qual é a vantagem de utilizá-lo?
Como funciona?
Quais são os princípios gerais de interação com o
sistema?
Uma interface com alta comunicabilidade permite que os usuários
usem com facilidade, confiança, eficiência e rapidez o sistema interativo,
contribuindo para a usabilidade. Entretanto, a usabilidade e a comunicabilidade são
comprometidas diante de outro conceito crítico, principalmente em websites, a
acessibilidade.
Sistemas multiprogramáveis com múltiplos processadores
Se caracterizam por permitir que vários programas (tarefas) residam
simultaneamente
na memória e concorram pelo uso dos recursos disponíveis (apenas
um programa detém, num determinado instante, o controle da UCP). Veja a imagem
abaixo.
8
Sistemas com múltiplos processadores são arquiteturas que
possuem duas ou mais UCPs interligadas e que funcionam em conjunto na
execução de tarefas independentes ou no processamento simultâneo de uma
mesma tarefa. Inicialmente, os computadores eram vistos como máquinas
sequenciais, em que o processador executava as instruções de um programa uma
de cada vez. Com a implementação de sistemas com múltiplos processadores, o
conceito de paralelismo pode ser expandido a um nível mais amplo.
A evolução desses sistemas se deve, em grande parte, ao elevado custo de
desenvolvimento de processadores mais rápidos. Em função disso, passou-se a dar
ênfase a computadores com múltiplos processadores, em vez de arquiteturas com
um único processador de alto desempenho. Outra motivação são aplicações que
necessitam de grande poder computacional, como sistemas de previsão do tempo,
dinâmica dos fluidos, genoma humano, modelagens e simulações. Com múltiplos
processadores, é possível reduzir drasticamente o tempo de processamento destas
aplicações. Inicialmente, as configurações limitavam-se a poucos processadores,
mas, atualmente existem sistemas com milhares de processadores.
Os primeiros sistemas com múltiplos processadores surgiram na década de
1960, com o objetivo principal de acelerar a execução de aplicações que lidavam
com um grande volume de cálculos. Por muito tempo, esses sistemas foram
utilizados quase que exclusivamente em ambientes acadêmicos e centros de
pesquisas voltados para o processamento científico. O mercado corporativo
começou realmente a utilizar os sistemas com múltiplos processadores na década
de 1980, para melhorar o desempenho de suas aplicações comerciais e reduzir o
tempo de resposta dos usuários interativos. Posteriormente, as empresas
reconheceram também nesse tipo de sistema uma maneira de aumentar a
confiabilidade, a escalabilidade e a disponibilidade, além da possibilidade do
balanceamento de carga de suas aplicações. Atualmente, a maioria dos servidores
de banco de dados, servidores de arquivos e servidores Web utiliza sistemas com
múltiplos processadores. Além disso, sistemas com múltiplos processadores estão
sendo utilizados em estações de trabalho e, até mesmo, em computadores
9
pessoais. Isso foi possível devido à redução de custo dessas arquiteturas e à
evolução dos sistemas operacionais, que passaram a oferecer suporte a múltiplos
processadores.
Vantagens e Desvantagens
Escalabilidade
Escalabilidade é a capacidade de adicionar novos processadores ao hardware do
sistema. Em ambientes que permitam apenas um processador, para aumentar a
capacidade computacional é necessário substituir a UCP por uma outra com maior
poder de processamento. Com múltiplos processadores, é possível ampliar a
capacidade de computação apenas adicionando-se novos processadores, com um
custo inferior à aquisição de um outro sistema com maior desempenho.
Relação custo/desempenho
Sistemas com um único processador, por mais poderosos que sejam, apresentam
limitações de desempenho inerentes à sua arquitetura, devido às limitações
existentes na comunicação da UCP com as demais unidades funcionais,
principalmente à memória principal. Além disso, o custo do desenvolvimento de um
processador que ofereça desempenho semelhante a um sistema com múltiplos
processadores é muito elevado.
Sistemas com múltiplos processadores permitem utilizar UCPs convencionais de
baixo custo, interligadas às unidades funcionais através de mecanismos de
interconexão. Desta forma, é possível oferecer sistemas de alto desempenho com
custo aceitável.
Tolerâncias a falhas e disponibilidade
10
Tolerância a falhas é a capacidade de manter o sistema em operação, mesmo em
casos de falha em algum componente. Nesta situação, se um dos processadores
falhar, os demais podem assumir suas funções de maneira transparente aos
usuários e suas aplicações, embora com menor capacidade computacional.
A disponibilidade é medida em número de minutos por ano que o sistema
permanece em funcionamento de forma ininterrupta, incluindo possíveis falhas de
hardware ou software, manutenções preventivas e corretivas.
Uma alta disponibilidade é obtida com sistemas com maior tolerância a falhas.
Sistemas de alta disponibilidade são utilizados em aplicações de missão crítica,
como sistemas de tráfego aéreo e de comércio eletrônico na internet.
Segurança em php
Este texto é para informar os erros comuns em segurança que
podem ser encontrados em scripts PHP. Enquanto muitos dos seguintes conceitos
podem parecer ser um senso comum, eles infelizmente não são sempre uma prática
comum.
Quando falamos de segurança temos que ter noção que um projeto
já deve nascer com esta preocupação. Que os programadores deste projeto também
tenha esta preocupação na construção do código. Ou seja segurança não é apenas
um "coisa" de rede ou de administrador de sistema, mais também uma "coisa" de
programador.
Vamos ver aqui alguns exemplos simples de códigos inseguros que
podem comprometer todo um sistema.
1) (Cross site script) regra Numero um, nunca passe dados
importantes via GET
11
Exemplo. Uma pagina que usa templates onde o link para o template
é passado via GET.
http://exemplo.com.br/exemplo.php?link=faleconosco.html
Isto poderia gerar um grande transtorno pois a pessoa poderia
passar qualquer endereço acima, o que poderia fazer por exemplo, que esta pagina
funcionaria como um site pornô.
2) (tratamento de dados) regra numero dois, sempre que passar
um dado via GET tratar esse dado usando REGEX ou qualquer tipo de mascara,
para ter certeza do tipo de dado recebido.
http://exemplo.com.br/exemplo.php?cod=123
$cod = int($_GET["cod"]);
//isto já transformaria qualquer dado para inteiro
3) (Sql injection) Esta regra é comumente usada por
programadores desatentos. Nunca passe dados de um formulário direto para um
query. Exemplo:
Código html
<input type=text name=login>
<input type=password name=senha>
código php
<?php
$sql = "SELECT * FROM users WHERE user=$login AND
pass=$senha";
?>
Ou seja as variáveis $login e $senha chegam direto no banco de
dados sem nenhum tratamento ou o que pode acontecer.
Se o usuário digitar no login ou na senha OR "1=1", ou seja,
$user = a nada OR 1=1 -->passou
$senha = a nada OR 1=1 -->passou
e pode-se fazer muito mais....
12
Uma simples validação de senha e login evitaria isso, sendo este
tipo de invasão muito comum e de responsabilidade do programador não do servidor
de hospedagem.
4) (tipo de dados) Quarta regra: Sempre verificar e indicar a origem
da variavel.
Exemplo:
$cod = $_GET["cod"] //tipo get
$cod = $_POST["cod"] //tipo post
$cod = $_SESSION["cod"] //tipo session
$cod = $_COOKIE["cod"] //tipo cookie
já que por padrão as versões superiores a 4.2 trazem a variável
global desabilitada
5) restrição de html htmlspecialchars.
Exemplo: um formulário padrão com campos abertos como de
observação onde o usuário poderia colocar no lugar de simples texto um código html
comum, um link de foto ou até um javascript malicioso.
Para impedir isso existe um tratamento importante com a função
htmlspecialchars() (ver documentação do php) que transforma códigos html em
simples códigos texto.
Obs. Teremos uma classe de validação de formulários com um
método com esta função seu uso será descrito na documentação da classe.
6) Gravar arquivos via upload. Sempre que for gravar um arquivo
via upload tenha certeza do tipo de arquivo que está gravando. Por exemplo um
arquivo de imagem pode ser simplesmente tratado usando uma validacão de tipos.
Exemplo:
function type_up()
{//Verifica se o mime-type do arquivo de imagem
13
if(!eregi("^image\/(pjpeg|jpeg|png|gif|bmp)$", $this-
>arquivo["type"])){
return 0;
}else{
return 1;
}
}
Poderíamos citar N outros casos de invasão ou insegura de um
sistema. Porém o mais importante é ter a consciência de projetarmos desde o inicio
o sistema pensado sempre na responsabilidade de termos SEGURANÇA
14
4.5 PROJETO PARA SISTEMAS
Planejar o seu sistema significa velocidade de desenvolvimento,
redução de custos, menos manutenção, mais produtividade e vantagem competitiva.
A análise e projeto de sistemas são processos que envolvem: o levantamento de
informações por analista de sistemas sobre necessidades específicas do negócio da
empresa; o estudo, organização e ilustração das necessidades; e a elaboração da
solução que será utilizada no desenvolvimento do sistema.
Este procedimento é semelhante ao processo de construção de uma casa ou um
prédio de qualidade. É essencial fazer um planejamento detalhado, com a finalidade
de pensar sobre as formas de construção, fazer estimativas de tempo, recursos,
pessoas para a realização desse projeto.
Para fazer bons projetos a Visão I utiliza uma linguagem de modelagem dotada de
diagramas que permitam a representação de sistemas em diferentes visões. Isso
facilita o entendimento tanto do cliente quanto do programador.
Cada fase do processo de produção de software da Visão-i está associada a
metodologias e padrões de desenvolvimento. Os diagramas e documentação
elaborados pela nossa empresa seguem a notação da UML (United Modeling
Language ou Linguagem de Modelagem Unificada) que é uma linguagem visual
utilizada para modelar os sistemas computacionais por meio de paradigmas de
Orientação a Objetos.
1.1 ANÁLISE
A análise enfatiza a investigação do problema, o seu objetivo é
produzir uma compreensão ampla, e pouco profunda sobre o sistema. Nesta etapa o
analista tem a missão de formular junto ao cliente o que será o sistema, quais as
regras de negócio que estão envolvidas, quem, e como será usado o sistema.
A análise consiste no estudo de documentações e entrevistas com colaboradores da
empresa a fim de definir a característica do software, tais como seus requisitos,
comportamento, estrutura e dinâmica de seus processos.
A etapa de análise é de grande relevância porque além de documentar o sistema
requerido, permite: (1) o entendimento do sistema tanto pelo analista, quanto pelo
15
cliente; (2) a organização e padronização da linguagem, documentos e recursos; (3)
as descobertas de novas necessidades não pensadas na definição do escopo do
projeto; (4) o desenvolvimento mais rapidamente dos módulos atuais e futuros; (5)
diminuição do custo com o projeto em razão de resolução de na etapa da análise.
No final da etapa da análise já é possível ter uma estimativa mais precisa de
investimento e tempo para a produção do sistema desejado.
Nesta fase correspondem os seguintes documentos:
Levantamento de Requisitos
Diagrama de Caso de Uso
Modelo conceitual
1.2 PROJETO
O projeto basicamente enfatiza a proposta de solução do problema
que atenda os requisitos levantados na análise. Em outras palavras, a análise é a
investigação para tentar descobrir o que o cliente quer e o projeto consiste em
propor a solução com base no estudo levantado na análise.
Por fim, o projeto é uma extensão do modelo de análise e diferente da mesma, o
resultado produzido é para ser compreendido pelos programadores na construção
do sistema.
Ao término já é possível ter uma noção mais concreta dos recursos necessários,
tempo, investimento e tecnologias adicionais necessárias para o desenvolvimento do
sistema.
Abaixo a lista dos documentos que poderão ser produzido na etapa de projeto:
Diagrama de classes:
16
Diagrama de sequência:
Diagrama de estados
Diagrama de atividade
Diagrama de Implantação
Diagrama de entidade e relacionamento:
17
1 CONCLUSÃO
Conclua-se que neste trabalhos observamos pontos estudados em
todo semestre como Conceito de redes de computadores (Levantar 6 livos de redes
de Comutadores)
Comunicabilidade utilizar no desenvolvimento de
sistemas para que o usuários não fique perdidos no sistema oferecido pelo o
fornecedor.
Também falamos sobre segurança em códigos php para melhor
ajudar o programador,
Em relação Analise de projetos e sistemas, esta descrito todas os
processos e foco, e entre outros assuntos.
Referencias
http://www.linhadecodigo.com.brhttp://www.coacyaba.com.br/livroacessibilidade/index.php?
title=Acessibilidade_X_Usabilidade_X_Comunicabilidade
http://pt.wikipedia.org/wiki/Sistema_de_informa%C3%A7%C3%A3o
https://unopar.bv3.digitalpages.com.br/
http://pt.wikipedia.org/wiki/Projeto_de_software
http://www.coacyaba.com.br/livroacessibilidade/index.php?
title=Acessibilidade_X_Usabilidade_X_Comunicabilidade