
소프트웨어 설계
1. 객체지행의 주요 개념에 대한 설명으로 틀린 것은?
① 캡슐화는 상위클래스에서 속성이나 연산을 전달받아 새로운 형태의 클래스로 확장하여 사용하는 것을 의미한다.
② 객체는 실세계에 존재하거나 생각할 수 있는 것을 말한다.
③ 클래스는 하나 이상의 유사한 객체들을 묶어 공통된 특성을 표현한 것이다.
④ 다형성은 상속받은 여러 개의 하위 객체들이 다른 형태의 특성을 갖는 객체로 이용될 수 있는 성질이다.
정답
① 캡슐화는 상위클래스에서 속성이나 연산을 전달받아 새로운 형태의 클래스로 확장하여 사용하는 것을 의미한다.
2. 사용자 인터페이스(User Interface)에 대한 설명으로 틀린 것은?
① 사용자와 시스템이 정보를 주고받는 상호작용이 잘 이루어지도록 하는 장치나 소프트웨어를 의미한다.
② 편리한 유지보수를 위해 개발자 중심으로 설계되어야 한다.
③ 배우기가 용이하고 쉽게 사용할 수 있도록 만들어져야 한다.
④ 사용자 요구사항이 UI에 반영될 수 있도록 구성해야 한다.
정답
② 편리한 유지보수를 위해 개발자 중심으로 설계되어야 한다.
3. GoF(Gang of Four) 디자인 패턴과 관련한 설명으로 틀린 것은?
① 디자인 패턴을 목적(Purpose)으로 분류할 때 생성, 구조, 행위로 분류할 수 있다.
② Strategy 패턴은 대표적인 구조 패턴으로 인스턴스를 복제하여 사용하는 구조를 말한다.
③ 행위 패턴은 클래스나 객체들이 상호작용하는 방법과 책임을 분산하는 방법을 정의한다.
④ Sigleton 패턴은 특정 클래스의 인스턴스가 오직 하나임을 보장하고, 이 인스턴스에 대한 접근 방법을 제공한다.
정답
② Strategy 패턴은 대표적인 구조 패턴으로 인스턴스를 복제하여 사용하는 구조를 말한다.
소프트웨어 개발
1. 개별 모듈을 시험하는 것으로 모듈이 정확하게 구현되었는지, 예정한 기능이 제대로 수행되는지를 점검하는 것이 주요 목적인 테스트는?
① 통합 테스트 (Integration Test)
② 단위 테스트 (Unit Test)
③ 시스템 테스트 (System Test)
④ 인수 테스트 (Acceptance Test)
정답
② 단위 테스트 (Unit Test)
2. 형상 관리의 개념과 절차에 대한 설명으로 틀린 것은?
① 형상 식별은 형상관리 계획을 근거로 형상관리의 대상이 무엇인지 식별하는 과정이다.
② 형상 관리를 통해 가시성과 추적성을 보장함으로써 소프트웨어의 생산성과 품질을 높일 수 있다.
③ 형상 통제 과정에서는 형상 목록의 변경 요구를 즉시 수용 및 반영해야 한다.
④ 형상 감사는 형상 관리 계획대로 형상관리가 진행되고 있는지, 형상 항목의 변경이 요구 사항에 맞도록 제대로 이뤄졌는지 등을 살펴보는 활동이다.
정답
③ 형상 통제 과정에서는 형상 목록의 변경 요구를 즉시 수용 및 반영해야 한다.
3. 소스코드 정적 분석 (Static Analysis)에 대한 설명으로 틀린 것은?
① 소스 코드를 실행시키지 않고 분석한다.
② 코드에 있는 오류나 잠재적인 오류를 찾아내기 위한 활동이다.
③ 하드웨어적인 방법으로만 코드 분석이 가능하다.
④ 자료 흐름이나 논리 흐름을 분석하여 비정상적인 패턴을 찾을 수 있다.
정답
③ 하드웨어적인 방법으로만 코드 분석이 가능하다.
데이터베이스 구축
1. 로킹 단위 (Locking Granularity)에 대한 설명으로 옮은 것은?
① 로킹 단위가 크면 병행성 수준이 낮아진다.
② 로킹 단위가 크면 병행 제어 기법이 복잡해진다.
③ 로킹 단위가 작으면 로크(lock)의 수가 적어진다.
④ 로킹은 파일 단위로 이루어지며, 레코드와 필드는 로킹 단위가 될 수 없다.
정답
① 로킹 단위가 크면 병행성 수준이 낮아진다.
2. 관계 대수에 대한 설명으로 틀린 것은?
① 원하는 릴레이션을 정의하는 방법을 제공하며 비절차적 언어이다.
② 릴레이션 조작을 위한 연산의 집합으로 피연산자와 결과가 모두 릴레이션이다.
③ 일반 집합 연산과 순수 관계 연산으로 구분된다.
④ 질의에 대해 해를 구하기 위해 수행해야 할 연산의 순서를 명시한다.
정답
① 원하는 릴레이션을 정의하는 방법을 제공하며 비절차적 언어이다.
3. 데이터의 중복으로 인하여 관계연산을 처리할 때 예기치 못한 곤란한 현상이 발생하는 것을 무엇이라 하는가?
① 이상 (Anomaly)
② 제한 (Restriction)
③ 종송성 (Dependency)
④ 변환 (Translation)
정답
① 이상 (Anomaly)
프로그래밍 언어 활용
1. 다음 C언어 프로그램이 실행되었을 때의 결과는?

① 0
② 4
③ 8
④ 12
정답
③ 8
2. 귀도 반 로섬 (Guido van Rossum)이 발표한 언어로 인터프리터 방식이자 객체지행적이며, 배우기 쉽고 이식성이 좋은 것이 특징인 스크립트 언어는?
① C++
② JAVA
③ C#
④ Python
정답
④ Python
3. 다음 JAVA 프로그래밍이 실행되었을 때의 결과를 쓰시오.

① 13
② 21
③ 34
④ 55
정답
③ 34
정보시스템 구축관리
1. Cocomo model 중 기관 내부에서 개발된 중소규모의 소프트웨어로 일괄 자료 처리나 과학기술계산용, 비즈니스 자료 처리용으로 5만 라인이하의 소프트웨어를 개발 하는 유형?
① Embeded
② Organic
③ Semi-detached
④ Semi-embeded
정답
② Organic
2. 다음 내용이 설명하는 것은?

① Format String
② Ransomware
③ Buffer overflow
④ Adware
정답
② Ransomware
3. 생명주기 모형 중 가장 오래된 모형으로 많은적용 사례가 있지만 요구사항의 변경이어렵고 각 단계의 결과가 확인 되어야 다음 단계로 넘어갈 수 있는 선형 순차적, 고전적생명 주기 모형이라고도 하는 것은?
① Waterfall Model
② Prototype Model
③ Cocomo Model
④ Spiral Model
정답
① Waterfall Model