1. MDA(Model Driven Architecture)
1) 정의 : 새로운 플랫폼과 기술을 도입하거나 환경적 변경 요구에 따른 상호운영성 문제를 해결하기 위해
OMG가 제정한 기존의 모델링 표준들을 이용하는 개발적인 SW 개발 기술
2) 특징 : 모든 컴포넌트 기술 요소들에 대한 표준 베타 모델(Meta Model)을 정의
모든 컴포넌트 기술 요소들에 대한 호환성과 상호 운영성을 보장
3) MDA 구조
- MOF(Meta Object Facility) : 객체 및 컴포넌트 기술의 핵심을 정형화한 모델
- UML(United Modeling Language) : 객체 및 컴포넌트 시스템을 표현하기 위한 언어
- XML(XML Metamodel Interchange) : XML 기발으로 정의한 데이터의 표준관리 언어
- CWM(Common Warehouse Metamodel) : 데이터웨어하우징을 위한 표준 메타모델
Ref : http://korea-sw-eng.blogspot.kr/2016/01/sw-mdamodel-driven-architecture-agile.html
2. Agile Process
1) 정의
: 1990년대 중반부터 Waterfall에 대표되는 전통적 방식에 대한 반대 움직임
: 급변하는 e-비지니스 환경에서 SW 개발분야의 다양한 변화를 수용하고 대응할 수 있는 여러 방법론을 통칭
2) 특징
- Incremental(증분적)이고 Evolutionary(점진적인) 프로세스
- 기본 프로세스 모델보다 좀더 모듈적이로 Linear한 모델
- 동시성과 비동기성
- Time-based Process
- Predictive보다 Adaptive함
-프로세스 중심보다 사람 중심
3) 설계원칙
- 개별 Process의 캡슐화
- 모듈화된 프로세스
- 정해진 Cycle Time내에서 순환/병행 방식 규정
- 업무의 속도와 부하를 누구나 동일하게 유지
4) Agile Process 종류
- XP(eXtreme Programming) : 테스팅 강조, 4가지 가치와 12개 실천 항목, 1~3주 Iteration
- SCRUM : PJT를 Sprint (30일 단위 Iteration)로 분리, 팀은 매일 스크럼(15분 정도) 미팅으로 계호기 수립
- DSDM(Dynamic Systems Development Method) : 동적 시스템 개발 방법론
- FDD(Feature Driven Development) : 기능 주도 개발, 짧은 Iteration(2주), 5단계 프로세스(전체모델개발, 특성리스트 생성, 계획, 설계, 구축)
5) Waterfall Process vs Agile Process(폭포수 모델과 애자일 모델 비교)
Waterfall Process |
Agile Process |
|
Project Management 관점 |
상세계획 개발범위로 정해진 기간이 fix되고 마일드스톤(분석/설계/개발/구현) 구성이 가능 |
1주 단위 계획, 작동하는 프로그램 단위 트랙 구성 |
Development Process 관점 |
모든 코드에 대한 상세한 명세, 모든 코드가 완성되었을 때 전체 통합 |
최소 설계 문서 지향, 지속적 빌드, 테스트 주도 개발 |
Collaboration 관점 |
고객 소극적 참여(프로젝트 시작과 종료식 고객 접촉 ) |
고객과 개발자간 지속적 커뮤니케이션 함 |
'IT이야기 > SW 아키텍처' 카테고리의 다른 글
SW 개발 프로세스 종류 (0) | 2016.12.27 |
---|