본문 바로가기
휴지통/정보처리기사

005. 개발 기술 환경 파악

by 신재권 2021. 12. 31.

개발 기술 환경의 정의

소프트웨어와 관련된 운영체제(Operating System), 데이터베이스 관리 시스템 (Database Management System), 미들 웨어(Middle Ware) 등을 선정할 때 고려해야할 사항을 기술하고, 오픈 소스 사용 시 주의해야 할 내용을 제시한다.

미들웨어 : 운영체제와 해당 운영체제에 의해 실행되는 응용 프로그램 사이에서 운영체제가 제공하는 서비스 이외에 추가적인 서비스를 제공하는 소프트웨어

운영 체제(OS, Operating System)

운영체제는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효율적으로 사용할 수 있도록 환경을 제공하는 소프트웨어

  • 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종으로, 다른 응용 프로그램이 유용한 작업을 할수 있도록 환경을 제공
  • 컴퓨터 운영체제 : Windows, UNIX, Linux, Mac OS
  • 모바일 운영체제 : iOS, Android

운영체제 관련 요구사항 식별 시 고려사항

  • 가용성
    • 시스템의 장시간 운영으로 인해 발생할 수 있는 운영체제 고유의 장애 발생 가능성
    • 메모리 누수로 인한 성능 저하 및 재가동
    • 보안상 발견된 허점을 보완하기 위한 지속적인 패치 설치로 인한 재가동
    • 운영체제의 결함 등으로 인한 패치 설치를 위한 재가동
  • 성능
    • 대규모 동시 사용자 요청에 대한 처리
    • 대규모 및 대용량 파일 작업에 대한 처리
    • 지원 가능한 메모리 크기(32, 64 bit)
  • 기술 지원
    • 제작업체의 안정적인 기술 지원
    • 여러 사용자들 간의 정보 공유
    • 오픈 소스 여부(Linux)
  • 주변 기기
    • 설치 가능한 하드웨어
    • 여러 주변기기 지원 여부
  • 구축 비용
    • 지원 가능한 하드웨어 비용
    • 설치할 응용 프로그램의 라이선스 정책 및 비용
    • 유지 관리 비용
    • 총 소유 비용(TCO)

가성기주구(가용성, 성능, 기술 지원, 주변기기, 구축 비용)

데이터베이스 관리 시스템(DBMS)

DBMS(DataBase Management System)는 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해주는 소프트웨어 이다.

  • 기존의 파일 시스템이 갖는 데이터의 종속성과 중복성의 문제를 해결하기 위해 제안된 시스템으로, 모든 응용 프로그램들이 데이터베이스를 공용할 수 있도록 관리
  • 데이터베이스의 구성, 접근 방법, 유지 관리에 대한 모든 책임을 가짐
  • Oracle, IBM DB2, Microsoft SQL Server, MySQL, SQLite, MongoDB, Redis 등이 있다.

DMBS 관련 요구사항 식별 시 고려사항

  • 가용성
    • 시스템의 장시간 운영으로 인해 발생할 수 있는 운영체제 고유의 장애 발생 가능성
    • DBMS의 결함 등으로 인한 패치 설치를 위한 재가동
    • 백업이나 복구의 편의성
    • DBMS 이중화 및 복제 지원
  • 성능
    • 대규모 데이터 처리 성능(분할 테이블 지원 여부)
    • 대용량 트랜잭션 처리 성능
    • 튜닝 옵션의 다양한 지원
    • 최소화된 설정과 비용 기반 질의 최적화 지원
  • 기술 지원
    • 제작 업체의 안정적인 기술 지원
    • 여러 사용자들 간의 정보 공유
    • 오픈 소스 여부
  • 상호 호환성
    • 설치 가능한 운영체제의 종류
    • JDBC, ODBC와의 호환 여부
  • 구축 비용
    • 라이선스 정책 및 비용
    • 유지관리 비용
    • 총 소유 비용(TCO)

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

웹 애플리케이션 서버(WAS, WebApplication Server)

