1. 개발 기술 환경 파악의 개요
개발하고자 하는 소프트웨어와 관련된 운영체제(OS), 데이터베이스 관리 시스템(DBMS), 미들웨어 등을 선정할 때 고려해야 할 사항을 기술하고, 오픈 소스를 사용할 때 주의해야 할 내용을 제시한다.
2. 운영체제 ( OS, Operating System )
- 컴퓨터 시스템의 자원을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효율적으로 사용할 수 있도록 환경을 제공하는 소프트웨어.
- 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종.
- 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경 제공
- 운영체제 관련 요구사항 식별 시 고려사항
-가용성
-성능
-기술 지원
-주변 기기
-구축 비용
3. 데이터베이스 관리 시스템 ( DBMS; DataBase Management System )
- 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해 주고, 데이터베이스를 관리해 주는 소프트웨어.
- 기존의 파일 시스템이 갖는 데이터의 종속성과 중복성의 문제를 해결하기 위해 제안된 시스템.
- 모든 응용 프로그램들이 데이터베이스를 공용할 수 있도록 관리.
- DBMS 관련 요구사항 식별 시 고려사항
-가용성
-성능
-기술 지원
-상호 호환성
-구축 비용
4. 웹 애플리케이션 서버 ( WAS; Web Application Server )
- 사용자의 요구에 따라 변하는 동적인 콘텐츠를 처리하기 위해 사용되는 미들웨어.
- 데이터 접근, 세션 관리, 트랜잭션 관리 등을 위한 라이브러리를 제공.
- 주로 데이터베이스 서버와 연동해서 사용한다.
- 웹 애플리케이션 서버 관련 요구사항 식별 시 고려사항
-가용성
-성능
-기술 지원
-구축 비용
5. 오픈소스 ( Open Source )
- 누구나 별다른 제한 없이 사용할 수 있도록 소스 코드를 공개한 소프트웨어.
- 오픈 소스 라이선스를 만족.
- 오픈 소스 관련 요구사항 식별 시 고려사항
-라이선스의 종류
-사용자 수
-기술의 지속 가능성
라이선스 ( License )
시스템 구축비용 면에서 소프트웨어 비용이 적지 않은 비중을 차지하므로, 상용 소프트웨어의 경우 라이선스 적용 방식의 기준과 보유한 라이선스의 파악이 중요함.
서버의 이중화 ( Replication )
운용 서버에 장애가 발생했을 때 대기 서버에서 서비스를 계속 유지할 수 있도록, 운용 서버의 자료 변경이 대기 서버에도 동일하게 복제되도록 관리하는 것을 의미.
미들웨어 ( Middle Ware )
운영체제와 해당 운영체제에 의해 실행되는 응용 프로그램 사이에서 운영체제가 제공하는 서비스 이외에 추가적인 서비스를 제공하는 소프트웨어.