본문으로 바로가기

2과목 : 소프트웨어 개발

 

1. 소프트웨어 패키징 도구 활용 시 고려 사항으로 틀린 것은?

1. 반드시 내부 콘텐츠에 대한 암호화 및 보안을 고려한다.
2. 보안을 위하여 이기종 연동을 고려하지 않아도 된다.
3. 사용자 편의성을 위한 복잡성 및 비효율성 문제를 고려한다.
4. 제품 소프트웨어 종류에 적합한 암호화 알고리즘을 적용한다.


2. EAI(Enterprise Application Integration) 구죽유형 중 Hybrid에 대한 설명으로 틀린 것은?

1. Hub & Spoke와 Message Bus의 혼합방식이다.
2. 필요한 경우 한 가지 방식으로 EAI구현이 가능하다.
3. 데이터 병목현상을 최소화할 수 있다.
4. 중간에 미들웨어를 두지 않고 각 애플리케이션을 point to point로 연결한다.

유형 기능
Point-to-Point - 가장 기본적인 애플리케이션 통합 방식으로 애플리케이션을 1:1로 연결
- 변경 및 재사용이 어려움
Hub & Spoke - 단일 접점인 허브 시스템을 통해 데이터를 전송하는 중앙 집중형 방식
- 확장 및 유지 보수가 용이
- 허브 장애 발생 시 시스템 전체에 영향을 미침
Message Bus(ESB 방식) - 애플리케이션 사이에 미들웨어를 두어 처리하는 방식
- 확장성이 뛰어나며 대용량 처리가 가능
Hybrid - Hub & Spoke & Message Bus의 혼합 방식
- 그룹 내에서는 Hub & Spoke 방식을, 그룹 간에는 Message Bus 방식을 사용
- 필요한 경우 한 가지 방식으로 EAI 구현이 가능
- 데이터 병목 현상을 최소화할 수 있음

3. 소스코드 품질분석 도구 중 정적분석 도구가 아닌 것은?

1. pmd
2. checkstyle
3. valance
4. cppcheck

정적분석 도구
 - PMD
 - FindBugs
 - CheckStyle
 - Cppcheck

4. 다음 Postfix 연산식에 대한 연산결과로 옳은 것은?

3 4 * 5 6 * +

1. 35
2. 42
3. 77
4. 360

Postfix 연산식
- 스택(Stack)을 이용하여 연산자가 뒤에 위치하도록 한 수식
- 사람 입장에선 이해하기 어려우나 컴퓨터 입장에선 계산하기 수월

( 3 * 4 ) + ( 5 * 6 ) = 12 + 30 = 42

5. 인터페이스 보안을 위 해 네트워크 영역에 적용될 수 있는 것으로 거리가 먼 것은?

1. IPSec
2. SSL
3. SMTP
4. S-HTTP

SMTP(Simple Mail Transfer Protocol) : 간이 전자 우편 전송 프로토콜은 인터넷에서 이메일을 보내기 위해 이용되는 프로토콜

marsyard.tistory.com/53
20년08월22일 시험[2과목] 1번 중복 출제

6. 검증(Validation) 검사 기법 중 개발자의 장소에서 사용자가 개발자 앞에서 행해지며, 오류와 사용상의 문제점을 사용자와 개발자가 함께 확인하면서 검사하는 기법은?

1. 디버깅 검사
2. 형상 검사
3. 자료구조 검사
4. 알파 검사

테스트 종류 설명
사용자 인수 테스트 사용자가 시스템 사용의 적절성 여부를 확인
운영상의 인수 테스트 시스템 관리자가 시스템 인수 시 수행하는 테스트 기법으로, 백업/복원 시스템, 재난 복구, 사용자 관리, 정기 점검 등을 확인
계약 인수 테스트 계약상의 인수/검수 조건을 준수하는지 여부를 확인
규정 인수 테스트 정부 지침, 법규, 규정 등 규정에 맞게 개발되었는지 확인
알파 테스트 개발자의 장소에서 사용자가 개발자 앞에서 행하는 테스트 기법
베타 테스트 선정된 최종 사용자가 여러 명의 사용자 앞에서 행하는 테스트 기법

7. 다음 초기 자료에 대하여 삽입 정렬(Insertion Sort)을 아용하여 오름차순 정렬할 경우 1회전 후의 결과는?

