본문 바로가기
IT의 모든것/소프트웨어공학

[소프트웨어공학] 정보공학방법론(Information Engineering Methodology)

by coldbrew_ 2023. 5. 6.

정보공학방법론(Information Engineering Methodology)의 개요

가. 정보공학방법론(Information Engineering Methodology) 정의

-     기업에서 사용하는 업무 시스템 구축에 목표를 두어 기업이 전략적 경쟁우위를 확보할 수 있도록 데이터 중심 분석과 설계 관점의 개발 방법론

나.  정보공학방법론 특징

구분 설명
기업중심 - 기업의 전략경영을 지원하기 위해 SIS(Strategic Information System)에 초점
- 적용 대상이 기업의 비즈니스 시스템
ISP 중심 - 계획 단계에 수행되는 활동으로 경영층의 요구와 견해를 시스템에 반영
- 기업의 경쟁 우위를 달성하기 위한 정보화 전략 계획이 중요한 역할 수행
데이터 중심 - 자주 변동되는 업무 프로세스와 달리, 데이터는 잘 변하지 않기 때문에 시스템 유지보수를 줄이고, 잦은 변화에 적극 대응하고자 하는 접근
- 프로세스와 데이터를 분리하여 분석 및 설계를 진행하되 상관분석을 통해 상호검증(CRUD 매트릭스)
분할과 정복 - 프로젝트 관리 가능 단위로 문제의 영역을 세분화해가면서 완성해가는 방식으로 Top-Down 방식적용.
공학적 접근 - Case Tool, 소스코드 자동 생성, 모듈화, 다이어그램 사용
- 분석, 설계 등 초기 단계에서 철저하게 작업 후 후속 단계에서는 소스코드를 자동으로 생성하는 방식을 활용.
사용자 참여 - 초기 단계부터 사용자의 적극적 참여와 피드백 반영

정보공학 방법론 단계 구성도 및 구성요소

가. 정보공학방법론 단계 구성도

정보공학방법론 단계

나. 정보공학 방법론 단계별 구성요소

단계 설명
정보전략계획 (ISP) - Information Strategy Planning
- 경영전략에 근거한 정보시스템 구현 전략 수립
- 정보 요구와 우선순위에 맞는 시스템 개발계획 수립
업무영역분석 (BAA) - Business Area Analysis
- 시스템구현을 위한 업무영역 이해 및 데이터 수집
- 데이터모델링(ERD), 프로세스모델링(DFD, PHD, PDD)
업무시스템설계 (BSD) - Business System Design
- 선택된 프로세스들이 어떻게 구현할 것인지 설계
- 업무절차정의, Presentation 설계, 분산 설계
시스템구축 (SC) - System Construction
- 응용 프로그램 개발

정보공학(Information Engineering) 방법론 단계별 설명

가. 정보전략계획(ISP : Information Strategy Planning)  단계
- 전사적인 기업모형(청사진)을 설계하는 단계 

설게 단계

단계 수행내용
환경분석(경영환경, 정보환경) 기업의 내.외부 환경분석 및 기업비전,전략 도출
현행 업무 프로세스 분석 문제점 및 개선방안 도출
현 시스템 분석, 평가 현 시스템 문제점 도출 평가 후 개선방안
아키텍처 개발 후속작업 지원을 위해 프로세스,데이터 모델 개발
전략계획 프로젝트 정의 및 우선순위 부여

나. 정보전략계획(ISP) 산출물

산출물 산출물내용
경영전략 분석 기업의 경영전략과 IT전략을 연계하기 위해 경영전략 분석
정보체계도 조직에서 활용되고 있는 데이터와 업무활동간의 관계를 나타내는 구조도
업무시스템 체계도 정보체계도에서 파악된 데이터와 업무/기능을 관련성과 인접성으로 그룹화한 구조도로 시스템이 지원하는 업무의 기능과 형태를 표현
현행 업무 프로세스, 조직 분석
기술체계도 사용자가 요구하는 업무와 데이터를 정보시스템으로 구현하는데 필요한 정보기술의 요건을 파악하여 최적의 방법으로 구축할 수 있는 시스템 조감도
정보관리조직체계도 정보관리 조직의 구성원들이 정보시스템의 구축에 있어서 어떠한 역할과 기능을 수행해야 할 것인지를 표현
정보시스템 전략계획 경영전략과 연계되는 정보화 통합 프로젝트에 대한 전략 계획 수립

 

다. 업무영역분석(BAA: Business Area Analysis) 
-  정보전략계획(ISP) 단계 산출물인 정보체계도를 통해 상세 업무 논리를 규명하는 과정을 업무 영역모델로 발전시키는 단계

산출물 설명
데이터 모델 다이어그램 - ISP과정에서 만들어진 ERD를 보다 상세하게 확장한 다이어그램
프로세스 분할 다이어그램 - 업무영역 내의 기능들을 프로세스들로 분할하여 Tree구조로 만듦
프로세스 의존 다이어그램 - 프로세스간의 Dependency 관계를 나타내는 다이어그램
프로세스/데이터 매트릭스 - 프로세스와 데이터 간에 일어나는 행위를 매트릭스로 가시화
- CRUD 매트릭스를 이용하여 프로세스, 데이터 모델 검증 가능

