Dp 6 Semestre OK

download Dp 6 Semestre OK

of 22

description

UMl. Banco de Dados, Referencia a programação web

Transcript of Dp 6 Semestre OK

ABNT - UNOPAR - Completo

PAGE

ALVES SENA

SUMRIO31 INTRODUO

2. Principais diagramas UML............................................................................................43. Descrevendo e exemplificando sobre MRN.................................................................84. Descrevendo e exemplificando Programao Orientada a Objetos...........................115. Tecnologias para desenvolvimento Web....................................................................166. CONCLUSO.............................................................................................................18REFRENCIAS..............................................................................................................19

1 INTRODUO

Este portflio tem como principal objetivo integrar contedos e saberes da disciplina ofertada no semestre tendo a funo de promover o dilogo entre as diferentes reas, proporcionando uma compreenso mais alegadas atravs das disciplinas que compem o semestre, ser abordada as disciplinas Projetos Orientados a Objetos, Programao para Web I, Anlises Orientado a Objetos II. Alguns conceitos sero aplicados e abordados, conceitos esses que auxiliam no desenvolvimento e na analises de projetos, breve resenha sobre de reas da competncia, uma pesquisa sobre UML e algumas conceitos. Diagramas de classe, diagramas de pacotes entre outros conceitos sobre UML e sobre banco de dados, apresentando suas funes. Pesquisa bibliogrfica que aborde e compare de frameworks para o desenvolvimento para Java (Web) e apresentado na pesquisa entre os principais frameworks Java, para o desenvolvimento web, relao de custo benefcios de usar os frameworks no desenvolvimento, relao de requisitos necessrios para implementao e disponibilizao em uma aplicao web.

Sobre os padres de projeto ser comentado as funcionalidade e aplicaes dos padres de criao e quais os padres sero usados no projeto. Sobre a persistncia de dados, qual o modelo deve ser adotado? E uma justificativa sobre a adoo no projeto, um levantamento ferramentas a serem usadas para elaborao dos artefatos da fase do projeto.

2. Principais Diagramas UMLUm guia rpido de consulta aos principais diagramas da UML.Diagrama de Caso de Uso

Representa o conjunto de comportamentos de alto nvel que o sistema deve executar para um determinado ator. o diagrama mais simples, e no h necessidade de grandes detalhamentos.

A figura acima ilustra um caso de uso geral, mas recomendado que eles sejam desenvolvidos para cada cenrio. As setas de includes e extends, indicam, respectivamente, obrigatoriedade e opo de se realizar determinada ao.

Diagrama de Classes

Representa uma coleo de classes e seus inter-relacionamentos.

Diagrama de objetos

Representa um retrato, em tempo de execuo, dos objetos do software e seus inter-relacionamentos.

Diagrama de Colaborao

Representa uma coleo de objetos que trabalham em conjunto para atender algum comportamento do sistema.

Diagrama de Sequncia

Representa uma perspectiva, orientada por tempo, da colaborao entre os objetos.

Diagrama de Atividades

Representa o fluxo de tarefas que podem ser executadas pelo sistema ou por um ator.

Diagrama de Estados

Representa um conjunto de estados que um objeto pode estar e os gatilhos que estimulam a transio do objeto de um estado para outro.

Diagrama de Componentes

Representa uma coleo de componentes de software e seus inter-relacionamentos.

Diagrama de Depurao

Representa uma coleo de componentes e mostra como esses so distribudos em um ou vrios ns de hardware.

Diagrama de Pacotes

Representa uma coleo de outros elementos de modelagem e diagramas.

3. Descrevendo e exemplificando sobre MRN

Um modelo entidade relacionamento uma maneira sistemtica de descrever e definir um processo de negcio. O processo modelado como componentes (entidades) que so ligadas umas as outras por relacionamentos que expressam as dependncias e exigncias entre elas, como: um edifcio pode ser dividido em zero ou mais apartamentos, mas um apartamento pode estar localizado em apenas um edifcio. Entidades podem ter vrias propriedades (atributos) que os caracterizam. Diagramas criados para representar graficamente essas entidades, atributos e relacionamentos so chamados de diagramas entidade relacionamento.Um modelo ER normalmente implementado como um banco de dados. Nos casos de um banco de dados relacional, que armazena dados em tabelas, as prprias tabelas representam as entidades. Alguns campos de dados nestas tabelas apontam para ndices em outras tabelas. Tais ponteiros representam relacionamentos.A abordagem de trs esquemas para a engenharia de software utiliza trs nveis de modelos ER que podem ser desenvolvidos.