8, 3, 4, 9, 7

1. 3, 4, 8, 7, 9
2. 3, 4, 9, 7, 8
3. 7, 8, 3, 4, 9
4. 3, 8, 4, 9, 7


8. 소프트웨어 설치 매뉴얼에 대한 설명으로 틀린 것은?

1. 설치과정에서 표시될 수 있는 예외상황에 관련 내용을 별도로 구분하여 설명한다.
2. 설치 시작부터 완료할 때까지의 전 과장을 빠짐없이 순서 대 로 설 명 한다.
3. 설치 매뉴얼은 개발자 기준으로 작성한다.
4. 설치 매뉴얼에는 목차, 개요, 기본사항 등이 기본적으로 포함되어야 한다.


9. 인터페이스 구현 검증 도구가 아닌 것은?

1. ESB
2. xUnit
3. STAF
4. NTAF

도구 기능
xUnit - Java(Junit), C++(Cppunit), .Net(Nunit) 등 다양한 언어를 지원하는 단위 테스트 프레임워크
STAF - 서비스 호출 및 컴포넌트 재사용 등 다양한 환경을 지원하는 테스트 프레임워크
- 각 테스트 대상 분산 환경에 데몬을 사용하여 테스트 대상 프로그램을 통해 테스트를 수행하고, 통합하여 자동화하는 검증 도구
FitNesse - 웹 기반 테스트케이스 설계, 실행, 결과 확인 등을 지원하는 테스트 프레임워크
NTAF - FitNesse의 장점인 협업 기능과 STAF의 장점인 재사용 및 확장성을 통합한 NHN의 테스트 자동화 프레임워크
Selenium - 다양한 브라우저 및 개발 언어를 지원하는 웹 어플리케이션 테스트 프레임워크
watir - Ruby를 사용하는 애플리케이션 테스트 프레임워크

10.소프트웨어 형상 관리에서 관리 항목에 포함되지 않는 것은?

1. 프로젝트 요구 분석서
2. 소스 코드
3. 운영 및 설치 지침서
4. 프로젝트 개발 비용


11. 다음 설명에 해당하는 것은?

물리적 저장 장치의 입장에서 본 데이터베이스 구조로서 실제로 데이터베이스에 저장될 레코드의 형식을 정의하고 저장 데이터 항목의 표현 방법, 내부 레코드의 물리적 순서 등을 나타낸다.

1. 외부 스키마
2. 내부 스키마
3. 개념 스키마
4. 슈퍼 스키마

스키마(Schema)
 - 데이터베이스의 구조, 제약에 관한 전반적 명세
 - 개념 스키마 : 데이터베이스의 전체적인 논리적 구조
 - 내부 스키마 : 데이터베이스의 물리적 구조를 정의
 - 외부 스키마 : 사용자나 응용 프로그래머의 입장에서 필요로 하는 데이터베이스의 논리적 구조

12. 다음 트리에 대한 INORDER 운행 결과는?

1. D B A E C F
2. A B D C E F
3. D B E C F A
4. A B C D E F


13. n 개의 노드로 구성된 무방향 그래프의 최대 간선수는?

1. n-1
2. n/2
3. n(n-1)/2
4. n(n+1)

무방향 그래프
 - 두 정점을 연결하는 간선의 방향이 없는 그래프
 - 정점 Vi와 정점 Vj을 연결하는 간선을 (Vi, Vj)로 표현
 - 정점이 n개인 무방향 그래프에서 최대의 간선 수: n(n-1)/2개

14. 다음이 설명하는 테스트 용어는?

- 테스트의 결과가 참인지 거짓인지를 판단하기 위해서 사전에 정의된 참값을 입력하여 비교하는 기법 및 활동을 말한다.
- 종류에는 참, 샘플링, 휴리스틱, 일관성 검사가 존재한다.

1. 테스트 케이스
2. 테스트 시나리오
3. 테스트 오라클
4. 테스트 데이터


15. 빌드 자동화 도구에 대한 설명으로 틀린 것은?

1. Gradle은 실행할 처리 명령들을 모아 태스크로 만든 후 태스크 단위로 실행한다.
2. 빌드 자동화 도구는 지속적인 통합개발환경에서 유용하게 활용된다.
3. 빌드 자동화 도구에는 Ant, Gradle, Jenkins등이 있다.
4. Jenkins는 Groovy기 반으로 한 오픈소스로 안드로이드 앱 개발 환경에서 사용된다.