라. 업무 시스템 설계(BSD: Business System Design) 
-  데이터의 상세 설계 및 데이터 처리 시스템과 데이터의 직접 연결, 하드웨어와 소프트웨어의 관계 등을 나타내어 어떻게 작업이 수행되는지 설계하는 단계

산출물 설명
엔티티-관계 다이어그램
(Entity-Relation Diagram)
정보전략계획(ISP)에서부터 시스템 구축까지 개발 전 과정에 걸쳐 사용하는 다이어그램으로 추상화된 데이터들 간의 함수적 관계 표현
분할 다이어그램
(Decomposition Diagram)
정보공학 피라미드의 최상위 단계 즉 전략수립단계에서부터 하위 단계로 진행해 나가면서 나타낸 기능 분할도, 프로세스 분할도, 프로시저 분할도
Top down 진행
액션 다이어그램
(Action Diagram)
CASE Tool을 사용해 분할 다이어그램을 액션 다이어그램으로 변환하며 향후 실행 가능한 코드로 전환
의존 다이어그램
(Dependency Diagram)
프로세스 간의 우선순위를 나타낼 수 없는 분할 다이어그램의 약점을 보완한 다이어그램으로 프로세스 상호간의 연관을 나타냄
데이터 흐름도
(Data Flow Diagram)
프로시저 의존도의 특별한 형태로 각 프로시저에서 사용되는 입출력 데이터의 흐름을 각 데이터의 입출력과 함께 그림으로 나타낸 것
결정트리(Decision Tree) 프로그램 로직의 분기점과 분기 조건, 그 결과를 기술하기 위해 사용
대화구조(Dialogue Structure)의 표현 - 계층적인 메뉴 : 컴퓨터와 사용자간의 대화 방식을 기술하기 위해 액션 다이어그램을 사용
- 수평적인 대화 : 팝업 윈도우(Pop-up Window)를 나타내기 위해서 데이터 흐름 다이어그램(Data Flow Diagram)를 사용
자료 구조 다이어그램
(Data Structure Diagram)
BAA(업무영역분석) 단계에서 만들어진 데이터 모델을 해당 DBMS에 맞도록 Diagram을 생성(. RDB, HDB )

. 기술설계 및 구축단계(SC : System Construction)

- 실제적인 데이터베이스와 선정된 하드웨어, 소프트웨어 도구를 이용하여 응용 프로그램 개발

단계 특징
데이터 사용 분석
(Data Usage Analysis)
시스템 부하를 최적으로 분산하기 위한 기초 정보 분석
(트랜잭션의 발생량을 토대로 시스템 부하를 최적으로 분산하기 위해 응용 프로그램 별 발생량을 액션 다이어그램에 주석으로 표시하거나 ERD에서 각 경로에 대한 관계 비를 숫자로 표현)
물리적 데이터베이스 설계 데이터베이스 설계자가 시스템의 비용, 성능, 응답시간 등을 고려하여 복잡한 시스템이 서로 균형을 이루면서 동작할 수 있도록 최적의 해를 찾아 설계
분산 분석
(Distribution Analysis)
데이터와 프로세스를 여러 곳의 서버에 분산시켜 부하를 평준화시키기 위한 방법으로 지역, 프로세스, 데이터를 매트릭스로 구성하여 분석

 

정보공학 방법론의 문제점 및 구조적 방법론과 비교

가. 정보공학 방법론의 문제점
- 구조적 방법의 SDLC인 폭포수 모델을 그대로 사용
- CASE 도구의 이용 및 활용의 어려움
- 중소 규모의 프로젝트 적용이 어렵고 복잡한 논리, 프로젝트 관리가 어려움
나. 구조적 방법론과 정보공학 방법론과의 비교

단계 구조적 정보공학
ISP 없음 정보체계, 데이터 모델, 업무 기능 모델
통합시스템 지향, 전략적 활동 모색
업무분석 기능 분할, Data flow 분석
프로세스 명세화(프로세스 중심)
데이터 모델, 기능 분할, 의존성 분석
프로세스 명세화 (데이터 중심)
시스템 설계 프로세스 모델, 사용자 모델
인터페이스 설계, DB설계, 모듈 설계
이벤트 설계, 패키징 대화 설계
기술 설계, DB설계, 데이터 구조 설계
구축 절차적 프로그래밍, 코드 작성 코드 생성, CASE Tool의 활용
유지보수 코드 작성 후 다이어그램 수정 다이어그램 수정 후 코드 생성
장점 이해가 용이하고 프로세스 중심의 개발이라 요구사항이 명확한 경우 효율적 명확한 데이터 관점의 정규화 산출물이 단계별로 명확하여 대규모 프로젝트에 적합
단점 비즈니스와 같이 거시적 과점 부족
데이터와 프로세스가 별도
대규모 시스템 프로젝트에 부적합
전형적인 아키텍처 고려 못함
웹 환경에 적용 어려움
분산 환경, 컴포넌트 실행 환경 지원 어려움

 

댓글