출처 : http://blog.naver.com/sealriel/10189298953

 

 

 

OLAP(online analytical processing) 개념

 

OLAP는 쉽게 다차원 분석으로 생각하면 된다. 정의를 내리자면, 최종사용자가 직접 다차원으로 이루어진 데이터로부터 통계적인 요약 정보를 분석하여 의사결정 에 활용하는 방식을 말한다.

 

OLAP 그림출처 : http://118k.tistory.com/66

OLAP 시스템은 데이터 웨어하우스나 데이터 마트와 같은 시스템과 상호 연

관되는 정보 시스템이다.

데이터 웨어하우스가 데이터를 저장하고 관리한다면 OLA P는 데이터 웨어하

우스의 데이터를 전략적인 정보로 변환시키는 역할을한다.

OLAP는 중간 매개체 없이 이용자들이 직접 컴퓨터를 이용하여 데이터에 접

근하는 데 있어 필수적인 시스템이라할수 있다.

 

올해 가장 매출이 저조한 대리점과 저조한 상품 품목은 ?

    서울지역에서 가장 매출이 높은 상품과 순이익이 가장 높은 상품은 ?

    지역별로 전월 대비 매출이 가장 높은 상품은 ?

출처 : http://i-bada.blogspot.kr/2014/01/olap-online-analytical-processing.html

 

 

 

 

OLAP 연산

- Roll-up : 분석할 항목에 대해 한 차원의 계층 구조를 따라 단계적으로 구체적인 내용의 상세 데이터로부터 요약된 형태의 데이터로 접근하는 기능

 

- Drill- down : 분석할 항목에 대해 한 차원의 계층 구조를 따라 단계적으로 요약된 형태의 데이터로부터 구체적인 내용의 상세 데이터로 접근하는 기능

 

 

- Pivoting : 보고서의 행,열,페이지 차원을 바꾸어 볼 수 있는 기능

 

- Slicing : 다차원 데이터 항목들을 다양한 각도에서 조회하고 자유롭게 비교하는 기능

-Dicing : 위와 동일하지만 slicing을 더 쪼개는 형태.

 

OLAP 종류

ROLAP(Relational-OLAP) : 관계형 데이터베이스와 관계형 질의어를 사용하여 다차원 데이터를 저장하고 분석함

MOLAP(Multi- dimension OLAP) : 다차원 데이터를 저장하기 위해 특수한 구조의 다차원 데이터베이스를 사용하고 데이터 검색 속도를 향상시키기 위해 큐브 캐시(Cube Cache )라고 하는 주기억장치 속에 데이터 큐브를 보관함

데이터 큐브는 데이터가 여러차원으로 모델링되는 것으로,차원(Dimension )과 사실(F a c t)로 정의된다. 차원은 한 조직이 그것에 대하여 기록하기를 원하는 시각이나 개체를 의미한다. 또한, 위 그림과 같은 데이터웨어하우스 스키마들을 사용 한다.

 

HOLAP(Hybird OLAP ) : ROLAP와 MOLAP의 특성을 모두 가지고 있으며,빠른 검색이 필요한 경우에는 요약을 메모리에 저장하고 기본 데이터나

다른 요약들은 관계형 데이터베이스에 저장함

그림출처 : http://apandre.wordpress.com/data/datacube/

 

OLAP Cubes

OLAP (online analytical processing) cube on one hand extends a 2-dimensional array (spreadsheet table or array of facts/measures and keys/pointers to dictionaries) to a multidimensional DataCube, a…

apandre.wordpress.com

 

 

 

 

 

 

네이버 쉽게 배우는 소프트웨어 공학

 

http://terms.naver.com/entry.nhn?docId=3533059&cid=58528&categoryId=58528

 

 

 

쉽게 배우는 소프트웨어 공학

CMMI 모델

 

1. CMMI 모델의 등장 배경과 개념

