2. 2
황인균
목차
어플리케이션 프레임워크
. 컨텍스트
. 개념
. 프레임워크 레이어
적용 범위
기대 효과
. 시스템 구축 의뢰 時
. 시스템 구축 時
. 시스템 운영 時
실행 환경 서비스
. 구성 개요
개발 환경 서비스
. 구성 개요
. 개발 공정과 개발 도구와의 관계
운영 환경 서비스
. 구성 개요
. 운영 환경 아키텍처
도입 시 고려사항
3. 3
황인균
어플리케이션 프레임워크 > 컨텍스트
아키텍처 정의
Business 아키텍처
Data 아키텍처
Application 아키텍처
Technical 아키텍처
- H/W, N/W 아키텍처
- S/W 아키텍처
- 보안 아키텍처
개발
어플리케이션 프레임워크
업무 어플리케이션
4. 4
황인균
어플리케이션 프레임워크 > 개념
프레임워크의
목표
개발 생산성 및 품질 향상
시스템 운영의 위험 감소
및 운영 효율성 향상
IT 비용의 절감
어플리케이션 프레임워크 = 검증된 코드 재사용 + “표준화” + 품질 구현
검증된 디자인과
소스의 재사용
5. 5
황인균
어플리케이션 프레임워크 > 프레임워크 레이어
시스템 프레임워크(.NET, Java)
운영체제(Windows, Linux)
범용 프레임워크 레이어
도메인 프레임워크 레이어
비즈니스 어플리케이션
어플리케이션 프레임워크
오픈 / 상용
사이트에서 개발
6. 6
황인균
목차
어플리케이션 프레임워크
. 컨텍스트
. 개념
. 프레임워크 레이어
적용 범위
기대 효과
. 시스템 구축 의뢰 時
. 시스템 구축 時
. 시스템 운영 時
실행 환경 서비스
. 구성 개요
개발 환경 서비스
. 구성 개요
. 개발 공정과 개발 도구와의 관계
운영 환경 서비스
. 구성 개요
. 운영 환경 아키텍처
도입 시 고려사항
7. 7
황인균
적용 범위
어플리케이션
어플리케이션
에게 런타임
서비스 제공
실행 환경
개발자에게 통합
개발 환경 제공
개발 환경
운영자에게
모니터링 및
관리 도구
제공
운영 환경
개발자 운영자
어플리케이션 개발자를 위한 통합 개발
환경 제공
하드코딩이 아닌 파라미터 설정을 통해
프레임워크의 런타임 서비스의 행위를
정의함
(어플리케이션의 업무 로직 자체는
하드코딩함)
어플리케이션 구현을 위한 상용 혹은 오픈
소스 개발 도구와 연동하여 통합
개발환경을 제공함
어플리케이션을 위한 런타임 서비스를
제공함
트랜잭션관리, 시스템 및 업무 로그 처리,
에러 처리 등 다양한 기술 공통 서비스
제공
모든 어플리케이션이 공통적으로
사용하는 업무 공통 서비스 제공
운영자에게 시스템 운영에 필요한
모니터링 및 관리 도구 제공함
프레임워크의 Operation
Environment는 상용 SMS와
연동하여 통합적인 운영환경을
제공함
어플리케이션 개발 時 어플리케이션 실행 時 어플리케이션 운영 時
파라미터
설정을
통한
개발
모니터링
및 제어
8. 8
황인균
목차
어플리케이션 프레임워크
. 컨텍스트
. 개념
. 프레임워크 레이어
적용 범위
기대 효과
. 시스템 구축 의뢰 時
. 시스템 구축 時
. 시스템 운영 時
실행 환경 서비스
. 구성 개요
개발 환경 서비스
. 구성 개요
. 개발 공정과 개발 도구와의 관계
운영 환경 서비스
. 구성 개요
. 운영 환경 아키텍처
도입 시 고려사항
9. 9
황인균
기대효과
RFP 발송 등 시스템 구축 의뢰의 효율화
추구
용역사의 역량에 독립적인 품질 유지
시스템 구축 기간/비용 절감
운용 표준화를 통한 운용 효율의 극대화
장애 발생의 최소화 및 장애 대응 능력의
향상
성능 및 안정성의 보장
개발 표준화를 통한 개발의 단순화
사전에 정의된 설계 및 소스 코드의 재사용을
통한 개발 생산성 향상
검증된 아키텍처의 적용을 통한 시스템
품질의 향상
시스템 구축 의뢰 시 시스템 구축 시
시스템 운영 시
개발 ROI의 극대화 실현
(30%이상)
연간 TCO의 최소화 실현
(15%이상)
10. 10
황인균
기대효과 > 시스템 구축 의뢰 時
조직
용역사의 프레임워크에 의존전인 개발(AS-IS) 전사 표준 프레임워크에 의한 개발(TO-BE)
RFP
A 社 B 社 C 社 D 社
어플리케이션
#1
어플리케이션
#2
어플리케이션
#3
용역사
프레임워크 #1
용역사
프레임워크 #2
용역사
프레임워크#3
조직
RFP
A 社 B 社 C 社 D 社
어플리케이션
#1
어플리케이션
#2
어플리케이션
#3
전사 표준 프레임워크
용역사에 H/W,
S/W,아키텍처 및
어플리케이션 개발
모두를 의뢰
용역사에 전사 표준
프레임워크를
근간으로 어플리케이션
개발만 의뢰
각 용역사간의 상이한 표준으로 전사 비표준화 심화
시간이 갈수록 개발기간/개발 Risk/개발 비용 증가
용역사의 역량에 따라 시스템 품질 좌우 및 Risk 증가
갈수록 IT 경쟁력 저하
전사 표준 프레임워크 근간의 개발로 전사 표준 유지
표준 하의 어플리케이션 개발로 개발 기간/비용 절감
시스템 복잡도 감소로 인한 장애 감소 및 TCO절감
용역사의 역량에 무관하게 고품질 시스템 유지 가능
근본적인 IT 경쟁력 확보
11. 11
황인균
기대효과 > 시스템 구축 時
어플리케이션 개별 개발(AS-IS) 전사 표준 프레임워크 기반 개발(TO-BE)
전사 표준 프레임워크의 부재로 신규 어플리케이션
개발시 모든 기술적인 이슈를 처음부터 해결해 나가야 함
대상 업무의 비즈니스 로직 뿐 아니라 각종 기술적인 이슈를
함께 고민해야 하기 때문에 개발 생산성이 낮고, 개인적인 역량과
경험에 따라 어플리케이션 품질의 편차가 발생함
배포?
업무간 인터페이스?
업무 공통 서비스
기술 공통 서비스
아키텍처 정책
프레임워크
신규 어플리케이션 개발 시 전사 표준 프레임워크가 제공하는
검증된 아키텍처 정책, 기술 공통 서비스, 업무 공통 서비스를
재사용함
개발자는 기술적인 문제 해결로부터 벗어나 대상 업무의
비즈니스 로직에 집중함으로써 개발 생산성 및 어플리케이션의
품질이 향상됨
12. 12
황인균
기대효과 > 시스템 운영 時
인력 순환의 어려움 및 인력난(AS-IS) 프레임워크운용 조직을 통한 고급기술인력풀(TO-BE)
개별 어플리케이션 팀 마다 아키텍트와 프레임워크 개발자,
어플리케이션 개발자가 중복적으로 존재함.
어플리케이션 마다 서로 다른 기술 인프라와 아키텍처를
이용하기 때문에 인력 순환에 어려움이 있음.
숙련된 아키텍트 및 프레임워크 개발 인력이 부족함
숙련된 아키텍트와 프레임워크 개발자로 구성된 프레임워크
운용 조직을 통해 개별 어플리케이션 개발 팀에게
프레임워크를 공급하고 기술을 지원함
고급 인력 풀 운영을 통해 개별 어플리케이션 개발팀의
인력난을 해소하고, 인력 운영의 효율성을 극대화함
아키텍트
프레임워크
개발자
어플리케이션
개발자
어플리케이션 #1
아키텍트
프레임워크
개발자
어플리케이션
개발자
어플리케이션 #2
아키텍트
프레임워크
개발자
어플리케이션
개발자
어플리케이션 #3
어플리케이션 별로
서로 상이한
아키텍처는 인력의
효율적인 운영의
벽으로 작용하고
있음
어플리케이션
개발자
어플리케이션 #1 어플리케이션 #2
아키텍트 프레임워크
개발자
프레임워크
운영 조직
어플리케이션
개발자
어플리케이션
개발자
어플리케이션 #2
고급 기술 인력 풀로
구성된 프레임워크
운용 팀을
조직함으로써 인력
운영의 효율성을
극대화함
13. 13
황인균
목차
어플리케이션 프레임워크
. 컨텍스트
. 개념
. 프레임워크 레이어
적용 범위
기대 효과
. 시스템 구축 의뢰 時
. 시스템 구축 時
. 시스템 운영 時
실행 환경 서비스
. 구성 개요
개발 환경 서비스
. 구성 개요
. 개발 공정과 개발 도구와의 관계
운영 환경 서비스
. 구성 개요
. 운영 환경 아키텍처
도입 시 고려사항
14. 14
황인균
실행 환경 서비스 > 구성 개요
화면 처리
실행 환경
온라인 배치
데이터 처리 연계 통합
공통 코어 공통 유틸리티
업무 처리
정보 처리
공통 기반
서비스 그룹 설명
화면 처리
▪ 사용자 화면과 업무 프로그램 간의 인터
페이스를 담당하는 서비스 그룹으로서 사
용자 화면 구성, 사용자 입력정보, 검증 등
의 서비스를 제공함
업무 처리
▪ 업무 로직의 처리를 담당하는 서비스그
룹으로서 온라인 및 배치 업무를 수행하는
데 필요한 업무 흐름 제어, 트랜잭션 관리,
에러 처리 등의 서비스를 제공함
정보 처리
▪ 데이터의 생성/변경/삭제 등 데이터 로
직 처리 및 EAI, ESB, MOM 등 연계 솔루
션에 대한 Adapter 제공을 담당하는 서비
스 그룹
공통 기반
▪ 실행환경의 각 서비스 그룹에서 공통적
으로 사용하는 핵심기능 및 유틸리티를 제
공하는 서비스 그룹
15. 15
황인균
목차
어플리케이션 프레임워크
. 컨텍스트
. 개념
. 프레임워크 레이어
적용 범위
기대 효과
. 시스템 구축 의뢰 時
. 시스템 구축 時
. 시스템 운영 時
실행 환경 서비스
. 구성 개요
개발 환경 서비스
. 구성 개요
. 개발 공정과 개발 도구와의 관계
운영 환경 서비스
. 구성 개요
. 운영 환경 아키텍처
도입 시 고려사항
NEXT
16. 16
황인균
개발 환경 서비스 > 구성 개요
구현 도구
개발 환경 서비스 그룹 설명
구현 도구
▪ 프로그램의 구현을 지원하는 도구들의 집합
으로서 코딩, 컴파일, 디버깅 등을 지원하는 기
본적인 IDE(통합 개발 환경)과 개발 생산성 및
편의성 증진을 위한 각종 개발 도구들을 제공
함
배포 도구
▪ 구현 완료된 업무 프로그램을 실행환경에 배
포 가능한 형태로 패키징하고, 패키징된 프로
그램을 실행 환경에 배포하는 도구를 제공하는
서비스 그룹
품질/테스트 도
구
▪ 구현된 프로그램의 테스트 및 품질 점검을 종
합적으로 지원하는 도구를 제공하는 서비스 그
룹
형상 관리 도구
▪ 형상관리 및 변경 관리를 지원하는 도구를 제
공하는 서비스 그룹
개발관리 도구
▪ 프레임워크 사용자 관리 및 프레임워크 내의
각종 자원에 대한 권한 관리 기능을 제공하는
서비스 그룹
3rd party 도구
연계
▪ 모델링 툴, 화면 툴, 메타 관리 시스템, BRE,
EAI/ESB 등 각종 사용솔루션과의 연계 서비스
를 제공하는 서비스 그룹
배포 도구
테스트 도구 형상 관리 도구
개발 관리 도구 3rd Party 도구 연계
17. 17
황인균
개발 도구 저장소 실행 모듈 개발절차 저장소 연계 테스트 수행
개발 환경 서비스 > 개발 공정과 도구 관계
DBIO 제작 도구
(구현단계)
개발공정과 개발도구의 관계
IO 제작 도구
(구현단계)
Service 제작 도구
(구현단계)
Batch Job
(구현단계)
설계 모델
Repository
개발 환경
Repository
서비스
비즈니스
컴포넌트
엔터티
컴포넌트
DBIO
컴포넌트
Batch
테스트 도구
(테스트 단계)
테스트 Case
작성 툴
테스트 대상
조회 툴
UML 모델링 툴
(분석/설계 단계)
개발 관리 도구
1
2
3 4 5
5
67
8
18. 18
황인균
목차
어플리케이션 프레임워크
. 컨텍스트
. 개념
. 프레임워크 레이어
적용 범위
기대 효과
. 시스템 구축 의뢰 時
. 시스템 구축 時
. 시스템 운영 時
실행 환경 서비스
. 구성 개요
개발 환경 서비스
. 구성 개요
. 개발 공정과 개발 도구와의 관계
운영 환경 서비스
. 구성 개요
. 운영 환경 아키텍처
도입 시 고려사항
19. 19
황인균
운영 환경 서비스 > 구성 개요
온라인 관제
운영 환경 서비스 그룹 설명
온라인 관제
▪ 온라인 서비스 운영관리를 위한 도구로서 온
라인의 서비스 실행/통제를 위한 설정과 제어,
온라인 자원 관리 및 모니터링, 로그분석/통계
서비스 등을 제공하는 서비스 그룹
배치관제
▪ 배치 및 센터컷 운영 관리를 위한 도구로서
배치/센터컷 서비스에 대한 작업 관리 및 제어,
작업 통지 및 모니터링, 로그 분석 및 통계 서
비스를 제공하는 서비스 그룹
운영관리
▪ 프레임워크 운영 환경 관리를 위한 통합 어드
민 화면 제공
▪ 프레임워크 실행에 필요한 각종 자원관리 및
배포관리 서비스를 제공하는 서비스 그룹
배치 관제
운영 관리
20. 20
황인균
운영 환경 서비스 > 운영 환경 아키텍처 구성
서비스 그룹 설명
운영자
▪ 프레임워크를 운영하는 사용자
운영 도구
▪ 운영자 pc에서 동작하는 OLTP/Batch 관리, 모
니터링들을 지원하는 IDE기반 프레임워크 운영
도구
프레임워크
서버
▪ 운영도구를 통해 입력된 데이터를 운영 환경
관리 정보 등에 대하 서비스 처리와 Repository
에 정보를 관리하는 서버
실행 서버
▪ 실행 프로그램이 구동되어 서비스를 제공하는
시스템으로 운영 도구를 통해 통제되거나 모니
터링 됨
21. 21
황인균
목차
어플리케이션 프레임워크
. 컨텍스트
. 개념
. 프레임워크 레이어
적용 범위
기대 효과
. 시스템 구축 의뢰 時
. 시스템 구축 時
. 시스템 운영 時
실행 환경 서비스
. 구성 개요
개발 환경 서비스
. 구성 개요
. 개발 공정과 개발 도구와의 관계
운영 환경 서비스
. 구성 개요
. 운영 환경 아키텍처
도입 시 고려사항
22. 22
황인균
어플리케이션 프레임워크 도입 시 고려사항
오픈 소스 프레임워크 상용 프레임워크
라이선스 비용 및 유지 보수 비용 유리
기술 및 비즈니스 환경 변화에 대한
신속한 대응에 유리
기술 이슈에 대한 담보 부족
품질 및 단기간 안정화에 유리
운영 위험의 감소 및 운영 효율성
향상
특정 벤더에 대한 의존성 강화
장점
단점
■시스템 프레임워크
파운데이션 프레임워크
어플리케이션과 어플리케이션 프레임워크에 프로그래밍 모델을 제공하는 프레임워크
OMG의 CORBA
Microsoft의 .NET 프레임워크, COM/DCOM
Sun MicroSystems의 J2EE
■ 범용 프레임워크
비즈니스 도메인에 관계없이 대부분의 어플리케이션에서 공통적으로 발견될 수 있는 컴포넌트와 서비스로 구성된다.
Microsoft의 Enterprise Library, Application Block
Struts, Spring, Spring.NET
■ 도메인 프레임워크
특정한 비즈니스 도메인을 대상으로 하는 프레임워크 컴포넌트로 구성된다.
특정한 비즈니스 도메인의 모든 어플리케이션에 공통된 비즈니스 지식을 구현한다.
프레임워크는 개발자에게 어플리케이션을 빠르고 쉽게 개발할 수 있는 개발 환경을 제공하고,
어플리케이션에게는 신뢰할 수 있는 실행환경을,
그리고 운영자에게는 안정적인 운영환경을 제공합니다.
시스템 구축 의뢰(RFP)에서부터 구축 및 운영에 이르기까지 프레임워크를 적용함으로써,
전사 표준의 지속적 유지를 통한 구축 ROI 극대화(30%) 및 TCO 최소화(15%)를 실현합니다.
전사 표준 프레임워크를 기반으로 어플리케이션 개발 용역만을 의뢰함으로써 용역사 역량에 무관하게 고품질의 시스템 개발이 가능하며, 시스템 구축에 소용되는 기간과 비용의 절감 효과가 있습니다.
개발자가 기술적인 문제 해결로부터 벗어나 대상 업무의 비즈니스 로직에 집중함으로써 개발 생산성 및 어플리케이션의 품질이 향상됩니다.
숙련된 아키텍트와 개발자로 구성된 프레임워크 운용 조직을 통해 전사 프레임워크를 공급하고 기술을 지원함으로써, 고급 기술 인력난의 해소 및 인력 운영의 효율성을 극대화합니다.
프레임워크 실행 환경은 화면처리, 업무처리, 정보처리, 공통기반 등 4개의 서비스 그룹으로 구성됩니다.
개발환경은 구현, 배포, 테스트, 형상관리로 구성되는 개발 사이클을 통합적으로 지원하며, 분석/설계를 지원하는 3rd Party 도구 연계와 개발자 권한 및 오브젝트 관리를 위한 개발 관리 도구로 구성됩니다.
개발환경은 분석/설계, 구현, 테스트 등 응용 SW 개발의 전 단계를 지원하는 다양한 개발도구를 제공하며, 개발환경 Repository를 기반으로 모델링, I/O 및 DBIO, 서비스, 테스트 시나리오 관련 정보를 효과적으로 연계시킵니다.
운영환경은 프레임워크 기반 시스템의 운영 및 모니터링을 위한 서비스를 제공하는 온라인 관제 및 배치관계, 운영관리 서비스 그룹으로 구성됨
프레임워크 운영 환경은 운영자 pc에 탑재되는 운영도구, 운영 프레임워크 관련 데이터를 처리하는 프레임워크 서버, 실제 구현된 업무 프로그램 소스가 실행되는 실행서버로 구성됩니다.
조직은 프레임워크를 어플리케이션 개발과 운영의 효율화를 통한 IT 비용 절감의 수단으로 인식하는 반면, 벤더는 고객사의 개발과 운영 표준을 선점함으로써 차후 비즈니스에서 유리한 위치를 차지하기 위한 수단으로 인식합니다.상용 프레임워크의 단점
핵심 기술 이전 미비로 인한 IT 기술 경쟁력 약화
특정 벤더 및 제품에 대한 가격 협상력의 약화