1 - Modelo conceitual - Representa as regras de negcio sem limitaes tecnolgicas ou de implementao por isto a etapa mais adequada para o envolvimento do usurio que no precisa ter conhecimentos tcnicos. Neste modelo temos:2 Viso Geral do negcio

3 Facilitao do entendimento entre usurios e desenvolvedores

4 Possui somente as entidades e atributos principais

5 Pode conter relacionamentos n para m. Modelo Lgico - Leva em conta limites impostos por algum tipo de tecnologia de banco de dados. (banco de dados hierrquico , banco de dados relacional ,etc.). Suas caractersticas so :

Deriva do modelo conceitual e via a representao do negcio

Possui entidades associativas em lugar de relacionamentos n:m

Define as chaves primrias das entidades

Normalizao at a 3a. forma normal

Adequao ao padro de nomenclatura

Entidades e atributos documentados

3- Modelo Fsico - Leva em considerao limites impostos pelo SGBD (Sistema Gerenciador de Banco de dados) e pelos requisitos no funcionais dos programas que acessam os dados. Caractersticas:

Elaborado a partir do modelo lgico

Pode variar segundo o SGBD

Pode ter tabelas fsicas (log , lider , etc.)

Pode ter colunas fsicas (replicao)

Precisamos definir agora entidade e atributo. O que so e o que representam ?

Uma Entidade pode ser definida como qualquer coisa do mundo real , abstrata ou concreta , na qual se deseja guardar informaes. (Tabela , File, etc..). Exemplos de entidades : Cliente , Produto , Contrato , Vendas , etc.Um atributo tudo o que se pode relacionar como propriedade da entidade. (coluna , campo , etc,..). Exemplos de atributos : Cdigo do Produto (Entidade Produto) , Nome do Cliente (Entidade Cliente).Nota : Chama-se Domnio o conjunto de valores possveis do atributo. Nenhum modelo suficientemente claro se no for acompanhado de uma definio formal dos elementos , fazemos isto atravs do Dicionrio de Dados . Lembre-se , conceitos que podem ser triviais a quem esta modelando podem no ser para pessoas leigas no assunto. Assim o dicionrio de dados tem o objetivo de deixar claro qualquer informao que seja de valia para o processo de compreenso e unificao de conceitos.Para que fique claro vamos fazer um exerccio simples: Definir uma entidade que represente as informaes de uma Pessoa e descrever seus atributos.Podemos definir a entidade Pessoa que ir representar as informaes de uma pessoa. Abaixo temos a representao da entidade e de alguns de seus atributos feitos no ERWin.4. Descrevendo e exemplificando Programao Orientada a Objetos.

A orientao a objetos um modelo de anlise, projeto e programao de sistemas de software baseado na composio e interao entre diversas unidades de software chamadas de objetos.

Em alguns contextos, prefere-se usar modelagem orientada ao objeto, em vez de programao. De fato, o paradigma "orientao a objeto", tem bases conceituais e origem no campo de estudo da cognio, que influenciou a rea de inteligncia artificial e da lingustica, no campo da abstrao de conceitos do mundo real. Na qualidade de mtodo de modelagem, tida como a melhor estratgia para se eliminar o "gap semntico", dificuldade recorrente no processo de modelar o mundo real do domnio do problema em um conjunto de componentes de software que seja o mais fiel na sua representao deste domnio. Facilitaria a comunicao do profissional modelador e do usurio da rea alvo, na medida em que a correlao da simbologia e conceitos abstratos do mundo real e da ferramenta de modelagem (conceitos, terminologia, smbolos, grafismo e estratgias) fosse a mais bvia, natural e exata possvel.

