21
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/2002 Outubro/2002 Arquitetura de Arquitetura de Desenvolviment Desenvolviment o OO e Java o OO e Java DSB – Diretoria de Soluções em Billing Dr. Spock ([email protected]) Alberto J Lemos Senior 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 Outubro/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

Embed Size (px)

Citation preview

Page 1: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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

Page 2: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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.

Page 3: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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

Page 4: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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

Page 5: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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.

Page 6: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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.

Page 7: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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.

Page 8: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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

Page 9: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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

Page 10: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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.

Page 11: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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

Page 12: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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

Page 13: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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!

Page 14: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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

Page 15: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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

Page 16: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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/

Page 17: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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/

Page 18: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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/

Page 19: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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

Page 20: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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

Page 21: 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/2002 Arquitetura de Desenvolvimento OO e Java DSB – Diretoria de Soluções em Billing

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