1984년 카네기멜론 대학에 소프트웨어 공학 전문 연구소인 SEI(software engineering institute)가 미 국방성의 지원을 받아 미국 소프트웨어 산업 능력을 향상시킬 목적으로 설립되었다. 미 국방성이 이 연구소에 요청한 것은 소프트웨어를 위한 성숙도 모델의 개발이다. 미 국방성은 수많은 업체로부터 소프트웨어 납품을 받는데 업체마다 품질이 달랐다.

그래서 업체의 개발 능력이 과연 어느 정도인지 객관적으로 측정하고, 요구하는 품질에 대한 기준을 제시해줄 목적으로 요청을 한 것이다. 그 결과 성숙도 모델인 SW-CMM(SW-Capability Maturity Model, 이하 CMM)이 만들어졌다. 이는 프로젝트 개발 조직에서 프로세스 성숙도가 높은 조직이 성숙도가 낮은 조직보다 높은 품질의 소프트웨어를 생산할 수 있다는 모델이다.

CMM은 소프트웨어 공급자의 강점과 약점을 평가하는 수단으로, 개발자가 프로세스의 능력을 스스로 평가하고 평가 결과에 따른 개선 방향을 설정하는 데도 사용되었다. 이 후 여러 모델이 추가 개발되고, 소프트웨어 사용 환경의 변화, 기존 모델 등과의 중복 문제 등을 해결하기 위하여 새로운 모델의 필요성이 대두되었다.

SEI는 소프트웨어 역량 성숙도 모델 CMM 2.0 버전과 SECM(System Engineering Capability Model) 그리고 통합제품개발(integrated product development)-CMM 모델을 통합하고 정리하여 ISO 15504(SPICE)와 호환이 가능한 CMMI라는 통합 모델을 2000년 8월 발표하게 되었다. CMM과 CMMI의 차이는 [표 9-12]와 같다.

표 9-12 CMM과 CMMI의 비교

표 9-12 CMM과 CMMI의 비교
단계 CMM CMMI
1 초기(initial) 초기(initial)
2 반복(repeatable) 관리(managed)
3 정의(defined) 정의(defined)
4 관리(managed) 정량적 관리(quantitatively managed)
5 최적화(optimizing) 최적화(optimizing)

CMMI(Capability Maturity Model Integration)는 프로세스 표준화의 기준과 방향을 제시하므로 조직 프로세스에 대한 측정뿐 아니라 평가 지표로도 활용할 수 있는데, 이때 능력을 평가하거나 성숙도를 평가할 수 있다. CMMI의 각 약자는 다음과 같은 의미를 지닌다.

■ C(능력, Capability)
일반적으로 능력이 있다, 없다는 뭔가를 할 수 있는 힘이 있느냐, 없느냐로 말할 수 있다. 소프트웨어 개발에서 능력이란 개발 목표(주어진 기간, 정해진 비용, 고품질 등)를 달성할 수 있는 힘이다. 능력이 있는 조직은 개발 목표를 달성할 수 있다. 그러나 능력이 없는 조직은 개발 기간이 연장된다거나 비용이 더 추가된다거나 품질이 떨어지는 소프트웨어를 개발함으로써 개발 목표를 달성하지 못한다.

■ M(성숙도, Maturity)
성숙의 사전적 의미는 '생물의 발육이 완전히 이루어짐', '몸과 마음이 자라서 어른스럽게 됨', '경험이나 습관을 쌓아 익숙해짐' 등으로, 다 자라서(완성되어) 책임감이 있는 느낌을 준다. 소프트웨어 개발에서 성숙도가 높은 조직이란 책임감이 있는 조직으로서 사용자가 만족하는 고품질의 소프트웨어를 개발하기 위해 개발 과정에서 객관적이고 정량적인 근거에 따라 프로세스가 측정되고 지속적인 개선이 이루어지는 조직을 말한다.

