Upload
internet
View
108
Download
3
Embed Size (px)
Citation preview
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Outubro/2002Outubro/2002
Arquitetura de Arquitetura de Desenvolvimento Desenvolvimento
OO e JavaOO e JavaDSB – Diretoria de Soluções em Billing
Dr. Spock ([email protected])Alberto J LemosSenior Software Architect
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Agenda da ApresentaçãoAgenda da Apresentação
• Objetivos e motivações com a arquitetura.
• Uma visão geral da arquitetura.
• A base da nova arquitetura: Orientação a Objetos (OO) e Patterns.
• Método de desenvolvimento OO, iterativo e incremental.
• Linguagem padrão de modelagem e de programação.
• Arquitetura JavaTM de desenvolvimento: J2EETM.
• Padrões e API’s Java para Telecom.
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Objetivos e MotivaçõesObjetivos e Motivações
• Incrementar a produtividade de desenvolvimento.
• Flexibilizar as customizações e manutenções dos produtos.
• Promover a redução de custos de desenvolvimento, suporte e manutenção.
• Obter independência de plataforma e fornecedores.
• Promover o uso de uma arquitetura padrão e aberta.
• Promover o uso de padrões de mercado Telecom.
• Promover a interoperabilidade entre sistemas e acesso via Web.
• Promover o paradigma de orientação a objetos (OO).
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Orientação a Objetos (OO)
Visão Geral da ArquiteturaVisão Geral da Arquitetura
Processo
RUP
Linguagemde
Modelagem
UML
Ferramentas
ROSE
Linguagemde
Programação
JAVA
OutrasTecnologias
OO
XMLArquitetura J2EETM
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Orientação a Objetos (OO)Orientação a Objetos (OO)
• Novo paradigma de desenvolvimento.
• Promove a reutilização de código.
• Promove o encapsulamento de estruturas (componentes).
• Promove a otimização de recursos.
• Permite o uso de padrões de projeto (Design Patterns) consolidados.
• A base de toda a arquitetura e processo de desenvolvimento.
Object is a software construct that bundles together data (state) and functions (behavior), which, taken together, represent an abstraction of a ‘real-world’ (physical or conceptual) object.
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Método de DesenvolvimentoMétodo de Desenvolvimento
• Processo: Rational Unified Process (RUP)
• Processo que estabelece quem, quando, como, onde e o que (artefato) gerar durante o desenvolvimento de um sistema.
• Notação: Unified Modeling Language (UML)
• Estabelece a notação para visualizar, construir, especificar e documentar os artefatos de um sistema complexo de software.
• Ferramentas: Rational Suite e IDEs
• Facilitam o desenvolvimento e incrementam a produtividade.
• Automatizam parte do desenvolvimento.
Model is an abstraction of the underlying problem.
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Linguagem de ProgramaçãoLinguagem de Programação
• Linguagem JavaTM (Sun Microsystems).
• Orientada a objetos (OO).
• Independente da plataforma (Ex.: Windows, Solaris e Linux).
• Fornece vários recursos já implementados (API’s).
• Recursos de segurança e conectividade com Internet.
• Linguagem padrão para toda a arquitetura.
Process is the ‘how to’ steps for gathering the requirements and determining the abstraction to be modeled.
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Linguagem Java (J2SELinguagem Java (J2SETMTM))
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Outras Tecnologias OOOutras Tecnologias OO
• Web Services
• Extensible Markup Language (XML)
• Common Object Request Broker Architecture (CORBA)
• Simple Object Access Protocol (SOAP)
• C++
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Arquitetura J2EEArquitetura J2EETMTM
• J2EE – Java 2, Enterprise Edition.
• Ambiente padrão para o desenvolvimento de Componentes de Negócio.
• Independente da plataforma e do fornecedor.
• Baseado na linguagem JavaTM.
• Oferece padronização para os recursos de segurança, distribuição, transação, escalabilidade, multi-usuário, sessão, persistência, serviços e outros recursos.
• Padrão de mercado amplamente utilizado e disponível.
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
J2EEJ2EETMTM Application Model Application Model
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Arquitetura de ComponentesArquitetura de Componentes
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Padrões OO para TelecomPadrões OO para Telecom
• OSS IP Billing API (JSR 130)• Objetivo: Padronização de API´s Java para OSS e BSS.• Baseado na arquitetura J2EETM.• Participantes: NEC, Motorola, Nortel, Ericsson, Sun, Cisco, BEA
Systems, ADC, InfoVista, Objective Systems Integrators, Remedy, Cygent, Agilent, Digital Fairway, Orchestream e Telcordia.
• Padronização através do Java Community ProcessTM (JCP).• Definição através do Java Specification Request (JSR) 130.
• IPDR.org• Objetivo: Padronização de serviços IP.• Uso de várias arquiteturas, inclusive Java.• Padrão de transferência e documentos baseado em XML.• Participantes: HP, Nortel, Intel, Lucent, Accenture, Amdocs, Apogree
Networks, ECtel e outros. O CPqD é um associado!
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
API’s Java para TelecomAPI’s Java para Telecom
• OSS Service Activation API (http://www.jcp.org/jsr/detail/89.jsp).
• OSS Quality of Service API (http://www.jcp.org/jsr/detail/90.jsp).
• OSS Trouble Ticket API (http://www.jcp.org/jsr/detail/91.jsp).
• OSS Inventory API (http://www.jcp.org/jsr/detail/142.jsp).
• OSS Common API (http://www.jcp.org/jsr/detail/144.jsp).
• JPay - Payment API for the JavaTM Platform (http://www.jcp.org/jsr/detail/182.jsp).
• JavaTM Technology for the Wireless Industry (http://www.jcp.org/jsr/detail/185.jsp).
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Considerações FinaisConsiderações Finais
• Independência de plataforma.
• Independência de fornecedor.
• Promove o aumento de produtividade.
• Promove a redução do tempo de implementação e customização.
• Arquitetura implementada por vários fornecedores.
• Arquitetura J2EETM madura e estável.
• Especificação padronizada sob o auspício do JCPTM.
• Existem vários padrões Telecom em desenvolvimento.
• Maior facilidade de integração com outros sistemas.
• Suportado por um processo de desenvolvimento como o RUP.
• Suportado pela linguagem de modelagem UML.
• Suportado por várias ferramentas de modelagem e codificação.
• Suportado por vários padrões de projeto (Design Patterns).
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Referências na InternetReferências na Internet
• J2EETM - Java 2 Platform, Enterprise Edition
http://java.sun.com/j2ee/
• J2SETM - Java 2 Platform, Standard Edition
http://java.sun.com/j2se/
• EJB – Enterprise JavaBeansTM Technology
http://java.sun.com/products/ejb/
• J2EETM Blueprints
http://java.sun.com/j2ee/blueprints/
• Design Patterns
http://java.sun.com/j2ee/blueprints/design_patterns/
• JCP - Java Community Process
http://www.jcp.org/
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Referências na Internet IIReferências na Internet II
• What is JavaTM Technology?
http://java.sun.com/java2/whatis/
• Rational Unified Process (RUP)
http://www.rational.com/rup/
• UML Resource Center
http://www.rational.com/uml/
• Extensible Markup Language (XML)
http://www.w3.org/XML/
• JSP – JavaServerTM Pages
http://java.sun.com/products/jsp/
• JavaTM Servlet Technology
http://java.sun.com/products/servlet/
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Referências na Internet IIIReferências na Internet III
• Simple Object Access Protocol (SOAP)
http://www.w3.org/2000/xp/
• OSS IP Billing Java Specification Request (JSR 130)
http://jcp.org/jsr/detail/130.jsp
• IPDR.org
http://www.ipdr.org/
• TeleManagement Forum (TMF)
http://www.tmforum.org/
• Parlay Group
http://www.parlay.org/
• Third Generation Partnership Project (3GPP)
http://www.3gpp.org/
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Referências BibliográficasReferências Bibliográficas
• UML Distilled.Martin Fowler, Kendal Scott.Addison-Wesley, ISBN 020165783X.
• The Unified Modeling Language User Guide.Grady Booch, James Rumbaugh, Ivar Jacobson.Addison-Wesley, ISBN 0201571684.
• The Unified Modeling Language Reference Manual.James Rumbaugh, Ivar Jacobson, Grady Booch.Addison-Wesley, ISBN 020130998X.
• Core Servlets and JavaServer PagesMarty Hall. Prentice Hall. ISBN 0130893404
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
Referências Bibliográficas IIReferências Bibliográficas II
• The Unified Software Development Process
ISBN: 0201571692
• The Rational Unified Process an Introduction
ISBN: 0201707101
• Beginning Java Objects, from concepts to code
ISBN: 1861004176
• The Object Primer: The Application Developer's Guide to Object-Orientation
ISBN 0521785197
D i r
e i t
o s
R
e s
e r
v a
d o
s a
o C
P q
D -
2 0
0 1
[email protected]@cpqd.com.brhttp://www.cpqd.com.brhttp://www.cpqd.com.br