소프트웨어공학

2025년도 국가공무원 7급 공채 제2차 필기시험 · 25문항

1번

다음 중 응집도(cohesion)가 가장 높은 것은?

2번

다음은 웹사이트 회원가입 양식에 나이를 입력하는 텍스트 박스의 요구사항이다. 경곗값 분석 기법을 이용해 테스트 케이스를 작성할 경우, 입력값의 집합으로 옳은 것은?

3번

다음 소프트웨어 개발 방법론과 모델링 도구를 바르게 연결한 것은?

(가) (나) (다)

4번

다음 코드에 대해 조건 커버리지를 100 % 만족하는 테스트 케이스 집합은? (단, 단축연산(short-circuit evaluation)은 수행하지 않는다)

5번

V 모델의 단계에서 (가) ~ (라)에 들어갈 내용을 바르게 연결한 것은?

(가) (나) (다) (라)

6번

다음은 클래스 다이어그램을 Java 코드로 구현한 것이다. (가) ~ (다)에 들어갈 내용을 바르게 연결한 것은?

(가) (나) (다)

7번

다음 파이썬 코드에서 문장 커버리지를 100% 만족하는 (가) ~ (다)에 들어갈 경로를 바르게 연결한 것은? (단, 단축연산은 수행하지 않는다)

(가) (나) (다)

8번

객체 지향 설계 원칙에 대한 설명으로 옳지 않은 것은?

9번

(가)에 해당하는 시암 치댐버(Shyam R. Chidamber)와 크리스 캐머러(Chris F. Kemerer)의 객체지향 설계 척도는?

10번

시험 운영 중인 보안관제 시스템이 다음 표와 같이 운영되면서 정상 가동 중에 고장이 발생하였을 때, 시스템의 가용성(availability)은?

가동1

고장1

가동2

고장2

가동3

고장3

가동4

시간(h)

12

4

9

2

10

3

5

11번

다음과 같이 Java 코드를 변경하였을 때 적용된 기법은?

void select(int num)

{

System.out.println("1. 한국어, 2. 영어");

if(num == 1)

System.out.println("한국어");

else

System.out.println("영어");

}

void select(int num)

{

System.out.println("1. 한국어, 2. 영어");

lang(num);

}

void lang(int i)

{

if(i == 1)

System.out.println("한국어");

else

System.out.println("영어");

}

12번

다음과 같은 조건으로 소프트웨어 개발 프로젝트를 수행할 때, 계약 기간 내에 프로젝트를 성공적으로 수행하기 위해 필요한 최소 기간은?

프로젝트 명

재고관리 시스템 개발

추정 소스 코드 라인 수

65,000 LOC

개발자 1인당 월평균 생산성

(LOC/MM)

초급자

1,000

중급자

1,500

현재 투입 가능 개발자 수

(명)

초급자

4

중급자

2

13번

다음 설명에 해당하는 소프트웨어 형상 관리 활동은?

14번

프로토타입 모델에 대한 설명으로 옳지 않은 것은?

15번

SPICE(ISO/IEC 15504) 모델에서 정의한 프로세스 성숙도 수준에 속하지 않은 것은?

16번

다음 Java 코드의 실행 결과는?

17번

순환 복잡도(cyclomatic complexity)가 4인 Java 코드는?

18번

다음 파이썬 코드에 적용한 디자인 패턴은?

19번

다음 파이썬 코드에 해당하는 결합도(coupling)는?

20번

다음 세부 품질 요소를 모두 포함하는 ISO/IEC 9126의 소프트웨어 품질 특성은?

21번

WBS(work breakdown structure)에 대한 설명으로 옳지 않은 것은?

22번

기능점수(function point)에 대한 설명으로 옳지 않은 것은?

23번

다음 CPM 네트워크의 각 노드가 작업명과 작업에 소요되는 예상 기간을 나타낼 때, 프로젝트를 완성하는 데 예상되는 최단 기간은?

24번

UML 설계의 4+1 View 모델에 대한 설명으로 옳은 것은?

25번

다음 코드에서 제시된 설계 원칙은?