
소프트웨어 설계
1. 애자일 개발 방법론과 관련한 설명으로 틀린 것은?
① 빠른 릴리즈를 통해 문제점을 빠르게 파악할 수 있다.
② 정확한 결과 도출을 위해 계획 수립과 순서화에 중점을 둔다.
③ 고객과의 의사소통을 중요하게 생각한다.
④ 진화하는 요구사항을 수용하는데 적합하다.
정답
② 정확한 결과 도출을 위해 계획 수립과 순서화에 중점을 둔다.
2. 럼바우(Rumbaugh)의 객체지향 분석 기법 중 자료 흐름도(DFD)를 주로 이용하는 것은?
① 기능 모델링
② 동적 모델링
③ 객체 모델링
④ 정적 모델링
정답
① 기능 모델링
3. 순차 다이어그램(Sequence Diagram)과 관련한 설명으로 틀린 것은?
① 객체들의 상호 작용을 나타내기 위해 사용한다.
② 시간의 흐름에 따라 객체들이 주고 받는 메시지의 전달 과정을 강조한다.
③ 동적 다이어그램 보다는 정적 다이어그램에 가깝다.
④ 교류 다이어그램(Interaction Diagram)의 한 종류로 볼 수 있다.
정답
③ 동적 다이어그램 보다는 정적 다이어그램에 가깝다.
소프트웨어 개발
1. 소프트웨어 개발 활동을 수행함에 있어서 시스템이 고장(Failure)을 일으키게 하며, 오류(Error)가 있을 경우 발생하는 것은?
① Fault
② Testcase
③ Mistake
④ Inspection
정답
① Fault
2. 코드의 간결성을 유지하기 위해 사용되는 지침으로 틀린 것은?
① 공백을 이용하여 실행문 그룹과 주석을 명확히 구분한다.
② 복잡한 논리식과 산술식은 괄호와 들여쓰기(Indentation)를 통해 명확히 표현한다.
③ 빈 줄을 사용하여 선언부와 구현부를 구별한다.
④ 한 줄에 최대한 많은 문장을 코딩한다.
정답
④ 한 줄에 최대한 많은 문장을 코딩한다.
3. 소프트웨어 품질 목표 중 하나 이상의 하드웨어 환경에서 운용되기 위해 쉽게 수정될 수 있는 시스템 능력을 의미하는 것은?
① Portability
② Efficiency
③ Usability
④ Correctness
정답
① Portability
데이터베이스 구축
1. 다음 중 SQL에서 DDL 문이 아닌 것은?
① CREATE
② DELETE
③ ALTER
④ DROP
정답
② DELETE
2. 정규화에 대한 설명으로 적절하지 않은 것은?
① 데이터베이스의 개념적 설계 단계 이전에 수행한다.
② 데이터 구조의 안정성을 최대화 한다.
③ 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 방지한다.
④ 데이터 삽입 시 릴레이션을 재구성할 필요성을 줄인다.
정답
① 데이터베이스의 개념적 설계 단계 이전에 수행한다.
3. 트랜잭션의 주요 특성 중 하나로 둘 이상의 트랜잭션이 동신에 병행 실행되는 경우 어느 하나의 트랜잭션 실행 중에 다른 트랜잭션의 연산이 끼어들 수 없음을 의미하는 것은?
① Log
② Consistency
③ Isolation
④ Durability
정답
③ Isolation
프로그래밍 언어 활용
1. 프로세스와 관련한 설명으로 틀린 것은?
① 프로세스가 준비 상태에서 프로세서가 배당되어 실행 상태로 변화하는 것을 디스패치(Dispatch)라고 한다.
② 프로세서 제어 블록(PCB, Process Control Block)은 프로세스 식별자, 프로세스 상태 등의 정보로 구성된다.
③ 이전 프로세서의 상태 레지스터 내용을 보관하고 다른 프로세스의 레지스터를 적재하는 과정을 문맥 교환(Context Switching)이라고 한다.
④ 프로세서는 스레드(Thread) 내에서 실행되는 흐름의 단위이며, 스레드와 달리 주소 공간에 실행 스택(Stack)이 없다.
정답
④ 프로세서는 스레드(Thread) 내에서 실행되는 흐름의 단위이며, 스레드와 달리 주소 공간에 실행 스택(Stack)이 없다.
2. 모듈의 독립성을 높이기 위한 결합도(Coupling)와 관련한 설명으로 틀린 것은?
① 오류가 발생했을 때 전파되어 다른 오류의 원인이 되는 파문 효과(Ripple Effect)를 최소화해야 한다.
② 인터페이스가 정확히 설정되어 있지 않을 경우 불필요한 인터페이스가 나타나 모듈 사이의 의존도는 높아지고 결합도는 증가한다.
③ 모듈들이 변수를 공유하여 사용하게 하거나 제어 정보를 교류하게 함으로써 결합도를 낮추어야 한다.
④ 다른 모듈과 데이터 교류가 필요한 경우 전역변수 (Global Variable) 보다는 매개변수 (Parameter)를 사용하는 것이 결합도를 낮추는 데 도움이 된다.
정답
③ 모듈들이 변수를 공유하여 사용하게 하거나 제어 정보를 교류하게 함으로써 결합도를 낮추어야 한다.
3. TCP헤더와 관련한 설명으로 틀린 것은?
① 순서번호(Squence Number)는 전달하는 바이트마다 번호가 부여된다.
② 수신번호확인(Acknowledgement Number)은 상대편 호스트에서 받으려는 바이트의 번호를 정의한다.
③ 체크섬(Checksum)은 데이터를 포함한 세그먼트 오류를 검사한다.
④ 윈도우 크기는 송수신 측의 버퍼 크기로 최대크기는 32767bit 이다.
정답
④ 윈도우 크기는 송수신 측의 버퍼 크기로 최대크기는 32767bit 이다.
정보시스템 구축관리
1. 소프트웨어 생명주기 모형 중 Spiral Model에 대한 설명으로 틀린 것은?
① 비교적 대규모 시스템에 적합하다.
② 개발 순서는 계획 및 정의, 위험 분석, 공학적 개발, 고객 평가 순으로 진행된다.
③ 소프트웨어를 개발하면서 발생할 수 있는 위험을 관리하고 최소화하는 것을 목적으로 한다.
④ 계획, 설계, 개발, 평가의 개발 주기가 한번만 수행된다
정답
④ 계획, 설계, 개발, 평가의 개발 주기가 한번만 수행된다
2. 특정 사이트에 매우 많은 ICMP Echo를 보내면, 이에 대한 응답(Respond)을 하기 위해 시스템 자원을 모두 사용해버려 시스템 정상적으로 동작하지 못 하도록 하는 공격방법은?
① Role-Based Access Control
② Ping Flood
③ Brute-Force
④ Trojan Horses
정답
② Ping Flood
3. TCP/IP 기반 네트워크에서 동작하는 발행-구독 기반의 메시징 프로토콜로 최근 IoT 환경에서 자주 사용되고 있는 프로토콜은
① MLFQ
② MQTT
③ Zigbee
④ MTSP
정답
② MQTT