Na programao orientada a objetos, implementa-se um conjunto de classes que definem os objetos presentes no sistema de software. Cada classe determina o comportamento (definido nos mtodos) e estados possveis (atributos) de seus objetos, assim como o relacionamento com outros objetos. C++, C, VB.NET, Java, Object Pascal, Objective-C, Python, SuperCollider, Ruby e Smalltalk so exemplos de linguagens de programao orientadas a objetos. ActionScript, ColdFusion, Javascript, PHP (a partir da verso 4.0), Perl (a partir da verso 5) e Visual Basic (a partir da verso 4) so exemplos de linguagens de programao com suporte a orientao a objetos.

Vamos abordar neste artigo os dois tipos de programao bem conhecidos e que ainda geram algumas dvidas em suas utilizaes e definies, que a programao orientada a objetos e a programao estruturada.Existem dois tipos de programao bem usuais: Orientada a Objetos (OO) e Estruturada. Em cada uma delas iremos conhecer os seus principais conceitos e suas respectivas utilizaes e, por fim, mostraremos um breve comparativo entre esses dois tipos e qual o melhor a ser utilizado quando um projeto de desenvolvimento de software for iniciado. Utilizaremos como linguagem de programao base para os nossos exemplos as linguagens Java e C#.

A programao orientada a objetos um modelo de programao onde diversas classes possuem caractersticas que definem um objeto na vida real. Cada classe determina o comportamento do objeto definido por mtodos e seus estados possveis definidos por atributos. So exemplos de linguagens de programao orientadas a objetos: C++, Java, C#, Object Pascal, entre outras. Este modelo foi criado com o intuito de aproximar o mundo real do mundo virtual. Para dar suporte definio de Objeto, foi criada uma estrutura chamada Classe, que rene objetos com caractersticas em comum, descreve todos os servios disponveis por seus objetos e quais informaes podem ser armazenadas.

Vamos comear exemplificando uma classe carro utilizando a linguagem C#, como mostra a Listagem 1.

Listagem 1. Classe Carro

class Carro {

string marca; // Define a marca do carro

string modelo; // Define o modelo do carro

int ano; // Define o ano de fabricao do carro

string categoria; // Define a categoria, por exemplo carro de passeio, utilitrio...

double potencia; // Define a potncia do carro

double autonomia; // Define a autonomia em km

boolean ligado; // Define se o carro est ligado

public Carro() {

}

public Carro(string marca, string modelo, int ano, string categoria, double potencia, double autonomia, boolean ligado) {

this.marca = marca;

this.modelo = modelo;

this.ano = ano;

this.categoria = categoria;

this.potencia = potencia;

this.autonomia = autonomia;

this.ligado = ligado;

}

}

A classe Carro contm um conjunto de caractersticas em comum que definem um objeto do tipo carro: Marca, modelo, ano, categoria, potncia e autonomia so atributos que todos os carros precisam ter. Temos tambm dois construtores para a classe, ou seja, os responsveis por criar o objeto em memria, onde um inicializa o objeto carro e o outro, alm da inicializao do objeto, define que o preenchimento dos parmetros seja obrigatrio nos atributos da classe.

Agora vamos criar um objeto para que o mesmo possa ser utilizado, como mostra a Listagem 2.

Listagem 2. Invocando o construtor e criando um objeto

class Program {

public static void main(String[] args) {

// Instanciando a classe carro a partir do construtor sem a passagem de parmetros

Carro meuCarro = new Carro();

// Atribuindo valores aos atributos que compem a classe carro

meuCarro.marca = Fiat;

meuCarro.modelo = Palio;

meuCarro.ano = 2013;

meuCarro.categoria = Passeio;

meuCarro.potencia = 86.7;

meuCarro.autonomia = 320.6;

meuCarro.ligado = false;

}

}

Instanciamos nossa classe Carro e atribumos a uma varivel meuCarro todos os atributos da nossa classe. Poderamos tambm invocar o construtor que j recebe os parmetros com os respectivos atributos da classe, como mostra a Listagem 3.

Listagem 3. Invocando o construtor com parmetros e criando o objeto

class Program {

public static void main(String[] args) {

// Instanciando a classe carro a partir do construtor que contm os devidos parmetros

Carro meuCarro = new Carro("Fiat", "Palio", 2013, "Passeio", 86.7, 420.5, false);

}

}

