1.
소프트웨어의 대표적 특징으로 옳지 않은 것은?
- ①순응성
- ②복잡성
- ③마모성
- ④비가시성
정답 보기
정답 ③ · 해설 보기
시행 2024-10-12 · 책형 나 · 25문항 · 출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)
정답 ③ · 해설 보기
(가) 요구사항 분석(나) 요구사항 검증(다) 요구사항 추출(라) 요구사항 명세
정답 ① · 해설 보기
정답 ② · 해설 보기
정답 ① · 해설 보기
(가) 나선형 모델 (spiral model)(나) 통합 프로세스 모델 (unified process model)(다) V 모델 (V model)
A. 테스트 단계가 분석 및 설계와 어떻게 관련되어 있는지 나타내고, 각 개발 단계를 검증하는 데 초점을 둔다.B. 위험분석 단계가 존재해 처음부터 위험에 대해 고려하면서 개발을 진행한다.C. 개발과정은 크게 4단계(도입, 정련, 구축, 전이)로 나뉘고 각 단계도 여러 개의 작은 단위로 나뉘며, 한 번 반복이 끝나면 실행 가능한 산출물이 도출된다.
정답 ③ · 해설 보기
계약 기간 | 10개월 |
추정 소스코드 라인 수 | 100,000 LOC |
개발자 1인당 월평균 생산성 | 1,000 LOC/MM(Man Month) |
현재 개발자 수 | 7명 |
정답 ① · 해설 보기
○ 테스트 실행 결과를 검증하기 위한 메커니즘○ 테스트 수행 결과가 참인지 거짓인지를 판단하기 위해 미리 정의된 참값과 비교하는 테스트 기법
정답 ② · 해설 보기
정답 ② · 해설 보기
입력값 조합의 경우의 수를 줄이기 위해 두 입력값의 조합을 통해 테스트 케이스를 도출하는 기법으로, 모든 경우의 수를 테스트하지 않고 2개 요소의 모든 조합을 확인할 수 있도록 테스트 케이스를 생성한다.
정답 ④ · 해설 보기
정답 ③ · 해설 보기
temp = []
i = 0
d = 2
arr = [1, 2, 3, 4, 5]
while (i < d):
temp.append(arr[i])
i = i + 1
i = 0
while (d < len(arr)):
arr[i] = arr[d]
i = i + 1
d = d + 1
arr[:] = arr[: i] + temp정답 ② · 해설 보기
정답 ② · 해설 보기

정답 ④ · 해설 보기
상태 X에서 trigger 이벤트가 발생했을 때, condition 조건이 참이면 effect 효과를 수행하고 상태 Y로 전이한다.




정답 ① · 해설 보기
(가) 커뮤니케이션 다이어그램(나) 액티비티 다이어그램(다) 시퀀스 다이어그램
A. 객체와 액터의 관계에 초점을 두고, 사건의 흐름을 네트워크 형태로 압축하여 나타낸다.B. 사용 사례를 이루는 객체들이 어떻게 메시지를 보내 협력하는지를 시간의 흐름에 따라 표시한다.C. 복잡한 시스템 작업의 병행 처리를 위해 포크(fork), 조인(join)을 이용한다.
정답 ② · 해설 보기
정답 ③ · 해설 보기
은/는 여러 명으로부터 정보를 얻을 수 있는 효과적인 방법이다. 그룹으로 테이블에 앉아 아이디어를 추출할 목적으로 특정 토픽에 관하여 토론을 수행하며, 판단과 비판을 유보함으로써 창의성을 극대화할 수 있는 요구 추출 방법이다.(가)은 사용자의 기초적인 요구를 최대한 반영한 소규모 모형을 개발하여 이를 기반으로 더욱 구체적인 요구 분석을 가능하게 하는 방법이다. 주요 목적은 소프트웨어 엔지니어의 아이디어에 대한 피드백을 조기에 받아 요구사항을 취합하는 것이다.(나)
정답 ④ · 해설 보기

(가) 하향식 기법의 통합 테스팅은 모듈 A부터 시작한다.(나) 빅뱅 테스팅을 수행하기 위해서는 A부터 G까지의 모든 모듈을 한꺼번에 연결하여 테스팅을 수행한다.(다) 하향식 기법을 수행하기 위해서는 스텁(stub) 모듈이 필요하다.(라) 상향식 기법을 수행하기 위해서는 드라이버(driver) 모듈이 필요하다.
정답 ④ · 해설 보기
#include <stdio.h>
int sum_array(int *arr, int length) {
int i, ret;
ret = 0;
for (i = 0; i < length; i++)
ret += arr[i];
return ret;
}
int main() {
int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
printf("%d", sum_array(a, 10));
return 0;
}정답 ③ · 해설 보기
기능적 응집 - (가) - (나) - (다) - 우연적 응집
정답 ④ · 해설 보기
그림에서 ‘클라이언트’는 ‘대상’ 인터페이스를 통해서 ‘request()’를 실행하는데, 어떤 객체를 통해서 ‘request()’가 처리되는지 알지 못하고 ‘X’ 객체가 ‘실제대상’ 객체를 참조하고 있으면서 ‘클라이언트’의 요청에 대응하여 ‘실제대상’ 객체에게 실제 ‘request()’ 실행을 요청하여 필요한 작업이 이루어진다.
정답 ① · 해설 보기
if ((x > 5) || (y > 10) || (z < 8)) {
z = x + y;
z = z - 1;
}
if ((x > 8) && (z > 9)) {
z = z + 1;
}정답 ③ · 해설 보기
정답 ④ · 해설 보기
(가) 기능 점수 계산(나) 규모 추정(다) 노력 산정(라) 기능 점수 보정(마) 소요 기간 산정
정답 ① · 해설 보기
작업 이름 | A | B | C | D | E | F | G | H | I | J | 종료 |
선행 작업 | - | A | A | C, E | B | E | F | D, G | H | I | J |
수행 기간
(개월) | 2 | 4 | 5 | 2 | 2 | 2 | 1 | 2 | 1 | 2 | - |
정답 ④ · 해설 보기