정보공학 개발방법론
정보공학 개발방법론이란 업무에서 정보의 효율적 사용을 가능하게 하는 아키텍처를 정의하기 위해 사용되는 시스템 공학 접근 방식이다. [1]
목차
개요[편집]
기업 전체, 또는 기업의 주요부분을 계획, 분석, 설계 및 구축에 정형화된 기법들을 상호 연관성 있게 통합, 적용하는 데이터 중심 방법론으로 정보시스템 개발을 공학적으로 접근하기 위해 체계화시킨 개발 방법론(Information Engineering) 이다. [2]
역사[편집]
1980년대에 들어 정보기술 환경에서 가장 두드러진 변화는 PC의 급격한 확산 및 관계형 데이터베이스의 출현이다. 이와 같은 변화는 개인이 컴퓨팅 환경에 손쉽게 접할 수 있고 데이터 처리가 용이하다는 점에서 기존의 메인프레임 중심의 컴퓨팅 환경에서 클라이언트/서버 환경 및 사용자 중심(End-User) 환경으로의 변화를 수반하게 되었다. 이와 함께 정보시스템에 대한 요구 또한 기존의 단위업무 중심의 정보시스템에서 전사적인 규모의 통합시스템에 대한 요구로 변화하게 되었다. 1980년대 중반에 개발된 정보공학(Information Engineering)은 기존의 구조적 방법의 원리를 모두 수용하고 있고 기업의 전반적인 관점이 강화되면서 전사적인 규모의 통합시스템 구축을 위한 개발방법론이 되었다.[1]
특징[편집]
정보공학 방법론 특징 특징 내용 기업중심 * 적용대상이 기업의 비즈니스 시스템으로 과거의 단순한 S/W 개발이 아니다.
* 기업의 전략경영을 지원하기 위해 SIS(Strategicinformation System)에 초점을 맞춘다.ISP 중심 * 정보공학 4단계 중 가장 처음에 시작하는 단계로 경영층의 요구와 견해를 시스템에 반영한다.
* 기업의 경쟁우위를 달성하기 위해 ISP가 중요한 역할을 한다.데이터 중심 * 수시로 변하는 업무 프로세스와 달리 데이터는 잘 변하지 않으므로
시스템 유지보수를 줄이고 잦은 변화에 적극 대응하고자 하는 개념이다.
* 프로세스와 데이터를 분리하여 분석 및 설계를 진행하되 상관분석을 통해 상호 검증하여 약점을 해결한다.분할과 정복 * 문제의 영역을 세분화해가면서 완성해가는 방식으로 Top-Down 방식을 적용한다.
* 문제영역 → 업무영역(BA) → 업무시스템(BS) → 구현시스템(IS)공학적 접근 * Case Tool, 소스코드 자동 생성, 모듈화, 다이어그램 활용을 통해 초기단계를 중요하게 여기는 패러다임 형태이다. 사용자 참여 * 초기 단계부터 사용자의 적극적 참여와 피드백 반영을 통해 사용자의 불만을 최소화한다.
장·단점[편집]
장점 * 경쟁우위 확보의 전략적 기회 식별 및 방안을 제공한다.
* 일관성 있고 통일된 정보시스템 구축 가능하다.
* 시스템의 장기적인 진화, 발전을 허용한다.
* 데이터 중심으로 업무절차 및 환경변화에 유연하다.단점 * 정보공학의 효과를 위해 장기간 필요하다.
* 소규모의 자동화 요구 사업영역에서는 시간이 오래 걸린다.
* 특정 사업영역으로부터 독립된 시스템 개발에는 부적합하다.
구성요소[편집]
- 정보전략계획 (ISP)
- 경영전략, 관련조직, 업무자료 거시적 분석, 현행시스템 평가
- 업무영역 분석 (BAA)
- 데이터 모델링 : ERD
- 프로세스 모델링 : DFD
- 업무시스템 설계 (BSD)
- 업무절차 정의, Presentation 설계 , 분산설계
- 시스템 구축 (SC)
- 응용 프로그램 작성 [2]
정보전략계획 ISP[편집]
전사적인 기업모형(청사진)을 설계하는 단계 [2]
단계 특징 경영전략 분석 * 기업의 내·외부 환경분석 및 기업비전, 전략 도출을 나타낸다. 현행 업무 프로세스 분석 * 문제점 및 개선방안 도출 현 시스템 분석, 평가 * 현 시스템 문제점 도출 평가 후 개선방안이 필요하다. 아키텍처 개발 * 후속작업 지원을 위한 프로세스, 데이터 모델을 개발한다. 전략 계획 * 프로젝트 정의 및 우선순위를 부여한다.
업무영역 분석 BAA[편집]
ISP(정보전략계획) 과정에서 수집된 정보를 이용하여 세부적으로 확장 [2]
산출물 내용 데이터 모델 다이어그램 * ISP 과정에서 만들어진 ERD를 상세하게 확장한 다이어그램이다. 프로세스 분할 다이어그램 * 업무영역내의 기능들을 프로세스들로 분할하여 트리구조의 분할도를 만든다. 프로세스 의존 다이어그램 * 서로간의 다른 프로세스들간의 의존관계를 나타낸다. 프로세스/데이터 매트릭스 * 프로세스와 데이터간의 일어나는 행위를 매트릭스로 보여준다. 전략 계획 * 프로젝트 정의 및 우선순위 부여한다.
업무시스템 설계 BSD[편집]
비즈니스 시스템 설계를 수행한다. [2]
구분 내용 엔티티-관계 다이어그램 * ISP(정보전략계획)에서부터 시스템 구축까지 개발 전 과정에 걸쳐 사용하는 다이어그램으로 추상화된 데이터를 간의 함수적 관계를 그림으로 나타낸다. 분할 다이어그램 * 정보공학 피라미드의 최상위 단계 즉, 전략수립 단계에서부터 하위단계로 진행해 나가면서 나타낸 기능 분할도, 프로세스 분할도, 프로시저 분할도 등 액션 다이어그램 * Case Tool을 사용해 분할 다이어그램을 액션다이어그램으로 변환하며 향후 실행 가능한 코드로 전환된다. 의존 다이어그램 * 프로세스간의 우선순위를 나타낼 수 없는 분할 다이어그램의 약점을 보완한 다이어그램으로 프로세스 상호간의 연관을 나타낸다. 데이터 흐름도 * 프로시저 의존도의 특별한 형태로 각 프로시저에서 사용되는 입출력 데이터의 흐름을 각 데이터의 입출력과 함께 그림으로 나타낸 것이다. 대화구조의 표현 * 계층적인 메뉴 : 컴퓨터와 사용자간의 대화방식을 기술하기 위해 액션다이어그램을 사용
* 수평적인 대화 : 팝업 윈도우를 나타내기 위해서 수평적인 대화흐름도(Dialog Flow Diagram)를 사용한다.자료구조 다이어그램 * BAA(업무영역 분석) 단계에서 만들어진 데이터 모델을 해당 DBMS에 맞도록 Diagram을 생성한다.(예.RDB, HDB 등)
시스템 구축 SC[편집]
구분 내용 데이터 사용 분석 * 트렌잭션의 발생량을 토대로 부하를 최적 분산하기 위해 응용 프로그램별 발생량을 액션 다이어그램에 주석으로 표시하거나 ERD에서 각 경로에 대한 관계비를 숫자로 표현한다. 물리적 데이터베이스 설계 * 데이터베이스 설계자가 시스템의 비용 , 성능 , 응답시간 등을 고려하여 복잡한 시스템이 서로 균형을 이루면서 동작할 수 있도록 최적의 값를 찾아 설계한다. 액션 다이어그램 * Case Tool을 사용해 분할 다이어그램을 액션다이어그램으로 변환하며 향후 실행 가능한 코드로 전환된다. 분산 분석 * 데이터와 프로세스를 여러곳의 서버에 분산시켜 부하를 평준화 시키기 위한 방법으로 지역 , 프로세스 데이터를 매트릭스로 구성하여 분석한다.
정보공학 방법론의 한계점[편집]
한계점 내용 정보공학 방법론의 단계 구성도 * 생명주기에 따라 이전 단계의 완성을 토대로 다음 단계를 진행한다.
* 폭포수 모형 의 특성처럼 잘못된 작업은 거스르기가 어려운 경직된 구조복잡한 논리체계와 산출물의 연계(CASE Tool의 사용을 강조) * 현실적으로 복잡하고 종류가 많은 산출물과 절차를 따르기 어렵다.
* 값비싼 Tool 도입과 까다로운 사용법을 숙지해야 한다.
각주[편집]
같이 보기[편집]