반응형

*개발 기술 환경 현행 시스템 분석

1. 운영체제 현행 시스템 분석

1-1. 운영체제란

- 컴퓨터 시스템이 제공하는 모든 하드웨어, 소프트웨어를 사용할 수 있도록 해주고, 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스를 담당하는 프로그램이다.

- 사용자가 컴퓨터를 좀 더 쉽게 사용하기 위해 지원하는 소프트웨어이다.

1-2. 운영체제 현행 시스템 분석

- 운영체제 현행 시스템 분석 시 품질 측면과 지원 측면 등을 고려해야 한다.

- 품질 측면 (신뢰도) : 장기간 시스템 운영 시 운영체제의 장애 발생 가능성, 운영체제의 버그로 인한 재기동 여부

- 품질 측면 (성능) : 대규모 및 대량 파일 작업(배치 작업)처리, 지원 가능한 메모리 크기(32비트, 64비트)

- 지원 측면 (기술 지원) : 공급사들의 안정적인 기술 지원, 오픈 소스 여부

- 지원 측면 (주변 기기) : 설치 가능한 하드웨어, 다수의 주변 기기 지원 여부

- 지원 측면 (구축 비용) : 지원 가능한 하드웨어 비용, 설치할 응용 프로그램의 라이선스 정책 및 비용, 유지 및 관리 비용

1-3. 운영체제의 종류 및 특징

- 대표적으로 PC, 모바일 운영체제로 나뉜다.

- PC (윈도즈 Windows) : Microsoft, 중/소규모 서버, 일반 PC 등 유지, 관리 비용 장점

- PC (유닉스 UNIX) : IBM, HP, SUN, 대용량 처리, 안정성 높은 엔터프라이즈급 서버

- PC (리눅스 Linux) : Linus Torvalds, 중/대규모 서버 대상, 높은 보안성 제공

- 모바일 (안드로이드 Android) : Google, 스마트폰, 태블릿 PC, 다양한 기기의 호환성 제공

- 모바일 (IOS) : Apple, 스마트폰, 태블릿 PC의 높은 보안성과 고성능 제공

- 리눅스 기반 시스템이 하드웨어 및 소프트웨어 소유 비용이 가장 적게 소요된다.

 

2. 네트워크 현행 시스템 분석

2-1. 네트워크란

- 컴퓨터 장치들의 노드 간 연결(데이터 링크)을 사용하여 서로에게 데이터를 교환할 수 있도록 하는 기술이다.

- 데이터 링크들은 광 케이블과 같은 유선 매체 또는 와이파이(Wi-Fi)와 같은 무선 매체를 통해 확립된다.

2-2. OSI 7계층

- 네트워크 통신에서 생긴 여러 가지 충돌 문제를 완화하기 위해 국제 표준화 기구(ISO)에서 제시한 네트워크 기본 모델이다.

- 응용 계층 : 사용자와 네트워크 간 응용 서비스 연결, 데이터 생성 (HTTP, FTP 프로토콜 / 전송단위는 데이터)

- 표현 계층 : 데이터 형식 설정과 부호 교환, 암호화/복호화 (JPEG, MPEG 프로토콜 / 전송단위는 데이터)

- 세션 계층 : 연결 접속 및 동기제어 (SSH, TLS 프로토콜 / 전송단위는 데이터) 

- 전송 계층 : 신뢰성 있는 통신 보장, 데이터 분할과 재조립, 흐름 제어, 오류 제어, 혼잡제어 등을 담당 (TCP, UDP 프로토콜 / 전송단위는 세크먼트)

- 네트워크 계층 : 단말 간 데이터 전송을 위한 최적화된 경로 제공 (IP, ICMP 프로토콜 / 전송단위는 패킷)

- 데이터 링크 계층 : 인접 시스템 간 데이터 전송, 전송오류 제어, 동기화, 흐름 제어 등의 전송 기능 제공, 오류 검출, 재전송 등 기능 제공 (이더넷 / 전송단위는 프레임)

- 물리 계층 : 0과 1의 비트 정보를 회선에 보내기 위한 전기적 신호 변환 (RS-232C / 전송단위는 비트)

2-3. 네트워크 현행 시스템 분석

- 현행 시스템이 구성된 네트워크 구조를 네트워크 구성도를 통해 분석한다.

- 네트워크 구성도를 통해 서버 위치, 서버 간 연결 방식을 파악할 수 있다.

