자격증/정보처리기사 필기

[정보처리기사 필기] SW 설계 : 개발 기술 환경 파악

Yuco 2023. 1. 10. 21:46
정보처리기사 1과목 - 소프트웨어 설계 : 개발 기술 환경 파악

[1] 운영체제(OS, Operating System) P. 28

- 하드웨어와 소프트웨어 리소스를 관리하고 컴퓨터 프로그램을 위한 공통 서비스를 제공하는 소프트웨어
- 고려사항 : 신뢰도(가용성), 성능, 기술지원, 구축 비용, 주변 기기
(* 신뢰도 : 장기간 시스템을 운영할 때 운영체제 고유의 장애 발생 가능성)

* 운영체제의 종류 및 특징
1. 리눅스(Linux) : 비용이 저렴하나(무료) 유지 관리를 위한 기술 인력을 보유하거나 별도의 계약을 체결해야 함
2. 유닉스(UNIX) : 안정적이고 신뢰도가 높으며 대량의 처리가 가능하고 기술지원이 용이하나 비용이 많이 소요, 시스템 구축 예산이 적은 경우(2천만원 이하)에는 유닉스를 도입하기 어려움
3. 윈도즈(Windows) : 유지 관리 기술 인력 확보가 용이하고 유닉스(UNIX)에 비해 상대적으로 비용이 저렴하나, 대부분의 대용량 처리 서버에 설치 불가능
4. iOS
5. Android

[2] 미들웨어(Middleware)

- 운영체제와 소프트웨어 애플리케이션 사이에 위치하는 소프트웨어 애플리케이션에 운영체제가 제공하는 서비스를 추가 및 확장하여 제공하는 컴퓨터 소프트웨어 (운영체제와 응용 프로그램 사이에서 추가적인 서비스를 제공하는 소프트웨어)

[3] 데이터베이스 관리 시스템(DBMS, DataBase Management System) P.32

- 사용자, 다른 애플리케이션, 데이터베이스와 상호작용하여 데이터를 저장하고 분석하기 위한 컴퓨터 소프트웨어 애플리케이션
- 데이터베이스 생성, 조회, 변경 등 데이터베이스 관리가 주요 기능
- 데이터베이스의 구성, 접근 방법, 유지관리에 대한 모든 책임을 짐
- 고려사항 : 가용성, 성능, 기술지원 ,구축 비용, 상호 호환성(설치 가능한 운영체제 종류)

* DBMS의 종류
- Oracle, MySQL, SQLite, MongoDB, Redis 등

1. 상용 DBMS : 안정적이며 확장성이 뛰어나고 기술 지원을 받기 용이하나 비용이 많이 소요
2. 오픈소스 DBMS : 비용이 저렴하나, 관련된 기술력을 자체적으로 확보할 필요가 있음
- 일반적으로 많이 사용되고 있는 DBMS(상용 또는 오픈소스 모두)를 선택하면 관련 기술 인력 및 기술 자료를 확보하기 용이하고 문제 해결이 용이

[4] 웹 어플리케이션 서버(WAS, Web Application Server)

- 정적인 콘텐츠를 처리하는 웹 서버(Web Server)와 반대됨
- 동적인 웹 사이트, 웹 애플리케이션, 웹 서버의 개발을 지원하기 위해 설계된 소프트웨어(미들웨어)
- 데이터 접근, 세션관리, 트랜잭션 관리 등을 위한 라이브러리 제공
- 고려사항 : 가용성, 성능, 기술지원, 구축 비용

* WAS 종류
Tomcat, JEUSm WebLogic, JBoss, Jetty, Resin, GlassFish 등

- 표준 규격을 준수하는 웹 애플리케이션 서버의 경우 개발용과 운영용을 구분하여 사용 가능
1. 상용 WAS : 안정적이며, 대량 처리가 검증되어 있고 기술 지원을 받기가 용이
2. 오픈소스 WAS : 일반적으로 널리 사용하는 WAS를 선택하는 게 바람직

[5] 오픈소스(Open Source)

- 소스코드를 공개해 누구나 특별한 제한 없이 그 코드를 보고 사용할 수 있는 오픈 소스 라이선스를 만족하는 소프트웨어
- 고려사항 : 라이선스의 종류, 사용자 수, 기술의 지속 가능성