반면 성숙하지 못한 조직은 책임감이 떨어지는 서투른 조직으로, 개발 프로세스가 객관적인 근거에 의해 진행되지 않기 때문에 사용자가 만족하는 고품질의 소프트웨어가 만들어질 수 없다.

표 9-13 성숙도가 높은 조직과 낮은 조직의 특징

표 9-13 성숙도가 높은 조직과 낮은 조직의 특징
구분 특징
성숙도 높음 • 소프트웨어 개발/관리 프로세스가 조직 차원에서 이루어진다.
• 구성원들이 소프트웨어 프로세스를 잘 알고 있다.
• 프로세스를 따라 수행함으로써 역할과 책임이 명확하다.
• 제품 품질을 중요하게 여기고, 사용자의 만족도를 측정한다.
• 조직 차원의 표준 프로세스가 일관성 있게 준수되고 있다.
성숙도 낮음 • 조직 내에 정해진 프로세스가 없어 필요할 때마다 임시방편으로 만들어 사용하고 있다.
• 문제가 발생했을 때 근본적인 해결 방안을 찾기보다는 임시방편으로 해결하려고 한다.
• 객관적인 비용 산정과 근거에 의한 일정이 산출되지 않아 개발 기간과 비용이 초과하는 경우가 많다.
• 제품 품질에 대해 객관적으로 평가하지 못한다.
• 제품의 기능, 품질보다 납기일을 최우선으로 생각한다.

■ M(모델, Model)
여기서 모델은 일반적으로 알고 있는 모델의 의미와 약간 다르다. 여기서는 프로세스를 감사(audit)하는 의미로 사용한다. 즉 기준대로 하고 있는지, 그렇지 않은지를 검사하는 것이다. CMMI는 그 기준을 제시하고 있는데 그것이 '수행 지침(best practice)'이라는 모델이다. 조직이 프로세스 개선을 원한다면, CMMI는 그 조직이 무엇을 해야 하는지에 대해 '수행 지침'을 통해서 알려준다. 그러나 구체적으로 어떻게 할지는 조직의 역량에 맡겨둔다.

■ I(통합, Integration)
여러 가지 프로세스의 기준을 하나로 통합했다는 의미이다. 소프트웨어 개발 생명주기의 각 단계, 즉 계획부터 유지보수까지 모든 과정을 통합한 모델이라는 의미가 있다.

결국 CMMI는 조직의 프로세스에 대한 가이드이자 기준이며 '능력'과 '성숙도'로 조직의 프로세스를 측정하고 평가하는 모델의 통합 버전인 프로세스 개선 성숙도 모델이라 할 수 있다.

2. CMMI의 구성

CMMI는 개발 조직의 소프트웨어 프로세스 성숙도를 [표 9-14]처럼 5단계로 구분한 후, 각 단계별 목적을 달성하기 위해 [표 9-15]와 같이 4개의 범주로 구분된 22개의 프로세스 영역(PSProcess Area)으로 구성하고 있다.

표 9-14 CMMI 5단계(소프트웨어 프로세스 성숙도)

표 9-14 CMMI 5단계(소프트웨어 프로세스 성숙도)
단계 프로세스 내용
1. 초기(initial) 단계 프로세스 없음 예측/통제 불가능
2. 관리(managed) 단계 규칙화된 프로세스 기본적인 프로젝트 관리 체계 수립
3. 정의(defined) 단계 표준화된 프로세스 조직 차원의 표준 프로세스를 통한 프로젝트 지원
4. 정량적 관리(quantitatively managed) 단계 예측 가능한 프로세스 정량적으로 프로세스가 측정/통제됨
5. 최적화(optimizing) 단계 지속적 개선 프로세스 프로세스 개선 활동

표 9-15 CMMI의 4가지 범주로 구분된 22개의 프로세스 영역

표 9-15 CMMI의 4가지 범주로 구분된 22개의 프로세스 영역
범주 프로세스 영역
프로젝트 관리 프로젝트 계획, 감시, 제어와 관련된 프로젝트 관리 행위들을 다루는 프로세스 영역들로 구성됨.

