250 likes | 417 Views
Composition Application of Notes 8. 2007.10.4( 목 ) 정유신 과장. No part of it may be circulated, quoted, or reproduced for distribution outside without prior written approval from IBM. Agenda. 1. 소개 Composite Applications 란 무엇인가 ? Composite Applications 장점 Composite Application 모델
E N D
Composition Application of Notes 8 2007.10.4(목) 정유신 과장 No part of it may be circulated, quoted, or reproduced for distribution outside without prior written approval from IBM
Agenda • 1. 소개 • Composite Applications 란 무엇인가 ? • Composite Applications 장점 • Composite Application 모델 • System Diagram – Notes/Domino 8 • 2. Programming Model • High Level Programming Model for Composite Applications • Notes 8.0 high Level Client Programming Models • Extensions to Notes Programming Model • 특별한 Notes Components • Extensions to Eclipse Programming Model • 3. Component 개발 • Notes Composite Application Editor • Property Broker Programming Model • NSF based Composite Application 정의 • Notes 8.0 high Level Client Programming Models • Component만들기 위한 Tool • 4. Summary • 5. Demo • 6. References • 7. Q & A Agenda slide
1. 소개 • Composite Applications 란 무엇인가 ? • Composite Applications 장점 • Composite Application 모델 • System Diagram – Notes/Domino 8
Composite Applications 이란 무엇인가? • component 를 합쳐 놓은 components 의 모음이다. • Composite application은 component 상호간의 communication 을 가능하게 한다. • 프로그래밍 모델은 Portal and Notes 를 지원한다. • 비즈니스 유연성을 지원한다. • loose coupling
Composite Applications 장점 • 협업이 필요한 application 은 CA 을 통해서 업무 효율성을 증대시킨다. • 매일 사용하는 어플리케이션들의 협업과 통합을 위한 도구 • 따로따로 존재하던 어플리케이션이 CA 를 통해서 새로운 가치를 발견할 수 있다. • 이질적인 기술간 개발 및 IT 투자를 할 수 있다 • Notes applications/databases • Lotus Component Designer components • portlets and WSRP • Eclipse components (e.g. embedded browser) • other component types , including desktop applications • On demand business applications via Service Oriented Architecture • CA는 loose couple 되어 있기 때문에 기업의 비즈니스 요구를 빠르게 반영할 수 있다. • Component 가 어떤 시스템 위에 개발되어 있어도 상관없이 CA 를 구성할 수 있다.
Composite Application 모델 • Composite (application) • component 모임 • Component • UI, business logic and storage 을 포함하고 있는 것(e.g. NSF) • Component view • component 내의 service/view 를 presentation (e.g. Notes view) Component Component Component Composite (application) Component Component
System Diagram – Notes/Domino 8 Web client Rich client Lotus Notes 8.0 Client Web browser Lotus Expeditor Platform Lotus Notes Components Composite Application Editor Client Server Lotus Domino
2. Programming Model • High Level Programming Model for Composite Applications • Notes 8.0 high Level Client Programming Models • Extensions to Notes Programming Model • 특별한 Notes Components • Extensions to Eclipse Programming Model
High Level Programming Model for Composite Applications Assemble Application Application Clients Build/Deploy Components No programming Portlets, Builders, Lists Assembly Composite Application Editor Portal Application Template Editor Rich Client Script-style development Domino Designer Component Designer Browser Comprehensive Java IDEs Expeditor toolkit Rational tools Portlet Factory Mobile (future)
Notes 8.0 high Level Client Programming Models NSF Component Web or Portlet Component Remote Portlet Component LCD Component Component Designer Container Notes Container Web/JSR 168 Container Your Container or Component WSRP Container • Notes plugin • Actions/db design • xFaces • JavaScript • Java APIs • Extensions • HTML/JS • JSP/JSR 168 • HTML/JS Expeditor Platform • Composite Application Infrastructure • Property Broker • More Toolkit Functionality Eclipse • SWT/Jface/Workbench • Plugins/Features • Preferences
Extensions to Notes Programming Model • Properties and actions 은 WSDL 안에 정의된다. • 새 디자인 요소가 WSDL안에 저장된다. • WSDL 을 만들고 제공된 기능을 수정한다. • 다양한 방법으로 property 를 publish 한다. • publish 하고자 하는 property 을 보기 열의 속성에서 셋팅한다. • 다른 디자인 요소로부터 property 를 publish 하기 위해서 LotusScript API 를 사용한다. • Actions 수행 • input property 를 노츠 action 에 사용하기 위해서 LotusScript API 를 이용한다.
특별한 Notes Components • PIM (Personal Information Management) databases 는 NSF 기반의 composite applications • Notes Mail • Notes Calendar • Notes Contacts • Component 상호작용과 property broker 지원 • PIM 의 properties and actions 는 템플릿에 정의되어 있다. • PIM 의 properties and actions 은 도미노 디자이너를 통해서 추가 변경이 가능하다. • composite applications 를 구성할 때 PIM 을 사용할 수 있다.
Extensions to Eclipse Programming Model • Properties and actions 은 WSDL안에 정의된다. • 플러그인 안에 저장되고 확장점을 통해서 등록된다. • WSDL 을 만들고 제공된 기능을 수정한다. • Publish properties • Property 를 publish 하기 위해서 Java API 를 사용한다. • Actions 수행 • input properties수행하기 위해서 Java API 를 사용한다. • Action은 3가지 타입이 있다 • core Action - org.eclipse.core.commands.AbstractHandler • SWT Action - org.eclipse.jface.action.Action • AWT Action - java.awt.Component
3. Component 개발 • Notes Composite Application Editor • Property Broker Programming Model • NSF based Composite Application 정의 • Notes 8.0 high Level Client Programming Models • Component만들기 위한 Tool
Notes Composite Application Editor (CAE) • 노츠8 설치시 CAE 를 선택할 수 있는 옵션이 있습니다. • composite application 정의를 편집할 수 있습니다. • composite applications 를 추가하거나 편집할 수 있습니다. • pages • component runtime properties • wiring
Property Broker Programming Model • component 상호작용 • properties and actions 을 통해서 loose coupling 된다. • across database boundaries • 이질적인 component 기술을 통합시키는 핵심 component • Property 는 component 간 상호 교환할 데이터 속성값 이다. • Action 은 property 을 실행하는 요소이다. • Component 는 properties and actions 들로 정의된다. • Wire 는 component 간의 상호 작용(input & output) 을 가능하게 해준다. • unique wiring defined in specific composite application • causal relationship (loose coupled) • 1-to-1 or 1-to-many wiring options
NSF based Composite Application 정의 • Composite application definitions stored in NSFs • Lotus Notes rich client 만 지원한다. 웹은 WebSphere Portal 에서 지원된다. • composite applications 은 CAE 를 통해서 modify • Pages and property broker wires • 페이지는 하나이상의 component view 로 구성할 수 있다. • properties and actions 은 component 마다 정의된다. • Wires 는 CA 레벨에 따라서 정의된다.(Multi Wiring 가능) • 지원되는 component types • Lotus Notes components • Eclipse components (including embedded web browser)
Component만들기 위한 Tool • Domino Designer • script oriented development • standard Notes database design plus inter component communication • Lotus Component Designer • script oriented development • creates native components for rich client and portal • Eclipse / Rational tools • comprehensive Java, Eclipse and SWT capabilities
4. Summary • 혁명이 아니라 진화다. • 기존에 있거나 새로운 노츠 어플리케이션은 component 로 재사용 가능하다. • 노츠 클라이언트의 장점은 포털에서 사용된다. • 비즈니스 유연성과 전략을 지원하다. • 서로 다른 어플리케이션을 짜맞춘다 • portal 혹은 NSF 를 지원한다. • component 들은 loose coupling 을 통해서 상호 커뮤니케이션을 한다. • User 업무 효율성이 증대된다. • User 가 보는 화면은 각양각색의 시스템에서 컨텐츠를 가져와서 보여준다. • User 의 화면에 업무의 흐름상 연관이 있는 어플리케이션들을 구성을 할 수 있다. 연관성를 가지는 어플리케이션들 간의 협업과 통합
6. References • Blog • http://www.ibm.com/developerworks/blogs/page/CompApps • Expeditor toolkit • http://publib.boulder.ibm.com/infocenter/ledoc/v6r1/index.jsp • Developerworks article • http://www-128.ibm.com/developerworks/websphere/library/techarticles/0608_stober/0608_stober.html • Redbook/redpiece on Expeditor Composite Applications • coming out in early 2007, keep checking the web
7. Q & A 감사합니다