웹 애플리케이션 서버는 정적인 콘텐츠 처리를 하는 웹 서버와 달리 사용자의 요구에 따라 변하는 동적인 콘텐츠를 처리하기 위해 사용되는 미들웨어

  • 데이터의 접근, 세션 관리, 트랜잭션 관리 등을 위한 라이브러리를 제공
  • 주로 데이터베이스 서버와 연동해서 사용
  • Tomcat, GlassFish, JBoss, Jetty, JEUS, Resin, WebLogic, WebSphere 등

웹 애플리케이션 서버(WAS)관련 요구사항 식별 시 고려사항

  • 가용성
    • 시스템의 장시간 운영으로 인해 발생할 수 있는 고유의 장애 발생 가능성
    • WAS의 결함 등으로 인해 패치 설치를 위한 재가동
    • 안정적인 트랜잭션 처리
    • WAS 이중화 지원
  • 성능
    • 대규모 트랜잭션 처리 성능
    • 다양한 설정 옵션 지원
    • 가비지 컬렉션의 다양한 옵션
  • 기술 지원
    • 제조 업체의 안정적인 기술 지원
    • 여러 사용자들 간의 정보 공유
    • 오픈소스 여부
  • 구축 비용
    • 라이선스 정책 및 비용
    • 유지관리 비용
    • 총 소유 비용(TCO)

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

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

오픈 소스(Open Source)는 누구나 별다른 제한 없이 사용할 수 있도록 소스 코드를 공개한 것으로 오픈 소스 라이선스를 만족하는 소프트웨어이다.

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

정리

OS : 컴퓨터 시스템의 자원들을 효율적으로 관리, 사용자가 컴퓨터를 편리하고 효율 적으로 사용할수 있도록 환경을 제공해주는 소프트웨어, 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스, Windows, UNIX, Linux, MacOS, iOS, Android

운영체제 요구사항 고려 : 가용성(장애 및 재가동), 성능(처리), 기술 지원, 주변기기, 구축비용

DBMS : 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해주는 소프트웨어, 데이터의 종속성과 중복성 문제 해결, 모든 응용 프로그램에서 공용하게 관리, DB의 구성, 접근방법, 유지관리에 대한 모든 책임을 짐, Oracle, IBM DB2, Microsoft SQL Server, MySQL, SQLite, MongoDB, Redis

DBMS 요구사항 고려 : 가용성(장애 및 재가동, 백업, 이중화, 복제), 성능(처리, 질의 최적화), 기술 지원, 상호 호환성, 구축 비용

WAS : 정적인 콘텐츠를 처리하는 웹 서버와 달리 사용자의 요구에 따라 변하는 동적인 컨텐츠를 처리하기 위해 사용되는 미들웨어, 데이터 접근, 세션 관리, 트랜잭션 관리에 대한 라이브러리 제공, DB 서버와 연동, Tomcat, GlassFish, JBoss, Jetty, JEUS, Resin, WebLogic, WebSphere

WAS 요구사항 : 가용성(장애, 재가동, 트랜잭션 처리, 이중화), 성능(처리), 기술 지원, 구축 비용

오픈소스 : 누구나 제한 없이 사용할 수 있도록 소스코드를 공개한 오픈 소스 라이선스, 라이선스의 종류, 사용자의 수, 기술의 지속 가능성

OS : 가성기주구(가용성, 성능, 기술 지원, 주변 기기, 구축비용)

DBMS : 가성기상구(가용성, 성능, 기술 지원, 상호 호환성, 구축비용)

WAS : 가성기구(가용성, 성능, 기술지원, 구축비용)

'휴지통 > 정보처리기사' 카테고리의 다른 글

007. 요구사항 분석  (0) 2022.01.01
006. 요구사항 정의  (0) 2022.01.01
04. 현행 시스템 파악  (0) 2021.12.31
03. XP(eXtreme Programming) 기법  (0) 2021.12.31
02. 스크럼(Scrum) 기법  (0) 2021.12.31