Na Listagem 4 criaremos alguns mtodos, que so comportamentos que a classe Carro possui.

Listagem 4. Mtodos da classe Carro

void Ligar() {

// Atribui true a propriedade ligado

this.ligado = true;

System.out.println("Carro ligado!");

}

boolean Anda(double autonomia) {

// Condio que verifica se o carro est ligado e se autonomia maior que 0,

// retornando verdadeiro caso a condio seja satisfeita, ou falso caso contrrio

if (this.ligado && autonomia > 0) {

return true;

} else {

return false;

}

}

void Desligar() {

// Atribui false a propriedade ligado

this.ligado = false;

System.out.println("Carro desligado!");

}

No mtodo Liga atribumos ao atributo ligado o valor verdadeiro e escrevemos no console de sada uma informao que o carro foi ligado.

No mtodo Anda temos uma condio onde se o carro estiver ligado e a autonomia do carro for maior que zero, o carro ainda pode andar. Caso contrrio, se a autonomia for menor ou igual a zero ou ento o carro esteja desligado, o mesmo fica impossibilitado de andar.

E por ltimo temos o mtodo Desliga, que atribui o valor falso ao atributo ligado e escrevemos no console de sada a mensagem que o carro foi desligado.

Veja que para utilizar esses mtodos presentes na classe Carro precisamos utilizar dois conceitos cruciais: Construtores e Destrutores. Construtores so mtodos invocados no momento em que o objeto criado: por conveno utilizado o mesmo nome da classe como, por exemplo, para a classe Carro temos o construtor Carro(). J os Destrutores realizam a funo inversa aos Construtores, onde so liberados da memria todos os objetos que foram criados no momento da execuo do programa, na maioria das linguagens de programao esse mtodo executado automaticamente quando o objeto eliminado e, por conveno, utilizado tambm o mesmo nome da classe, porm com um ~ antecedendo o nome como, por exemplo, para a classe Carro temos o destrutor ~Carro().

Agora que j conhecemos um pouco sobre orientao a objetos, vamos conhecer seus princpios bsicos.

5. Tecnologias para desenvolvimento Web1.1 rincipais tecnologias para o Desenvolvimento de Sites.

Utilizamos tecnologias 100% compatveis com os mais variados navegadores Web (browsers), para que nossas solues tenham a maior abrangncia possvel, a determinao das tecnologias aplicadas em cada projeto dependeram de suas caractersticas tcnicas e especificaes.

Salientamos que de acordo com as caractersticas de cada projeto, utilizaremos outras tecnologias no relacionadas aqui, para maior compatibilidade e abrangncia dos resultados.

HTML

Do ingls Hyper Text Markup Language, significa Linguagem de Marcao de Hipertexto, ou seja, HTML uma coleo de estilos que define os vrios componentes de um documento Internet. Utilizado em: formatao, documentos multimdia, formulrios, hiperlinks clicveis, imagens grficas, etc.

PHP

Linguagem para programar scripts que so processados no servidor, que se incrustam dentro do cdigo HTML. Esta linguagem gratuita e de multiplataforma, ou seja, roda em servidores de hospedagem com Linux ou Windows.

CSS

A utilizao de CSS (Cascading Style Sheets) recomendada, pois permite separar estilo visual de contedo. Tal fator fundamental quando se faz o design e estruturao de um website. Quando CSS utilizado de maneira correta, a manuteno do website torna-se mais simples. Alm disso, existem outras vantagens como facilidade de criar estilos visuais mltiplos por exemplo podendo-se oferecer o estilo otimizado para impresso.

Adobe Flash

Formato de arquivo multimdia de grande apelo visual, muito difundido atualmente na Internet. Animaes com efeitos sonoros e interatividade podem ser criadas com esse recurso, tornando as pginas muito mais atraentes e agradveis.

JavaScript

Atravs do JavaScript voc tem muitas possibilidades de melhorar pginas HTML com elementos interessantes. Sendo capaz, por exemplo, de responder muito facilmente a eventos iniciados pelo usurio. Alguns dos efeitos que agora podemos fazer com JavaScript, h algum tempo atrs s eram possveis com CGI. Deste modo, podemos desenvolver pginas muito sofisticadas com a ajuda do JavaScript.

