[IT] 프로세스 모델링 이해 02 - 프로세스 모델링 개요, 절차
포스트
취소

[IT] 프로세스 모델링 이해 02 - 프로세스 모델링 개요, 절차

본 포스팅은 “프로세스 모델링 이해” 온라인 강의를 바탕으로 공부한 내용을 정리한 것입니다.

image

  1. SW 개발 방법론 정의 및 필요성
    • 개발 방법론의 정의
    • 개발 방법론의 필요성
  2. SW 개발 방법론 발전
    • SW 개발 방법론의 발전
    • 프로젝트에서의 적용

1. SW 개발 방법론 정의 및 필요성

개발 방법론의 정의

시스템을 개발하기 위한 활동 절차, 도구, 산출물, 기법 등을 체계적으로 정리한 것

개발 방법론의 필요성

  • 품질보증의 기준 제공
  • 프로젝트 계획 수립의 효율적인 길잡이 역할
  • 위험 요소 분석을 위한 가이드
  • 표준화를 통한 기술 축적/진화
  • 의사소통의 기반
따라서
표준화, 모듈화, BP (Best Practice), 재활용을 통한 개발생산성 향상
정형화된 절차, 표준 용어를 이용한 효과적인 의사소통 수단

2. SW 개발 방법론 발전

SW 개발 방법론의 발전

1. 구조적 방법론

SW개발 방법론도 프로젝트에 적용되면서 지속적으로 변화해 왔다.

구조적 방법론
기능 분할을 활용한 업무 기능을 파악하여, 프로세스 중심으로 분석/설계하는 방법론.

대표 산출물은 Data Flow Diagram, Structure Chart

2. 정보공학 방법론

정보공학 방법론
기업 레벨의 프로세스와 데이터를 분석/설계하는 기법.
구조적 방법과의 차이점은 데이터 중심의 접근법을 통해 분석/설계를 진행하는 점.

대표 산출물은 업무기능분해도, ERD

3. 객체지향 방법론

객체지향 방법론
프로세스와 데이터를 포함하는 object단위의 분석/설계를 진행.

Object (객체) : 속성과 메소드가 결한된 형태

주요산출물은 Usecase Diagram, Sequence Diagram

4. CBD 방법론

CBD 방법론 (Component Based Development)
컴포넌트 기반의 분석/설계를 진행하며 SW 유지보수성 및 높은 재사용성.

컴포넌트 : 특정기능을 수행하는 모듈로, 시스템에 종속적이지 않아 재사용 가능하고 교체가 가능한 단위.

주요산출물은 컴포넌트 명세서, Interface Diagram

5. SOA (Service Oriented Architecture) 방법론

SOA
외부 제공 및 재사용 가능한 업무 프로세스 기반 서비스 단위의 분석/설계.

프로세스 중심에서 프로세스와 데이터 중심으로,

프로세스와 데이터를 포함하는 객체단위에서 컴포넌트 단위, 외부 제공 가능한 서비스 단위까지 발전해왔다.

프로젝트에서의 적용

1. Monolithic AApplication

  • 초기 SW개발시의 모습. 하나의 Application 영역과 DB 영역을 관리하는 형태.
  • 유사한 성격의 logic이 여기저기 흩어져 있고, DB와의 연결관계도 스파게티처럼 연결됨.
  • logic의 변경/삭제 발생시 범위 파악과 수정이 어렵고 전반적으로 관리가 어려움.
  • 하나의 프로세스로 운영되다 보니 서비스 반영을 위해서 한번에 빌드/배포해야 하는 어려움.
  • 서비스 on/off시 모든 서비스를 이용할 수 없는 일괄장애 상태의 문제점 발생.

2. Internally Componentized Application

  • 관리의 규모와 SW복잡성이 증가하며 Monolithic Application에서 진화.
  • 모듈화, CBD, SOA 등의 방법으로 거대한 하나의 Application의 논리적 분리 진행.
  • 유사한 연결성이 높은 logic들 그룹화하여 관리.
  • 공공, 금융 등의 아웃소싱 프로젝트 대부분에서 해당 구조 채택.
  • 논리적 분리의 한계점 발생, 스파게티 logic 여전히 존재하여 서비스 장애와 빌드/배포에서 문제 발생.

3. Microservice Architecture (MSA)

  • MSA는 서비스별로 application과 DB를 분리, 각 프로세스로 실행되는 형태.
  • 서비스 분할시에는 업무중심으로 분할됨.
  • MSA는 물리적 분리를 반영, 장애 발생시 다른 서비스들의 중단없이 제공 가능, 빌드/배포 용이.

4. 최적의 방법론은?

가장 좋은 방법론이란 타 사이트가 했다, 최신이라 적용했다가 아닌,

관리의 규모와 복잡성에 따라, 현행시스템의 문제점과 해결의 관점에 따라,

각각의 상황에 맞는 방법론을 선택 적용할 것.


참고

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.