① 프로젝트 계획(PPproject planning-L2)
② 프로젝트 감시 및 통제(PMCProject Monitoring and Control-L2)
③ 협력 업체 관리(SAMSupplier Agreement Management-L2)
④ 통합된 프로젝트 관리(IPMIntegrated Project Management+IPPD-L3)
IPPDIntegrated Product and Process Development
⑤ 위험 관리(RSKMRisk Management-L3)
⑥ 정량적 프로젝트 관리(QPMQuantitative Project Management-L4)
공학 여러 공학 분야에 걸쳐서 공유되는 개발과 유지보수와 관련된 활동들을 다루는 프로세스 영역들로 구성됨.

⑦ 요구 사항 관리(REQMRequirements Management-L2)
⑧ 요구 사항 개발(RDRequirements Development-L3)
⑨ 기술적 솔루션(TSTechnical Solution-L3)
⑩ 제품 통합(PIProduct Integration-L3)
⑪ 확인(VERVerification-L3)
⑫ 검증(VAL : Validation-L3)
프로세스 관리 프로세스의 정의, 계획, 배치, 구현, 감시, 제어, 평가, 측정, 개선과 관련된 여러 프로젝트에 걸쳐진 활동들을 포함하는 프로세스 영역들로 구성됨.

⑬ 조직 차원의 프로세스 개선(OPFOrganizational Process Focus-L3)
⑭ 조직 차원의 프로세스 정의(OPDOrganizational Process Definition+IPPD-L3)
⑮ 조직 차원의 교육 훈련(OTOrganizational Training-L3)
⑯ 조직 차원의 프로세스 성과 관리(OPPOrganizational Process Performance-L4)
⑰ 조직 차원의 혁신 활동 전개(OIDOrganizational Innovation and Deployment-L5)
지원 제품 개발과 유지보수를 지원하는 활동들을 다루는 내용으로, 프로젝트를 목적으로 한 프로세스 영역과 조직에 적응하는 것을 목적으로 하는 프로세스 영역들로 구성됨.

⑱ 형상 관리(CMConfiguration Management-L2)
⑲ 프로세스/제품 품질 보증(PPQAProcess and Product Quality Assurance-L2)
⑳ 측정 및 분석(MAMeasurement and Analysis-L2)
㉑ 의사결정 분석 및 해결(DARDecision Analysis and Resolution-L3)
㉒ 근본 원인 분석 및 해결(CARCausal Analysis and Resolution-L5)

CMMI는 22개 각각의 프로세스 영역을 만족시키기 위해서 반드시 일반(공통) 목표(GGGeneric Goal)와 세부(구체) 목표(SGSpecific Goal)를 만족시켜야 한다.

■ 일반 목표와 수행 지침
• 목표 : 모든 프로세스 영역에 공통으로 적용되는 목표로서 하나의 프로세스 영역에서 일반적인 목표를 달성했다는 것은 해당 프로세스의 활동들이 조직에 내재화되어 자연스럽게 수행될 수 있음을 의미한다.

• 수행 지침 : 일반적인 목표를 만족시키기 위해 수행해야 하는 활동이 무엇인지를 설명한다.

■ 세부 목표와 수행 지침
• 목표 : 특정 프로세스 영역에만 적용되는 좁은 의미의 구체적인 목표로서 특정 프로세스 영역을 만족시키기 위해서는 반드시 세부적인 목표를 완전히 만족시켜야 한다.

• 수행 지침 : 세부적인 목표를 만족시키기 위해 수행해야 하는 활동이 무엇인지를 설명한다.

