참고 : Pluglet은 IBM RSA에서 plugin을 좀 더 쉽게 구현할 수 있도록 지원해주는 별도의 플로그인프로젝트 임.
아래의 내용에 이어, Pluglet에서 실제 동작하는 것을 간단하게 살펴보고자 한다.

1. Pluglet 프로젝트 생성 (Pluglets Project를 선택한다.)
사용자 삽입 이미지

2. Project name을 적고 (임의로 작성), Finish를 누른다.
사용자 삽입 이미지

3. 생성된 프로젝트에 간단한 자바 샘플 코드를 생성한다.

package sample;

import java.sql.DriverManager;
import com.ibm.xtools.pluglets.Pluglet;

public class Hello extends Pluglet {

 public void plugletmain(String[] args) {
//  inform("Hello, world!"); //$NON-NLS-1$
  run();
 }
 
 public void run(){

  try {
   Class.forName("oracle.jdbc.driver.OracleDriver");
   DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE", "system", "password");
   out.println("Connection Success!!!");
  } catch (Exception e) {
   out.println(e.toString());
  }
 }
}

4. 해당 클래스를 실행한다.
사용자 삽입 이미지

5. 이와 같은 상태에서는 아래와 같은 에러가 발생한다..
java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver

6. 이는 pluglets.xml에 앞서 설치한 플러그인을 import 해주지 않아서 발생한다.


7. Pluglet 프로젝트 내의 pluglets.xml 파일에 아래와 같이 추가해준다.
    pluglin 의 값은 앞서 생성한 plugin의 ID 값이다.
<?xml version="1.0" encoding="UTF-8"?>
<pluglets>
   <require>
      <import plugin="com.ibm.xtools.pluglets"/>
      <import plugin="oracle.jdbc"/>
   </require>
</pluglets>

8. 다시 실행해보면 성공적으로 동작하는 것을 볼 수 있다.
사용자 삽입 이미지

9. 결과 : Connection Success!!!
Posted by 아름프로
plug-in 프로젝트에서 외부의 jar 파일을 등록하여 사용하는 방법이 몇가지 있지만,
일반적으로 가장 많이 사용되는 '별도의 plug-in 프로젝트 생성'하여 배포하는 방식에 대해서
RSA의 환경에서 화면 capture 위주로 간략히 설명해 보고자 한다.

예로 plug-in 프로젝트에서 오라클의 jdbc 드라이버를 사용할 수 있어야 하는데, 흔히 아는
'Java Build Path'에 해당 jar 파일을 등록한다고 해서 인식되지 않는다.

해서 이와 같은 작업을 통해 오라클의 jdbc 드라이버를 plug-in에서 호출가능토록 해보고 한다.

@ 사용하려는 Jar파일을 Plug-in 프로젝트화(!) 시킨다.

1.  Plug-in from existing JAR archives를 이용한 'Plug-in 프로젝트 생성'

사용자 삽입 이미지


2.  jar 파일을 등록한다. (그림의 순서 참고)
사용자 삽입 이미지

3. Project name 을 적는다. (임의로 작성)
사용자 삽입 이미지

@ 생성한 프로젝트를 배포하기 위한 Feature 프로젝트를 생성한다.

1. Feature Project 를 이용하여 Feature 프로젝트 생성 시작.
사용자 삽입 이미지

2. Project name에 임의의 이름을 적는다.(내용은 알아서 채우세요.)
사용자 삽입 이미지

3. 위에서 생성한 Plug-in 프로젝트를 선택한다.
사용자 삽입 이미지

4. 생성한 feature 프로젝트를 export 한다.
사용자 삽입 이미지

5. export는 하는 과정으로 Deployable features를 선택한다.
사용자 삽입 이미지

6. 이미 선택되어진 feature 프로젝트가 보이며, Directory를 지정한다.
    해당디렉토리 아래에 features와 plugins 디렉토리가 자동으로 생선된다.
사용자 삽입 이미지

7. Finish를 하면 자동으로 생성되며, 아래의 폴더 그림과 같이 생성된다.
사용자 삽입 이미지

