자격증/정보처리기사

1. 요구사항 확인 01 1.현행시스템분석

NeatCoder 2020. 7. 18. 12:26

1. 현행 시스템 파악

1) 현행 시스템 파악 정의

현행 시스템 파악이란?

  • 하위시스템 구성 요소, 제공 기능, 연계요소 파악
  • 적용 기술요소, 소프트웨어, 하드웨어, 네트워크 구성요소 파악

현행 시스템 파악 목적

  • 향후 개발 시스템 개발 범위
  • 이행 방향 설정에 도움

2) 현행 시스템 파악 절차

  1. 1단계 : 구성/기능/인터페이스 파악
  2. 2단계 : 아키텍처 및 소프트웨어 구성 파악
  3. 3단계 : 하드웨어 및 네트워크 구성 파악

1단계 : 구성/기능/인터페이스 파악

현행 시스템 구성 현황 → 기능 현황 → 인터페이스 기능 현황

  • 기간업무와 지원업무로 구분하여 파악
  • 단위 업무 정보시스템의 명칭, 주요 기능을 명시
  • 모든 정보 시스템의 현황 파악 필요

기능 현황

  • 단위 업무 시스템이 현재 제공하고 있는 기능을 기술
  • 기능들을 주요기능, 하부기능 으로 구분하여 계층형으로 표시

인터페이스 현황

  • 단위 업무 시스템과 주고 받는 데이터 종류, 데이터 형식, 프로토콜 등을 명시
  • Format, 통신규약, 연계 유형(EAI, FEP)등을 고려하여 작성

2단계 : 아키텍처 및 소프트웨어 구성 파악

현행 시스템 아키텍처 구성도

  • 기간 업무 수행 기술요소를 최상위 수준에서 그림으로 표현
  • 단위 업무 시스템별 아키텍처가 상이할 경우
    • 가장 핵심이 되는 기간업무를 기준으로 작성

소프트웨어 구성도

  • 업무처리를 위해 설치된 소프트웨어 제품명, 용도, 라이선스 적용 방식 라이선스 수 등을 명시
  • 상용 소프트웨어 경우에는 라이선스의 적용 방식의 기준과 보유한 라이선스 수량 파악이 중요

3단계 : 하드웨어 및 네트워크 구성 파악

하드웨어 구성도

  • 서버의 주요 사양, 수량, 이중화 등의 적용 여부 명시

하드웨어 구성도 작성시 고려사항

  • 기간 업무의 서비스 기간, 장애 대응 정책에 따라 이중화 필요성 여부가 결정
  • 현행 시스템에서 이중화가 적용된 경우에는 목표시스템에서도 이중화가 필요한 경우가 대부분이며, 이에 따라 인프라가 구축 기술 난이도 및 비용증가 가능성이 존재

네트워크 구성도

  • 업무 처리 시스템들의 네트워크 구성 현황 표현
  • 고려사항 : 네트워크 구성도의 작성을 통해 서버의 위치, 서버 간의 네트워크 연결 방식을 파악
  • 조직 내의 서버들의 물리적인 위치 관계 파악, 조직 내 보안 취약성 분석 및 대응, 네트워크 장애 발생 추적 및 대응 등의 다양한 용도로 활용

2. 개발 기술 환경 정의

1) 개발기술 환경 정의 요소

"개발 기술 환경 정의할 때의 고려사항"

OS → DBMS → Middle-ware → Open Source

2) 운영체제 주요 특징 및 고려사항

운영체제(OS, Operating System) 정의

  • 하드웨어와 소프트웨어 리소스를 관리하고 컴퓨터프로그램을 위한 공통 서비스를 제공하는 소프트웨어

운영체제(OS)의 특징 및 종류

  • Windows, UNIX, Linux, iOS, Android
  • 구축 시스템의 용도에 최적화된 운영체제를 선택하여 적용

Windows - 중소 규모 서버, 개인용 PC, Embedded System

UNIX - 대용량 처리, 안정성이 요구되는 서버

Linux - 중대 규모 서버

iOS, Android - 스마트폰, 태블릿

정보시스템 구축시 OS 고려사항

  • 신뢰도, 성능, 기술 지원, 주변 기기, 구축 비용

구축비용

  • 리눅스 기반 시스템 : 하드웨어 및 소프트웨어 소유 비용이 가장 적음
  • 윈도우 기반 시스템 : 유지 및 관리비용 측면에서 강점

신뢰도

  • 유닉스 기반 시스템 : 안정적이고 신뢰적임

성능

  • 32bit OS : 4GB 메모리까지 엑세스
  • 64bit OS : 4GB 이상 메모리 엑세스 가능

3)DBMS 주요 특징 및 고려사항

DBMS 정의

  • 사용자, 다른 애플리케이션, 데이터베이스와 상호 작용하여 데이터를 저장하고 분석하기 위한 컴퓨터 소프트웨어
  • 주요 기능: 데이터베이스 생성, 조회, 변경 등

DBMS의 종류

  • Oracle, DB2, Microsoft SQL Server, MySQL, MongoDB 등
  • 각각의 특장점에 따라 비용적인 측면, 사용용도 등을 고려하여 선택
    • 대규모 데이터의 안정적 처리 : Oracle, DB2
    • 오픈소스: MySQL, MongoDB 사용 확대

DBMS 종류와 특징

대규모 → Oracle, DB2

오픈소스 → MySQL, MongoDB

정보시스템 구축시 DBMS 고려사항

  • 가용성, 성능, 기술지원, 상호호환성, 구축 비용

4) 미들웨어 주요 특징 및 고려사항

미들웨어의 정의

  • 운영체제(OS)와 SW App사이에 위치, SW App에게 운영체제가 제공하는 서비스를 추가 및 확장하여 제공하는 컴퓨터 소프트웨어

WAS 정의

  • 동적인 웹 사이트, 웹 애플리케이션, 웹 서비스의 개발을 지원하기 위하여 설계된 소프트웨어
  • 데이터 접근, 세션 관리, 트랜잭션 관리 등을 위한 라이브러리 제공

WAS 종류와 특징

  • GlassFish, JBoss, Jetty, JEUS, Resin, Weblogic, Web Sphere

정보시스템 구축시 WAS 고려사항

  • 가용성, 성능, 기술 지원, 구축 비용

5) 오픈소스 사용에 따른 고려사항

오픈소스의 정의

  • 소스코드를 공개해 누구나 특별한 제한 없이 그 코드를 보고 사용할 수 있는 오픈 소스 소프트웨어(OSS)
  • 자유로운 사용의 강점
  • 시스템 구축시 적용 여부를 신중하게 결정