16. 저작권 관리 구성 요소에 대한 설명이 틀린 것은?

1. 콘텐츠 제공자(Contents Provider) : 콘텐츠를 제공하는 저작권자
2. 콘텐츠 분배자(Contents Distributor) : 콘텐츠를 메타 데이터와 함께 배포 가능한 단위로 묶는 기능
3. 클리어링 하우스(Clearing House) : 키 관리 및 라이선스 발급 관리
4. DRM 컨트롤러 : 배포된 콘텐츠의 이용 권한을 통제

클리어링 하우스(Clearing House) : 저작권에 대한 사용 권한, 라이선스 발급, 사용량에 따른 결제 관리 등을 수행하는 곳
콘텐츠 제공자(Contents Provider) : 콘텐츠를 제공하는 저작권자
패키저(Packager) : 콘텐츠를 메타 데이터와 함께 배포 가능한 형태로 묶어 암호화하는 프로그램
콘텐츠 분배자(Contents Distributor) : 암호화된 콘텐츠를 유통하는 곳이나 사람
콘텐츠 소비자(Customer) : 콘텐츠를 구매해서 사용하는 주체
DRM 컨트롤러(DRM Controller) : 배포된 콘텐츠의 이용 권한을 통제하는 프로그램
보안 컨테이너(Security Container) : 콘텐츠 원본을 안전하게 유통하기 위한 전자적 보안 장치

17. 블랙박스 테스트 기법으로 거리가 먼 것은?

1. 기초 경로 검사
2. 동치 클래스 분해
3. 경계값 분석
4. 원인 결과 그래프

화이트박스 테스트(White Box Test) : 모듈의 원시 코드를 오픈시킨 상태에서 원시 코드의 논리적인 모든 경로를 테스트하는 방식
 - 화이트박스 테스트의 종류
  - 제어 흐름 테스트(Control flow testing)
  - 데이터 흐름 테스트(Data flow testing)
  - 분기 테스트(branch testing)
  - 경로 테스트(path testing)

블랙박스 테스트(Black Box Test) : 소프트웨어 검사 방법 중 하나로 어떤 소프트웨어를 내부 구조나 작동 원리를 모르는 상태에서 소프트웨어의 동작을 검사하는 방법
 - 블랙박스 테스트의 종류
  - 동치 분할 검사(Equivalence Partitioning Testing)
  - 경계값 분석(Boundary Value Analysis)
  - 원인-효과 그래프 검사(Cause-Effect Graphing Testing)
  - 오류 예측 검사(Error Guessing)
  - 비교 검사(Comparison Testing)

비슷한 유형 (5번)
marsyard.tistory.com/53

18. 해싱함수 중 레코드 키를 여러 부분으로 나누고, 나눈 부분의 각 숫자를 더하거나 XOR한 값을 홈 주소로 사용하는 방식은?

1. 제산법
2. 폴딩법
3. 기수변환법
4. 숫자분석법

제산법
- 레코드키로 해시표의 크기보다 큰 수 중에서 가장 작은소수로 나눈 나머지를 홈 주소로 삼는 방식

폴딩법
- 레코드 키값을 여러 부분으로 나눈 후 각 부분의 값을 더하거나 XOR(배타적 논리합) 한 값을 홈 주소로 삼는 기법

기수변환법
- 키 숫자의 진수를 다른 진수로 변환시켜 주소 크기를 초과한 높은 자릿수를 절단하고, 이를 다시 주소 범위에 맞게 조정하는 방법

숫자분석법(계수분석법)
- 키 값을 이루는 숫자의 분포를 분석하여 비교적 고른 자리를 필요한 만큼 택해서 홈 주소로 삼는 방식

19. 다음에서 설명하는 클린 코드 작성 원칙은?

- 한 번에 한 가지 처리만 수행한다.
- 클래스/메소드/함수를 최소 단위로 분리한다.

1. 다형성
2. 단순성
3. 추상화
4. 의존성


20. 디지털 저작권 관리(DRM) 기술과 거리가 먼 것은?

1. 콘텐츠 암호화 및 키 관리
2. 콘텐츠 식별체계 표현
3. 콘텐츠 오류 감지 및 복구
4. 라이선스 발급 및 관리