현행 시스템 파악
현행 시스템
현행 시스템이 어떤 하위 시스템으로 구성되어 있는지, 제공하는 기능이 무엇인지, 다른 시스템들과 어떤 정보를 주고받는지, 어떤 기술요소를 사용하고 있는지, 사용하고 있는 소프트웨어 및 하드웨어는 무엇인지, 네트워크는 어떻게 구성되어 있는지 등을 파악하는 활동
향후 개발하고자 하는 시스템의 개발범위 및 이행 방향성 설정에 도움을 주는 것이 목적
[ 현행 시스템 파악 절차 ]
1단계 : 현행 시스템의 구성, 기능, 인터페이스 현황을 파악하는 단계
2단계 : 현행 시스템의 아키텍처 및 소프트웨어 구성 현황을 파악하는 단계
3단계 : 현행 시스템의 하드웨어 및 네트워크 구성 현황을 파악하는 단계
현행 시스템 구성/기능 및 인터페이스
[ 현행 시스템 구성 현황 ]
- 정의
: 조직의 주요 업무를 처리하는 기간 업무와 이를 지원하는 지원 업무로 구분하여 기술한 것 - 작성 시 고려사항
: 각 업무에 속하는 단위 업무 정보시스템들의 명칭, 주요 기능들을 명시함으로써 조직 내 존재하는 모든 정보시스템의 현황을 파악하도록 함
[ 기능 현황 ]
- 정의 : 단위 업무 시스템이 현재 제공하고 있는 기능을 기술한 것
- 작성 시 고려사항 : 단위 업무 시스템이 현재 제공하고 있는 기능을 기술한 것
[ 인터페이스 현황 ]
- 정의
: 단위 업무 시스템이 다른 단위 업무 시스템과 주고받는 데이터의 종류, 데이터 형식, 프로토콜, 연계 유형, 주기 등을 명시한 것 - 작성 시 고려사항
: 중요한 고려 사항으로는 어떤 형식(format)으로 데이터를 주고받는지(XML, 고정 포맷, 가변 포맷 등), 어떤 통신규약(TCP/IP, X.25 등)을 사용하고 있고, 연계 유형(EAI, FEP 등)은 무엇인지 등이 있음
현행 시스템 아키텍처 및 소프트웨어
[ 현행 시스템 아키텍처 구성도 ]
- 정의
: 기간 업무를 수행하기 위하여 계층별로 어떠한 기술 요소들을 사용하고 있는지 최상위 수준에서 그림으로 표현한 것 - 작성 시 고려사항
: 단위 업무 시스템별로 아키텍처가 다른 경우에는 가장 핵심이 되는 기간 업무 처리 시스템을 기준으로 함
[ 소프트웨어 구성도 ]
- 정의
: 단위 시스템의 업무 처리를 위해 설치되어 있는 소프트웨어들의 제품명, 용도, 라이선스 적용 방식, 라이선스 수를 명시한 것 - 작성 시 고려 사항
: 시스템 구축 시 인프라 구축 비용에서 하드웨어 비용뿐만 아니라 소프트웨어 비용이 적지 않기 때문에, 상용 소프트웨어의 경우에는 라이선스 적용 방식의 기준(사이트, 서버, 프로세서, 코어(core), 사용자 수 등)과 보유한 라이선스 수량 파악이 중요함
하드웨어 및 네트워크
[ 하드웨어 구성도 ]
- 정의
: 단위 업무 시스템들이 어디에 위치하고 있는 서버에서 운용되고 있는지 서버의 주요 사양(CPU 처리 속도, 메모리 크기, 하드디스크의 용량 등)과 수량, 이중화가 적용되어 있는지 여부를 명시한 것 - 작성 시 고려사항
: 이중화는 기간 업무의 서비스 시간, 장애 대응 정책에 따라 필요성 여부가 결정되며, 현행 시스템에서 이중화가 적용된 경우에는 목표 시스템에서도 이중화가 필요한 경우가 대부분이며, 이에 따라 인프라 구축 기술 난이도 및 비용 증가 가능성이 존재함
[ 네트워크 구성도 ]
- 정의 : 업무 처리 시스템들이 어떠한 네트워크 구성을 가지고 있는지 그림으로 표현한 것
- 작성 시 고려 사항
: 네트워크 구성도의 작성을 통해 서버의 위치, 서버 간의 네트워크 연결 방식을 파악할 수 있음
네트워크 조직 내 서버들의 물리적인 위치 관계 파악, 조직 내 보안 취약성 분석 및 대응, 네트워크 장애 발생 추적 및 대응 등의 다양한 용도로 활용될 수 있음
개발 기술 환경 정의
개발 기술 환경
개발 기술 환경을 정의할 때 고려할 사항을 위와 같이 운영체제, DBMS, 미들웨어, 오픈 소스 순으로 살펴봄
[ 운영체제 주요 특징 및 고려 사항 ]
운영체제(OS: Operating System)?
하드웨어와 소프트웨어 리소스를 관리하고 컴퓨터 프로그램을 위한 공통 서비스를 제공하는 소프트웨어를 의미
- 자바 가상 머신(JVM: Java Virtual Machine) : 다양한 하드웨어 및 운영체제에서 자바 (Java) 언어로 작성된 애플리케이션을 수행하기 위한 사양(JVM Specification)의 구현체 (Implementation)를 의미
[ DBMS 주요 특징 및 고려 사항 ]
DBMS : 사용자, 다른 애플리케이션, 데이터베이스와 상호 작용하여 데이터를 저장하고 분석하기 위한 컴퓨터 소프트웨어 애플리케이션으로, 데이터베이스 생성, 조회, 변경 등의 관리가 주요 기능임
[ 미들웨어의 주요 특징 및 고려 사항 ]
미들웨어 : 운영체제와 소프트웨어 애를리케이션 사이에 위치하는 미들웨어(Middleware)는 소프트웨어 애플리케이션에게 운영체제가 제공하는 서비스를 추가 및 확장하여 제공하는 컴퓨터 소프트웨어를 의미
- 미들웨어 중 웹 애플리케이션 서버(WAS; Web Application Server)에 대해 설명
WAS ? 동적인 웹 사이트, 웹 애플리케이션, 웹 서비스의 개발을 지원하기 위해 설계된 소프트웨어로서 데이터 접근, 세션 관리, 트랜잭션 관리 등을 위한 라이브러리를 제공하고 있음
[ 오픈 소스 사용에 따른 고려 사항 ]
오픈 소스(Open Source)? 소스 코드를 공개해 누구나 특별한 제한 없이 그 코드를 보고 사용할 수 있는 오픈 소스 라이선스를 만족하는 소프트웨어
※ 게시물에 사용된 개념도와 도표 등의 출처 : 교육부의 NCS 학습모듈 자료