반응형

소프트웨어 개발환경 분석

현행 시스템 파악

1) 개요

  • 새로 개발하려는 시스템의 개발 범위를 정확히 판단하기 위해 시스템의 구성과 구성 요소의 기능을 정확히 파악하고 있어야 한다.

2) 시스템 구성 파악

  • 조직 내 모든 정보시스템의 현황을 파악하여 명칭과 주요 기능들을 명시하는 것
  • 주요 업무를 담당하는 기간 업무와 기간 업무를 지원하는 지원 업무로 구분

3) 시스템 기능 파악

  • 파악된 단위 업무 시스템의 기능을 세분화하여 파악하고 명시하는 것
  • 주요 업무 기능과 주요 기능의 하부 기능, 하부 기능의 세부 기능 등으로 계층화하여 표시

4) 시스템 인터페이스 파악

  • 단위 업무 시스템 간에 주고받게 되는 데이터에 대한 속성을 파악
  • 데이터의 종류, 형식, 프로토콜(Protocol), 전송 주기 등을 파악

5) 시스템 아키텍처(Architecture) 구성 파악

  • 기간 업무 시스템에서 작동하는 기술요소에 대한 구성, 동작 원리를 파악
  • 가장 핵심이 되는 업무 시스템을 바탕으로 아키텍처 구성도를 작성

6) 소프트웨어 구성 파악

  • 업무 시스템별 업무 처리를 위해 설치되어 있는 소프트웨어의 제원을 파악
  • 소프트웨어의 제품명, 용도, 라이선스 방식과 개수 등을 명시
  • 소프트웨어 구성 파악 단계에서는 라이선스 비용이 가장 큰 비중을 차지

7) 하드웨어 구성 파악

  • 시스템이 운용되는 서버의 주요 사양과 이중화(Duplexing) 적용 여부를 파악
  • 시스템에 이중화가 적용되면 시스템 구축 난이도가 높아짐에 따라 비용이 증가

8) 네트워크 구성 파악 

  • 업무 시스템들의 네트워크 구성을 파악
  • 서버의 위치와 서버 간의 네트워크 연결 방식을 구성도로 작성하여 물리적인 위치를 파악
  • 보안 취약성을 미리 분석하여 적절한 대응을 할 수 있고, 장애 발생 원인을 찾아 복구하는 용도로도 활용

개발 기술 환경 파악

1) 운영체제

① 운영체제의 개념

  • 컴퓨터 시스템의 자원들을 효율적으로 관리하는 소프트웨어
  • 사용자가 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공

② 고려사항

  • 가용성 : 소프트웨어가 요구사항에 따라 운영되는 능력
  • 성능 : 대규모, 대용량 데이터에 대한 처리 능력
  • 기술 지원 : 소프트웨어의 기술 지원과 오픈 소스 적용 여부
  • 주변 기기 : 시스템에 설치 가능한 주변 기기의 정보
  • 구축 비용 : 라이선스 비용 및 유지관리 비용

2) DBMS(Database Management System)

① DBMS의 개념

  • 사용자의 요구에 따라 데이터베이스 정보를 관리해 주는 소프트웨어
  • 기존의 파일 시스템의 단점인 종속성과 중복성의 문제를 해결
  • 모든 관련 응용 프로그램들이 데이터베이스를 공유

② 고려사항

  • 가용성 : 데이터 백업 및 보구의 편의성과 이중화 지원 여부
  • 성능 : 대용량 트랜잭션(Transaction) 처리 능력과 질의 최적화 지원 여부
  • 기술 지원 : 소프트웨어의 기술 지원과 오픈 소스 적용 여부
  • 구축 비용 : 라이선스 비용 및 유지관리 비용
  • 상호 호환성 : 설치 가능한 운영체제 및 다른 데이터베이스와의 호환 여부

3) 미들웨어(MiddleWare)

① 미들웨어의 개념

  • 미들(Middle)과 소프웨어(Software)의 합성어로, 운영체제와 해당 운영체제에서 실행되는 응용 프로그램 사이에서 운영체제가 제공하는 서비스 이외에 추가적인 서비스를 제공하는 소프트웨어
  • 표준화된 인터페이스를 제공하며 시스템 간의 데이터 교환에 일관성을 보장
  • 미들웨어의 종류로는 DBMS, RPC, MOM, TP-Monitor, ORB, WAS

② DBMS(DataBase Management System)

  • 데이터베이스 벤더(제공 업체)에서 제공하는 클라이언트에서 원격의 데이터베이스와 연결하기 위한 미들웨어

③ RPC(Remote Procedure Call)

  • 응용 프로그램의 프로시저를 사용해 원격 프로시저를 로컬 프로시저처럼 호출하는 방식의 미들웨어

④ MOM(Message Oriented Middleware)

  • 메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어
  • 온라인 업무보다 이기종 분산 데이터 시스템의 데이터 동기를 위해 많이 사용
이기종 : 서로 다른

⑤ TP-Monitor(Transaction Processing Monitor)

  • 항공기나 철도 예약 업무 등과 같은 온라인 트랜잭션을 처리 및 감시하는 미들웨어
  • 사용자 수가 증가하더라도 빠른 응답속도를 유지해야 할 경우 주로 사용

⑥ ORB(Object Request Broker)

  • 객체 지향 미들웨어로 코바(CORBA) 표준 스펙을 구현한 미들웨어
  • TP-Monitor의 장점인 트랜잭션 처리와 모니터링을 추가한 제품도 나오고 있다.

⑦ WAS(Web Application Server)

  • 사용자의 요구에 따라 변화하는 동적인 콘텐츠를 처리하기 위해 사용되는 미들웨어
  • 데이터 접근, 세션(Session) 관리, 트랜잭션 관리 등을 위해 데이터베이스 서버와 주로 연동하여 사용

⑧ 고려사항

  • 가용성 : 안정적인 트랜잭션 처리와 이중화 지원 여부
  • 성능 : 대규모 트랜잭션 처리와 가비지 컬렉션(GC : Garbage Collection)의 옵션 여부
  • 기술지원 : 소프트웨어의 기술 지원과 오픈 소스 적용 여부
  • 구축 비용 : 라이선스 비용 및 유지관리 비용

4) 오픈 소스(Open Source)

  • 개발 소스 코드가 공개된 무료 기술들의 총칭
  • 라이선스 종류별로 공개 범위에 차이가 있기 때문에 종류를 정확하게 파악
  • 사용 가능한 라이선스의 개수 및 인원수를 파악
  • 기술의 지속 가능성을 고려하여 선택

※ <이기적> 환상의 콤비 정보처리기사 책으로 공부하며 정리한 내용입니다.

반응형

+ Recent posts