- 백본망, 라우터, 스위치, 게이트웨이, 방화벽 등을 대상으로 분석한다.

- 네트워크 분석 시 물리적인 위치 관계 파악, 조직 내 보안 취약성 분석 및 대응이 가능하다.

- 네트워크 장애 발생 추적 및 대응 등의 다양한 용도로 활용할 수 있다.

 

3. DBMS 현행 시스템 분석

3-1. DBMS란

- 데이터베이스라는 데이터의 집합을 만들고, 저장 및 관리할 수 있는 기능들을 제공하는 응용 프로그램이다.

3-2. DBMS의 기능

- 중복 제어 : 동일한 데이터가 여러 위치에 중복으로 저장되는 현상 방지

- 접근 통제 : 권한에 따라 데이터에 대한 접근 제어

- 인터페이스 제공 : 사용자에게 SQL 및 CLI, GUI 등 다양한 인터페이스 제공

- 관계 표현 : 서로 다른 데이터 간의 다양한 관계를 표현할 수 있는 기능 제공

- 샤딩/파티셔닝 : 구조 최적화를 위해 작은 단위로 나누는 기능 제공

- 무결성 제약조건 : 무결성에 관한 제약조건을 정의/검사하는 기능 제공

- 백업 및 회복 : 데이터베이스 장애 발생 시 데이터의 보존 기능 제공

3-3. DBMS 현행 시스템 분석

- 성능 측면 (가용성) : 장기간 시스템을 운영할 때 장애 발생 가능성, 백업 및 복구 편의성, DBMS 이중화 및 복제 지원 여부

- 성능 측면 (성능) : 대규모 데이터 처리 성능, 대량 거래 처리 성능, 다양한 튜닝 옵션 지원 여부, 비용 기반 최적화 지원 및 설정의 최소화 지원 여부

- 성능 측면 (상호 호환성) : 설치 가능한 운영체제 종류, 다양한 운영체제에서 지원되는 JDBC, ODBC

- 지원 측면 (기술 지원) : 공급 업체들의 안정적인 기술 지원 여부, 다수의 사용자 간의 정보 공유 여부, 오픈 소스 여부

- 지원 측면 (구축 비용) : 라이언스 정책 및 비용, 유지 및 관리 비용

 

4. 미들웨어의 현행 시스템 분석

4-1. 미들웨어란

- 미들웨어는 분산 컴퓨팅 환경에서 응용 프로그램과 프로그램이 운영되는 환경 간에 원만한 통신이 이루어질 수 있도록 제어해주는 소프트웨어이다.

- 운영체제와 소프트웨어 애플리케이션 사이에 위치하고 있다.

- 대표적인 미들웨어로는 WAS가 있다.

4-2. 웹 애플리케이션 서버(WAS)란

- 웹 애플리케이션 서버는 서버계층에서 애플리케이션이 동작할 수 있는 환경을 제공하고 안정적인 트랜잭션 처리와 관리, 다른 이 기종 시스템과의 애플리케이션 연동을 지원하는 서버이다.

4-3. 미들웨어의 현행 시스템 분석

- 성능 측면 (가용성) : 장기간 시스템을 운영할 때 장애 발생 가능성, 안정적인 트랜잭션 처리 능력, WAS의 버그 등을 개선하는 패치 설치를 위한 재기동 기능 지원 여부, WAS 이중화 지원 여부

- 성능 측면 (성능) : 대규모 데이터 처리 성능, 다양한 설정 옵션 지원 여부, 가비지 컬렉션의 다양한 옵션 기능 여부

- 지원 측면 (기술 지원) : 공급 벤더들의 안정적인 기술 지원 여부, 다수의 사용자들 간의 정보 공유 여부, 오픈 소스 여부

- 지원 측면 (구축 비용) : 라이선스 정책 및 비용, 유지 및 관리 비용, 총 소유 비용

 

5. 오픈 소스 사용 시 고려 사항

- 오픈 소스를 사용하는 경우에는 라이선스의 종류, 사용자 수, 기술의 지속 가능성 등을 고려해야 한다.

- 오픈 소스 소프트웨어의 전체 조건인 자유 배포, 소스 코드 공개, 파생작업 허용, 소스 코드 일관성 확보, 차별금지, 라이선스 배포, 포괄적 허용을 고려해야 한다.  

반응형

+ Recent posts