AJAX

Tambm conhecido como Assncrono de JavaScript e XML(Asynchronous Javascript and XML), usado para tornar as pginas Web mais dinmicas e interativas.

6. CONCLUSO

O trabalho nos permitiu decifra os contedos desse semestre e atravs dele descobrir as necessidades do conhecimento das disciplinas aferidas neste trabalho e foi desenvolvida uma resenha sobre UML sobre banco de dados, falando de seus conceitos e aplicaes, falando sobre a classe, pacotes, ator. E suas necessidades em um projeto.Nesse portflio empregamos a necessidade de se conhecer mais sobre as linguagens de programao, apostando sobre cada um delas. REFERNCIAS

Christian Reis . ,Caracterizao De Um Modelo De Processo Para Projetos De Software Livre.Teste De Mestrado.Instituto De Cincias Matemtica E Computao.So Carlos, So Paulo Abril De 2001Deeper Questions In Software Engineering Research, SIGSOFT

Falbo, Ricardo A.,Integrao De Conhecimento Em Um Ambiente De Desenvolvimento De Software. Tese De Doutorado, Coppe/Ufrj, Rio De Janeiro, Brasil, 1998.

Humphrey, Watts S.,Managing The Software Process. Addison-Wesley Publishing,Company, Massachussets, 1990.

Schwartz, J. I.,Construction Of Software. In:Practical Strategies For Developing Large Systems. Menlo Park:Addison-Wesley, 1st. Ed., 1975.SIGSOFT Softw. Eng. Notes, V. 35, N. 3, May 2010, P. 8 13.

Softw. Eng. Notes, V. 28, N. 5, September 2003, P. 6 14.

Sommerville, I.Software Engineering. 5th. Ed. Addison-Wesley, 1995. - Osterweil, L. J., Understanding Process And The Quest For - Ruparelia, N. B., Software Development Lifecycle Models, - Sommerville, I., Software Process Models, ACM Comput. Surv.,

V. 28, N. 1, March 1996, P. 269 271.

R. Greenwald, R. Stackowiak, and J. Stern. "Oracle essentials: Oracle9i, Oracle8i & Oracle8 (2nd ed.)". OReilly & Associates, Inc., 2001.

M. Cyran, R. Baylis, P. Lane, and M. Niebur. "Getting to Know Oracle8i, Release 2 (8.1.6)". Oracle Corporation (December, 1999), 1999.Bootstrap Tutorial http://wiki.lib.sun.ac.za/images/0/07/Bootstrap-tutorial.pdf

Desenvolvimento Web usando Padres e Tecnologias Web http://bdigital.cv.unipiaget.org:8080/jspui/bitstream/10964/134/1/Rito%20Gon%C3%A7alves.pdf

Tecnologias Livres de Desenvolvimento Web http://bdigital.unipiaget.cv:8080/jspui/bitstream/10964/84/1/Anilton%20Fernandes.pdf

JQuery A Biblioteca do Programador JavaScript http://novatec.com.br/livros/jquery/capitulo9788575221785.pdfhttp://diatinf.ifrn.edu.br/lib/exe/fetch.php?media=corpodocente:papaiz:poo_csharp-e-orientacao-a-objetos.pdf

C# e Orientao a Objetos http://www.caelum.com.br/apostila-csharp-orientacao-objetos/

POO com C# http://www.devmedia.com.br/curso/poo-com-c/158

C# e Orientao a Objetos http://diatinf.ifrn.edu.br/lib/

Sistema de Ensino Presencial Conectado

Suprerior de tecnologia em ANlise e Desenvolvimento de sistema

TIAGO ALVES SENA

ttulo do trabalho:

Irec

2015

TIAGO ALVES SENA

ttulo do trabalho:

Trabalho de apresentado Universidade Norte do Paran - UNOPAR, como requisito parcial para a obteno de mdia semestral nas disciplinas Projetos Orientados a Objetos , Programao para Web I, Anlises Orientado a Objetos II

Orientadores: Luis Claudio Perini, Roberto Y. Nishmura, Mrcio Roberto Chiaveli, Veronice de Freitas e Adriane Ap. Loper

Irec

2015