2장 연습문제
1. 소프트웨어 생명주기와 각 단계를 시스템 예를 들어 설명하시오.
2. 데이터베이스 설계단계의 순서로 알맞은 것은? (2005년 기출문제)
① 물리적 설계 ② 구현 ③ 개념적 설계
④ 요구 조건 분석 ⑤ 논리적 설계
가. ③-⑤-④-①-② 나. ④-①-③-⑤-②
다. ④-③-⑤-①-② 라. ③-⑤-①-④-②
3. 소프트웨어 개발 방법론에서 구현(Implementation)에 대한 설명으로 가장 적절한 것은? (2004년 기출문제)
가. 요구사항 분석 과정 중 모아진 요구사항을 옮기는 것
나. 시스템이 무슨 기능을 수행하는지에 대한 시스템의 목표기술
다. 프로그래밍 또는 코딩이라고 불리며 설계 명세서가 컴퓨터가 알 수 있는 모습으로 변환되는 과정
라. 시스템이나 소프트웨어 요구 사항을 정의하는 과정
4. 소프트웨어 개발을 위한 프로그래밍 언어의 선정기준으로 거리가 먼 것은? (2005년 기출문제)
가. 개발담당자의 경험과 지식
나. 대상업무의 성격
다. 과거의 개발실적
라. 4세대 언어 여부
5. 소프트웨어 개발의 생산성에 영향을 미치는 요소가 아닌 것은? (2004년 기출문제)
가. 프로그래머의 능력
나. 팀 의사 전달
다. 제품의 복잡도
라. 소프트웨어 사용자의 능력
6. 소프트웨어의 재사용으로 얻어지는 이익이 아닌 것은? (2004년 기출문제)
가. 표준화의 원칙을 무시할 수 있다.
나. 프로젝트의 개발 위험을 줄여줄 수 있다.
다. 프로젝트의 개발기간과 비용을 줄일 수 있다.
라. 개발자의 생산성을 향상시킬 수 있다.
7. 소프트웨어의 재사용과 관련된 내용 중 가장 적절한 설명은? (2004년 기출문제)
가. 시스템 명세, 설계, 코드 그리고 다른 팀에 의해 작성된 문서를 공유함으로 소프트웨어 개발을 복잡하게 만든다.
나. 소프트웨어를 재사용함으로써 유지 보수비용이 높아진다.
다. 모든 소프트웨어를 개발할 때는 반드시 소프트웨어를 재사용하여야만 한다.
라. 소프트웨어의 개발 생산성과 품질을 높이려는 주요방법이다.
8. 상향식 통합테스트(Bottom-Up Integration Test)의 과정이 옳게 나열된 것은? (2004년 기출문제)
① 드라이버(Driver)라는 제어프로그램의 작성
② 낮은 수준의 모듈들을 클러스터(Cluster)로 결합
③ 클러스터의 검사
④ 드라이버를 제거하고 클러스터를 상위로 결합
가. ① → ② → ③ → ④
나. ② → ① → ③ → ④
다. ② → ③ → ① → ④
라. ① → ② → ④ → ③
9. 소프트웨어 품질 측정의 항목으로 거리가 먼 것은? (2004년 기출문제)
가. 정확성 나. 무결성
다. 간결성 라. 사용성
10. 소프트웨어 라이프사이클 단계 중 가장 오랜 시간이 걸리며 대부분의 비용을 차지하는 단계는? (2004년, 2006년 기출문제)
가. 타당성 검토단계
나. 운용 및 유지보수 단계
다. 기본설계 단계
라. 실행단계
11. 좋은 소프트웨어의 조건이라고 할 수 없는 항목은? (2004년 기출문제)
가. 남이 알아보기 쉬워야 한다.
나. 경제적이어야 한다.
다. 문서화가 잘 되어 있어야 한다.
라. 프로그램이 독창적이어야 한다.
12. 시스템 테스팅 단계의 순서가 적절하게 이루어진 것은? (2004년, 2006년 기출문제)
가. 단위 테스트 - 통합 테스트 - 시스템 테스트 - 수용 테스트
나. 수용 테스트 - 단위 테스트 - 통합 테스트 - 시스템 테스트
다. 단위 테스트 - 통합 테스트 - 수용 테스트 - 시스템 테스트
라. 수용 테스트 - 시스템 테스트 - 단위 테스트 - 통합 테스트
13. 검증시험(Validation Test)을 하는데 있어 Beta Test에 대한 설명으로 옳은 것은? (2005년 기출문제)
가. 사용부서에서 개발담당자가 시험한다.
나. 개발부서와 사용부서가 공동으로 시험한다.
다. 개발부서에서 개발자가 시험을 한다.
라. 실업무를 가지고 사용자가 직접 시험한다.
14. 유지보수의 활동 종류로 볼 수 없는 것은? (2005년 기출문제)
가. 정정(Corrective) 보수
나. 품질(Quality) 보수
다. 적응(Adaptive) 보수
라. 예방(Preventive) 보수
15. 알고리즘의 요건을 설명하시오.
1) 입력(input) : 알고리즘 수행에 필요한 자료가 외부에서 입력으로 제공될 수 있어야 한다.
2) 출력(output) : 알고리즘 수행 후 하나 이상의 결과를 출력해야 한다.
3) 명확성(definiteness) : 수행할 작업의 내용과 순서를 나타내는 알고리즘의 명령어들은 명확하게 명세되어야 한다.
4) 유한성(finiteness) : 알고리즘은 수행 뒤에 반드시 종료되어야 한다.
5) 효과성(effectiveness) : 알고리즘의 모든 명령어들은 기본적이며 실행이 가능해야 한다.
16. 다음의 알고리즘을 순서도를 사용하여 표현하시오.
①:for (i←1 ; i<=n ; i←i+1) do {
②: for (j←1 ; j<=n ; j←j+1) do
③: A ← A + B ;
}
17. 문제 16번 알고리즘의 시간 복잡도를 Big-Oh 표기법으로 표현하시오.
실행빈도
①: (n+1)번 수행
②: (n+1)번 수행
③: ②에 대해서 n번 수행
실행빈도함수 : (n+1)(n+1+n) = (n+1)(2n+1) = 2n2+n+2n+1 = 2n2+3n+1
Big-Oh 표기법 : O(n2)
18. 소프트웨어 유지 보수 작업의 목적으로 부적절한 것은?
가. 하자보수 나. 환경보수 다. 예방조치 라. 설계수정
19. 소프트웨어 유지 보수에 관련된 설명으로 옳지 않은 것은?
가. 유지보수는 소프트웨어가 인수, 설치 된 후 발생하는 모든 공학적 작업을 말한다.
나. 유지보수는 원인에 따라 수정보수, 적응보수, 완전화보수, 예방보수 등이 있다.
다. 소프트웨어에 가해지는 변경을 제어 관리하는 것을 형상 관리라고 한다.
라. 소프트웨어 비용 중 유지 보수 비용은 개발 비용보다 적다.
20. 공학적으로 좋은 소프트웨어에 대한 설명으로 적합하지 않은 것은? (2007년 기출문제)
가. 사용법, 구조의 설명, 성능, 기능이 이해하기 쉬워야 한다.
나. 유지보수가 용이해야한다.
다. 실행속도가 빠르고, 소요 기억 용량을 많이 차지할수록 좋다.
라. 사용자 수준에 따른 적당한 사용자 인터페이스를 제공해야 한다.
21. 소프트웨어의 품질 목표 중에서 옳고 일관된 결과를 얻기 위하여 요구된 기능을 수행할 수 있는 정도를 나타낸 것은? (2007년 기출문제)
가. 무결성 나. 정확성 다. 효율성 라. 신뢰성
22. 알고리즘 시간 복잡도 O(1)이 의미하는 것으로 옳은 것은?
가. 모든 O(1) 알고리즘은 어떤 컴퓨터에서나 동일한 수행시간을 갖는다는 의미이다.
나. 모드 O(1) 알고리즘은 한 컴퓨터에서 동일한 수행시간을 갖는다는 의미이다.
다. 알고리즘의 입력 데이터 수가 한 개라는 의미이다.
라. 알고리즘의 수행시간이 입력 데이터 수와 관계없이 일정하다는 의미이다.
마. 알고리듬의 길이가 입력 데이터보다 작다는 의미이다.
23. 아래의 시간 복잡도를 작은 것부터 큰 순서로 나열한 것을 골라라.
① O(n) ② O(nlogn) ③ O(logn) ④ O(log(logn))
가. ④<③<①<② 나. ③<①<②<④
다. ③<①<④<② 라. ④<③<②<① 마. ②<③<①<④
자바로 배우는 자료구조의 해답을 더 보고싶다면? https://chuinggun.tistory.com/category/%EC%9E%90%EB%B0%94%20%EC%86%94%EB%A3%A8%EC%85%98/%EC%9E%90%EB%B0%94%EB%A1%9C%20%EB%B0%B0%EC%9A%B0%EB%8A%94%20%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0
'솔루션모음 > 자바로 배우는 자료구조' 카테고리의 다른 글
[자바로 배우는 자료구조] 5장 솔루션 해답 (0) | 2020.06.04 |
---|---|
[자바로 배우는 자료구조] 4장 솔루션 해답 (0) | 2020.06.04 |
[자바로 배우는 자료구조] 3장 솔루션 해답 (0) | 2020.06.04 |
[자바로 배우는 자료구조] 1장 솔루션 해답 (0) | 2020.06.04 |
댓글