사용자 삽입 이미지

8. export한 플러그인을 RSA에 설치한다.
사용자 삽입 이미지

9. 설치과정으로 'Search for new features to install' 디렉토리르 선택한다.
사용자 삽입 이미지

10. 플러그인 설치과정으로 'New Local Site'를 클릭하여, 플러그인 디렉토리를 지정한다.
사용자 삽입 이미지

사용자 삽입 이미지

11. 확인을 누르면 플러그인 이름을 생성하라는 창이나온다. (임의값 입력)
사용자 삽입 이미지

12. 아래와 같이 등록된 것을 확인하고, Finish를 누른다.
사용자 삽입 이미지

13. 아래 화면과 같은 설치과정을 거쳐 설치 완료한다.
사용자 삽입 이미지

사용자 삽입 이미지

사용자 삽입 이미지

14. 설치가 완료되면 재시작을 요청한다.
사용자 삽입 이미지
Posted by 아름프로

2007년 17th Jolt 'Books technical' 에서 'Productivity Winners'를 차지한 독특한 책 한권이 눈에 띄었었다. 책 이름은 'Refactoring Databases' by Scott W. Ambler and P. J. Sadalage (Addison-Wesley Professional)

데이터베이스를 Refactoring 한다??? 는 것에 궁금증을 자아내며, 보고 싶은 충동을 일으켰지만 ... 시간이란 제약조건에 의해 그냥 기억의 저편에 묻혀 있었다.

최근 나의 관심사 중에 하나인, RSA를 활용한 MDD/MDA 를 Agile나 XP, open framework 들과의 연계할 수 없을까하는 고민과 자료수집중에 낮익은 사람과 책들이 눈에 띄었으니, 위에서 언급한 'Scott W. Ambler' 가 바로 그다.

내가 놀랬던 사실은 그가 IBM Rational 소속이란 것과 그의 역할이 Agile Development 의 리더라는 점이다. (세계적으로는 너무 많은 IBMer가 있기에 알 길이 있나 .. ㅡㅡ;; )
더욱이 Agile 쪽을 전문으로 하는 사람과 조직이 Rational 내부에서도 오래전부터 있었다는 사실이  흥미롭다.

자세한 것은 Ambler의 사이트와 관련 책들에서 힌트를 좀 더 얻어봐야겠지만,
최소한 고민하던 부분의 일부분은 찾을 수 있을 것 같다. ^^

특히, Agile Modeling, Agile Data, Agile Unified Process, Enterprise Unified Process 쪽은 시간을 할애해서 보고 고민을 해봐야할 듯 싶다.

내부적으로도 Agile 관련한 독립 사이트(IBM Rational Agile development)가 정리되어 가고 있는 시점이기에 잘 연계해서 보면 좋은 자료가 될 것 같다.

그리고, Ambler 홈페이지에 있는 타이틀 문구가 유독 눈에 띈다.

"A good developer knows that there is more to development than programming.
A great developer knows that there is more to development than development. "


Posted by 아름프로
Together  Architect  에서  UML2 Project로 생성한 프로젝트는 
프로젝트 export 기능의 XMI File 로 저장하여 RSA로 쉽게 변환이 가능하나
"Java Modeling Project"로 생성한 프로젝트는 다소 복잡한 과정을 거쳐서
변환 작업을 해야 한다.

요약하면 다음과 같다.

Together
  • Java Modeling Project -> export -> XMI (UML 1.4 (OMG))
  • UML 1.4 Project 생성
  • 생성한 UML 1.4 프로젝트에서 import -> XMI File
  • UML 2.0 from 1.4 Project 기능을 통한 1.4에서 2.0으로 변경하여 프로젝트 생성
  • UML2.0 기반 생성된 프로젝트에서 다시 export -> XMI (UML 2.0)
RSA
  • Together에서 export한 UML2.0 기반의 XMI 파일 import
이후의 유즈케이스모델 / 분석 모델 / 디자인 모델 로의 구성은 템플릿을 통해 생성해서
약간의 수작업을 해주는 것이 좋다. (이에 대한 자세한 내용은 주제와 멀어져서 일단 생략)