각 프로세스 영역의 구성 요소는 3가지 범주로 그룹화되는데, 22개의 프로세스 영역(PA)이 [그림 9-18]과 같은 구조를 따른다. 반드시 달성해야 할 필수 구성 요소에 일반 목표와 세부 목표가 있고, 수행할 것으로 기대되는 예상 구성 요소에는 일반 수행 지침과 세부 수행 지침이 있으며, 정보 제공 측면의 다양한 구성 요소가 있다.

 

 

 

■ 필수 구성 요소
조직이 프로세스 영역을 만족시키기 위해 무엇을 성취해야 하는지를 기술하는 구성 요소이다. 세부 목표와 일반 목표가 이에 해당한다. 목표를 만족시키는 것은 프로세스 영역이 만족되었는지를 결정하기 위한 기반으로 평가 시 사용된다.

■ 예상 구성 요소
조직이 필수 구성 요소를 성취하기 위해 전형적으로 무엇을 구현해야 하는지를 기술하는 구성 요소이다. 이 구성 요소들은 누가 평가를 수행하고 개선을 구현하는지를 가이드한다. 일반 수행 지침과 세부 수행 지침이 이에 해당된다.

■ 정보 제공 구성 요소
필수 구성 요소와 예상 구성 요소에 접근할 수 있도록 돕는 세부 내용을 제공한다. 예제 작업 산출물, 하위 지침, 일반 수행 지침의 정책, 입문 노트, 관련 프로세스 영역 등이 이에 해당된다.

 

 

3. CMMI의 평가 방법

CMMI 평가는 단계적 표현(staged representation) 방법의 성숙 단계(maturity level)와 연속적 표현(continuousrepresentation) 방법의 능력 단계(capability level)로 나누어 이루어진다.

 

4. 단계적 표현 방법의 성숙 단계

성숙 단계는 조직에서 해당 업무를 얼마나 체계적으로 수행하고 있는지를 나타내며, 지표로는 1에서 5까지 5단계로 구분하여 사용하고 있다.

CMMI 성숙 단계는 [표 9-16]과 같이 단계별로 충족되어야 하는 프로세스 영역이 정의되어 있고, [그림 9-21]처럼 계단형으로 구성되어 단계적 표현 방법이라고도 한다. 그리고 각 단계의 프로세스 영역을 모두 만족하면 다음 단계로 넘어간다. 예들 들어, 정의 단계는 관리 단계의 프로세스 영역을 모두 만족하고, 정의 단계의 프로세스 영역까지 모두 만족한다는 의미이다.

표 9-16 성숙도 단계별 프로세스 영역

표 9-16 성숙도 단계별 프로세스 영역
단계 범주 프로세스 영역
1. 초기 단계 프로세스 없음
2. 관리 단계 프로젝트별로 프로세스 존재 • 요구 사항 관리
• 프로젝트 계획 수립
• 프로젝트 감시 및 통제
• 협력 업체 관리
• 측정 및 분석
• 프로세스/제품 품질 보증
• 형상 관리
3. 정의 단계 조직 차원의 프로세스 존재(프로세스 표준화) • 요구 사항 개발
• 기술적 솔루션
• 제품 통합
• 검증, 확인
• 조직 차원의 프로세스 개선
• 조직 차원의 프로세스 정의
• 조직 차원의 교육 훈련
• 통합된 프로젝트 관리
• 위험 관리
• 의사결정 분석 및 해결
4. 정량적 관리 단계 측정 가능한 정량적 프로세스 존재 • 조직 차원의 프로세스 성과 관리
• 정량적 프로젝트 관리
5. 최적화 단계 프로세스를 지속적으로 개선 • 조직 차원의 혁신 활동 전개
• 근본 원인 분석 및 해결
 
 

5. 연속적 표현 방법의 능력 단계

능력 단계에 대한 이해를 돕기 위해 성숙 단계와 같은 예를 사용해보자. 연속적 표현 방법의 능력 단계는 국어(80점), 수학(90점), 영어(70점), 과학(85점), 사회(78점)의 각 과목별 등급을 정하는 것이다. 즉 능력 단계는 프로세스 영역 능력 수준을 측정하는 연속적 표현 모델로, 해당 조직의 각 프로세스 영역에 대한 능력이 얼마나 되는지를 나타낸다.

