1.
애자일 방법론에 대한 설명으로 옳지 않은 것은?
- ①요구사항의 변화가 적은 대규모 시스템 개발에 적합하다.
- ②포괄적인 문서보다 실행 가능한 소프트웨어를 중시한다.
- ③프로세스와 도구보다 개인과의 상호 소통을 중시한다.
- ④익스트림 프로그래밍(XP), 동적 시스템 개발 방법론(DSDM) 등이 있다.
정답 보기
정답 ① · 해설 보기
시행 2023-09-23 · 책형 가 · 25문항 · 출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)
정답 ① · 해설 보기
정답 ③ · 해설 보기
정답 ② · 해설 보기
(가) 모듈과 모듈 사이의 관계에서 관련 정도를 나타내는 용어이다. 모듈 간에는 관련이 적을수록 상호 의존성이 줄어들어 모듈의 독립성이 높아지고 독립성이 높아지면 모듈 간에 영향이 적어져 좋은 설계가 된다.(나) 모듈 내부에 존재하는 구성 요소 사이의 밀접한 정도를 나타내는 용어이다. 밀접한 정도가 높을수록 필요한 구성 요소만 모여 있고, 낮을수록 서로 관련성이 적은 구성 요소들이 모여 있다.
정답 ① · 해설 보기
정답 ① · 해설 보기
ㄱ. V 모델은 인수 테스트를 포함한다.ㄴ. 폭포수 모델의 변형으로 테스트 단계를 추가 확장한 것이다.ㄷ. 폭포수 모델이 산출물 중심이라면, V 모델은 각 개발 단계를 검증하는 데 초점을 둔다.
정답 ④ · 해설 보기
정답 ② · 해설 보기
○ 분리된(decoupled) 컴포넌트들이 원격 서비스를 호출해 상호작용하는 시스템을 구조화할 때 유용하다.○ OMG(Object Management Group)의 CORBA는 이 아키텍처의 대표적인 사례이다.
정답 ③ · 해설 보기
(가) DBMS가 다국어 지원이 가능한 제품으로 변경되어 이와 관련된 프로그램을 수정하고자 한다.(나) 기존 비대면 수업 등록 기능에서 발생한 오류 사항을 수정하고자 한다.
정답 ④ · 해설 보기
정답 ④ · 해설 보기
정답 ② · 해설 보기
정답 ③ · 해설 보기
○ enrol() 메서드의 코드가 4,000라인이 넘어 가독성이 낮다.○ study()와 credit() 메서드는 각각 200라인 정도지만, 두 메서드는 100라인 정도가 중복되어 있다.
정답 ① · 해설 보기
정답 ④ · 해설 보기
시스템을 변경한 후 변경된 부분이 기존 시스템에 부작용을 일으키지 않는지를 조사하기 위해 이미 사용한 테스트 케이스를 재사용하여 실행하는 테스트
정답 ④ · 해설 보기
정답 ② · 해설 보기
public class DesignManager {
private DesignManager() { }
private static DesignManager _instance = null;
public synchronized
static DesignManager Instance() {
if (_instance == null)
_instance = new DesignManager();
return _instance;
}
}정답 ③ · 해설 보기

정답 ③ · 해설 보기
정답 ① · 해설 보기
class Student {
private String name;
protected String department;
private static int nextAvailID = 1;
protected void passed(Course theCourse) {...}
public static void getNextAvailID() {...}
}Student |
+name: String
#department: String
-nextAvailID: int = 1 |
+passed(theCourse: Course)
+getNextAvailID() |
Student |
-name: String
#department: String
-nextAvailID: int = 1 |
#passed(theCourse: Course)
+getNextAvailID() |
Student |
-name: String
-department: String
-nextAvailID: int = 1 |
#passed(theCourse: Course)
+getNextAvailID() |
Student |
-name: String
#department: String
-nextAvailID: int = 1 |
#passed(theCourse: Course)
+getNextAvailID() |
정답 ② · 해설 보기
if (x >= 0 || y < 4)
z = x + y;
else
z = x - y;정답 ④ · 해설 보기
○ 객체가 수행하는 작업의 흐름을 표현한다.○ 비즈니스 프로세스와 같은 고수준의 흐름을 표현한다.○ 병행 처리를 표현하기 위해 포크와 조인을 이용한다.
정답 ② · 해설 보기
정답 ③ · 해설 보기
라인
번호 | C++ 코드 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 | #include<iostream>
using namespace std;
class A {
private:
int size;
public:
A(int size) { size = size; }; //오류 확인
virtual void print() { cout << size; };
};
class B : public A {
public:
B(int size) : A(size) { };
void print() { cout << size; }; //오류 확인
};
int main() {
A *b = new B(10);
b.print(); //오류 확인
return 0;
} |
정답 ④ · 해설 보기
작업 | 소요기간(일) | 선행작업 |
T1 | 7 | - |
T2 | 8 | T1 |
T3 | 3 | T1 |
T4 | 5 | T2, T3 |
T5 | 6 | T3 |
T6 | 10 | T5 |
T7 | (가) | T4 |
T8 | 5 | T6, T7 |
정답 ② · 해설 보기