============================================================
위의 절차를 화면 캡쳐한 내용을 올린다. (RSA는 6.0을 기반으로 하였지만 7.0에도 가능)


사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지

Posted by 아름프로

PiggyBank는 RSA에 있는 예제로 요구사항분석에서부터 모델링 ..
이후의 EJB 생성 여기에서 다시 웹서비스 추출까지를 다루는 중급수준의 예제다.
기특하게도 import 한방에 설치는 되어주지만,
몇가지 설정이나 고쳐 주어야 하는 것이 있어서 정리를 본다.

궁금하신 분은 RSA(IBM Rational Software Architecture)를 설치해보시라.. ^^@
---------------------------------------------------------

@PiggyBank 실행을 위한 설정@

Derby 설정
  1. embedded Derby 사용
   - ItsoAdEAR 이동
   - 배치 설정자 : ItsoAdEAR 클릭
   - 응용프로그램 배치 설명자 화면 > 배치
  
   JDBC 프로바이더 목록
     이름 : Derby JDBC Provider (XA) (임의로 작성)
     구현 클래스 이름 : org.apache.derby.jdbc.EmbeddedXADataSource
     클래스 경로 : ${DERBY_JDBC_DRIVER_PATH}/derby.jar
  
   JDBC 프로바이더에 정의된 데이터 소스 :
     이름 : PiggyBank (임의로 작성)
     JNDI 이름 : jdbc/PiggyBank      <-- 대소문자 주의
     데이터 소스 헬퍼 클래스 이름 : com.ibm.websphere.rsadapter.DerbyDataStoreHelper
     컴포넌트 관리인증 별명 : 인증에서 등록한 Alias 명으로 선택
     컨테이너 관리인증 별명 : 인증에서 등록한 Alias 명으로 선택
  
   위에서 선택한 데이터 소스에 정의된 자원 특성 :
     databaseName : D:\Database\Derby\PiggyBank1  <-- derby생성 디렉토리
     나머지는 기본 값
 
  2. Network Server Using Derby Client 사용
  
   JDBC 프로바이더 목록
     이름 : Derby Network Server Using Derby Client (임의로 작성)
     구현 클래스 이름 : org.apache.derby.jdbc.ClientConnectionPoolDataSource
     클래스 경로 : ${DERBY_JDBC_DRIVER_PATH}/derby.jar
  
   JDBC 프로바이더에 정의된 데이터 소스 :
     이름 : PiggyBank (임의로 작성)
     JNDI 이름 : jdbc/PiggyBank      <-- 대소문자 주의
     데이터 소스 헬퍼 클래스 이름 : com.ibm.websphere.rsadapter.DerbyNetworkServerDataStoreHelper
     컴포넌트 관리인증 별명 : 인증에서 등록한 Alias 명으로 선택
     컨테이너 관리인증 별명 : 인증에서 등록한 Alias 명으로 선택
    
   위에서 선택한 데이터 소스에 정의된 자원 특성 :
     databaseName : PiggyBank  <-- derby생성 디렉토리명
     나머지는 기본 값
 
   @ 별도의 Derby 서버를 실행해야 함.
     Derby 디렉토리 : C:\IBM\SDP70_RAD7\runtimes\base_v61\derby\bin
     실행 : C:\IBM\SDP70_RAD7\runtimes\base_v61\derby\bin\networkServer\startNetworkServer.bat

============================================================================================= 
웹서비스 포트 관련 (WebSphere를 여러개 설치한 경우, 9080이 아닌 다른 포트 사용)

  1. 소스내부에 default로 9080 로 코딩되어 있음. WAS 사용포트에 따라 이를 변경해 주어야 한다.
   - ItsoAdTellerClient 실행시(웹서비스방식) 문제가 발생된다.
   - 변경해 주어야 할 부분
     @ ItsoAdWebService\WebContent\wsdl\itso\ad\citybank\CityBank.wsdl
     @ ItsoAdWebService\WebContent\WEB-INF\wsdl\CityBank.wsdl
     @ ItsoAdEJB\ejbModule\PiggyBankImplementationDesigns\itso\ad\citybank\CityBankServiceLocator.java

