Sie sind auf Seite 1von 22

ALVES SENA

SUMRIO
1 INTRODUO.............................................................................................................3
2. Principais diagramas UML............................................................................................4
3. Descrevendo e exemplificando sobre MRN.................................................................8
4. Descrevendo e exemplificando Programao Orientada a Objetos...........................11
5. Tecnologias para desenvolvimento Web....................................................................16
6. CONCLUSO.............................................................................................................18
REFRENCIAS..............................................................................................................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 UML


Um 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 interrelacionamentos.

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.

- 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:

Viso Geral do negcio

Facilitao do entendimento entre usurios e desenvolvedores

Possui somente as entidades e atributos principais

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.)

10

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.

11

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

12

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

13

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;

14

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

15

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().

16

Agora que j conhecemos um pouco sobre orientao a objetos, vamos conhecer


seus princpios bsicos.

5. Tecnologias para desenvolvimento Web


1.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

17

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.

18

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.

19

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 2001
Deeper 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

20

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.pdf
http://diatinf.ifrn.edu.br/lib/exe/fetch.php?media=corpodocente:papaiz:poo_csharpe-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/

Das könnte Ihnen auch gefallen