능력 단계는 프로세스 영역별 능력 수준을 확인함으로써 어떤 영역이 잘되고, 어떤 영역의 능력이 떨어지는지를 살펴 보완할 부분을 파악하기도 한다.

이렇게 프로세스 영역별 능력 수준을 점검하면 어떤 프로세스 영역이 다른 프로세스 영역에 비해 떨어지는지 알 수 있으므로 그 영역만 집중적으로 관리할 수 있다. 또 중요하다고 생각하는 프로세스 영역에 대해서는 그 수준을 높이기 위해 더 많은 자원을 투입하여 능력 수준을 높일 수 있다. 앞에서 든 비유로 설명한다면, 과학 과목이 다른 과목보다 성적이 낮은 경우 과학 과목을 열심히 공부해서 점수를 올리고, 수학이 중요하다고 생각하면 다른 과목보다 수학을 집중적으로 공부하여 수학 실력을 향상시킬 수 있는 것과 같다.

[네이버 지식백과] CMMI 모델 (쉽게 배우는 소프트웨어 공학, 2015. 11. 30., 한빛아카데미(주))

 

 

 

'ITPE > SE' 카테고리의 다른 글

소프트웨어 테스팅 국제표준 - ISO 29119  (0) 2021.02.19
TOC-Thinking Process  (0) 2018.04.06
단위 테스트 및 통합테스트  (0) 2018.02.22

 

 

 

 

출처 : https://blog.naver.com/jhlee1026200/20139655031

 

 

* Thinking Process

 

1. 정의

기업의 의사결정에 있어서 부서,조직간의 복잡하게 얽힌 문제들로 인해서 대립이 생기고 결국 논의자체도 진행되지 못하는 상황을 개선시키위해 근본원인을 찾아 이를 극복할 수 있는 혁신적인 방안을 도출하고 하기와 같은 일련의 과정을 논리적으로 파악해 나감.

-. 무엇을 어떻게 바꿀것인가? (What to do change?) – 흐름을 막는 제약과 핵심문제를 찾음

-. 무엇으로 바꿀것인가? (What to change to?) – 전체 흐름량을 최대화

-. 어떻게 바꿀것인가? (How to cause the change?) – 핵심문제를 해결하고 제약흐름을 최대화

등과 같은 일련의 과정을 논리적으로 파악해 나감.

 

2. 6가지도구

-. CRT : Current Reality Tree (현재 상황나무)

-. Cloud (Core Conflict Cloud : 대립의 중심)

-. EC : Evaporating Cloud (갈등해소를 위한 해결책 주입)

-. FRT : Future Reality Tree (미래 상황나무)

-. PT : PreRequisite Tree (전제 조건나무)

-. TT : Transition Tree (실행 계획 나무)

* CRT (문제점 열거, 인과관계 파악, 문제점 도출) -> UDE : 바람직하지 않은 결과 (CRT에서의 문제점 들) -> Cloud (문제원인, 모순, 대립 해소하기 위한 수단) -> FRT (Cloud의 문제해결책의 검증) -> NB : 부정적 가지 (Cloud의 대립해소 아이디어 실행 시, 새롭게 발생하는 문제) -> PT (어떻게 바꿀것인가?에 대한 수단, 목표달성과정의 장애와 극복을 위한 중간목표 전개) -> TT (PT의 중간목표 달성을 위한 필요행동)

 

 

 

++ 참조자료 : Thinking Process Sample

 

 

 

 

'ITPE > SE' 카테고리의 다른 글

소프트웨어 테스팅 국제표준 - ISO 29119  (0) 2021.02.19
CMMI  (0) 2018.04.12
단위 테스트 및 통합테스트  (0) 2018.02.22

+ Recent posts