Posted by 아름프로
Posted by 아름프로
개발 라이프사이클을 실제적인 구현을 위한 IBM Rational 제품군(eclipse 기반)의
대폭적인 변화의 시작을 알리는 "Caspian" 프로젝트의 제품들이 하나둘씩 릴리즈를
하고 있다.

이에 대한 관련 제품에 대한 정보를 링크해 본다.
개발 라이프사이클 관점에서의 안목으로 접근하길 바란다.
Posted by 아름프로
Rational이 IBM에 합병된 후, 발표된 6.0이 eclipse기반으로의 전환을 위한 과도기 제품적인 성격이짙어 보였다면,
올해말과 내년초에 발표될 7.0버젼대 제품은 전제품이 eclipse에 기반을두고, 개발 라이프사이클을 전반적으로 탄탄히 지원해 주고 있는 것을 볼 수 있다.

7.0버젼으로의 전환과 함께 개최되는 IBM Rational Software Development Conference 2007은
개발의 전체 사이클의 일부분에서 전체 흐름까지를 두루 접해볼 수 있는 좋은 기회가 될 것 같다.

해당 홈페이지의 Agenda 에 있는 Technical workshop Track description 의 내용을 통해
앞으로 전개될 개발의 흐름과 개발툴들이 전개되는지를 잠시 살펴보자.. ~

홈페이지 링크

세션 내용 (Technical workshop)

Business Driven Development for Compliance Management
Introduction to IBM Rational Portfolio Manager
Writing Good Use Cases - A Beginners Session
Patterns for Service-Oriented Architecture (SOA) Success
Rapid Application Development Using IBM Rational Application Developer
Introduction to Rational's Automated Quality Tools
Geographically Distributed Development using the IBM Rational Software Development Platform
Walk through of IBM Rational Method Composer Tooling Capability
Introduction to the IBM Software Development Platform
Writing Good Use Cases - An Advanced Session
Business and System Modeling Using Use Case Flowdown and IBM Rational Method Composer
Designing Service-Oriented Architecture (SOA) Services with IBM Rational Software Architect
Test Drive Rational Cross Platform Rapid SOA Development Technology (EGL)
Test Management with IBM Rational ClearQuest
Geographically Distributed Development for Developers
Build and Deployment Tracking
Basic SoDA and ProjectConsole Template Building
Governing Business Driven Service-Oriented Architecture (SOA) Development
Team Development with IBM Rational Software Architect
Advanced IBM Rational Functional Tester
Working with IBM Rational BuildForge to Optimize Your Software Delivery Processes
Migrating RUP Plug-ins to IBM Rational Method Composer
Discovering the value of IBM Rational's DoD Architecture Framework (DoDAF) Solution

Track Descriptions

Requirements and Analysis
Business and Data Modeling
Architecture and Design
Construction and Assembly
Cross Platform Application Development
Software Quality
Change and Configuration Management
Change and Configuration Management -- Advanced
Process and Portfolio Management
Application Lifecycle Management
Bridging Business and Technology
Open Computing

(색상은 개인적인 이슈와 관련 된 사항입니다. 보시는 분은 의미를 부여하지 마세요.
각 세션과 상세내역은 해당페이지 링크에 가시면 보실 수 있습니다.)
Posted by 아름프로
Posted by 아름프로

BLOG main image

카테고리

분류 전체보기 (539)
이야기방 (19)
토론/정보/사설 (16)
IBM Rational (9)
U-IT (0)
SOA/WS/ebXML (110)
개발방법론/모델링 (122)
J2SE (34)
J2EE (60)
DataBase (39)
Open Projects (30)
BP/표준화 (50)
Apache Projects (15)
Web/보안/OS (22)
Tools (7)
AJAX/WEB2.0 (1)
Linux/Unix (1)
영어 (0)
비공개방 (0)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

달력

«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

글 보관함

Total :
Today : Yesterday :