1과목 : 소프트웨어 설계
1. 검토회의 전에 요구사항 명세서를 미리 배포하여 사전 검토한 후 짧은 검토 회의를 통해 오류를 조기에 검출하는데 목적을 두는 요구 사항 검토 방법은?
1. 빌드 검증
2. 동료 검토
3. 워크 스루
4. 개발자 검토
1. 빌드 검증 - 빌드 파일의 기본적인 구동 테스트 단계. 세세한 예외사항보다는 핵심 기능들만 넓게 테스트 하는 방식 2. 동료 검토 - 2~3명이 진행하는 리뷰형태로 작성자가 설명하고 이해관계자들이 설명을 들으면서 결함을 발견하는 방식 * 인스펙션(Inspection) - 작성자를 제외한 다른 전문가들이 확인하며 결함을 발견하는 방식 |
2. 코드 설계에서 일정한 일련번호를 부여하는 방식의 코드는?
1. 연상 코드
2. 블록 코드
3. 순차 코드
4. 표의 숫자 코드
1. 연상 코드 - 코드화 대상 항목의 명칭이나 약호와 관계있는 숫자나 문자, 기호를 이용하여 코드를 부여하는 방법 2. 블록코드 - 코드화 대상 항목 중에서 공통성이 있는 것끼리 블록으로 구분하고, 각 블록 내에서 일련번호를 부여하는 방법 4. 표의 숫자 코드 - 코드화 대상 항목의 성질, 물리적 수치를 그대로 코드에 적용시키는 방법 * 그룹 분류 코드 - 코드화 대상에 대한 분류 기준에 따라 대분류, 중분류, 소분류로 나누고 각 분류 안에서 번호를 순서적으로 부여하는 방법 * 10진 분류 코드 - 그룹 분류 코드를 응용. 코드화 대상 항목을 분류하고 번호를 부여하는 방식은 동일, 10진수만을 코드 번호로 사용하므로 각 분류마다 오직 한 자리만 허용 * 표의 숫자 코드 - 코드화 대상 항목의 성질(길이, 넓이, 부피, 지름, 높이 등)의 물리적 수치를 그대로 코드에 적용하는 방법 * 합성 코드 - 필요한 기능을 하나의 코드로 수행하기 어려운 경우 2개 이상의 코드를 조합하여 만드는 방법 |
3. 객체지향 프로그램에서 데이터를 추상화하는 단위는?
1. 메소드
2. 클래스
3. 상속성
4. 메시지
1. 메소드 - 객체의 행위 3. 상속성 - 상위 개념의 특징을 하위 개념이 물려받는 것 4. 메시지 - 객체 간의 통신 |
4. 데이터 흐름도(DFD)의 구성요소에 포함되지 않는 것은?
1. process
2. data flow
3. data store
4. data dictionary
데이터 흐름도(Data Flow Diagram)의 구성 요소 - 프로세스(process) : 입력된 데이터를 원하는 형태로 변환하여 출력하기 위한 과정 - 자료 흐름(data flow) : 데이터 흐름도(DFD)의 구성요소들 간의 데이터 흐름을 나타냄 - 자료 저장소(data store) : 데이터가 저장되는 장소 - 단말(terminator) : 시스템과 통신하는 외부 개체 * 데이터 사전(data dictionary) : 읽기전용으로 제공되는 테이블 및 뷰들의 집합 |
5. 소프트웨어 설계시 구축된 플랫폼의 성능특성 분석에 사용되는 측정 항목이 아닌 것은?
1.응답시간(Response Time)
2.가용성(Availability)
3.사용률(Utilization)
4.서버 튜닝(Server Tuning)
애플리케이션의 성능을 측정하기 위해 사용되는 항목 - 처리량 - 응답 시간 - 자원 사용률(보기에서는 사용률) - 가용성 - 기능성 - 사용성 - 성능 - 보안 |
6. UML 확장 모델에서 스테레오 타입 객체를 표현할 때 사용하는 기호로 맞는 것은?
1. 《 》
2. (( ))
3. {{ }}
4. [[ ]]
7. GoF(Gang of Four)의 디자인 패턴에서 행위 패턴에 속하는 것은?
1. Builder
2. Visitor
3. Prototype
4. Bridge
디자인 패턴 - 소프트웨어 디자인에서 특정 맥락에서 공통적으로 발생하는 문제에 대해 재사용 가능한 해결책 생성 패턴 - 추상 팩토리(Abstract Factory) - 빌더(Builder) - 팩토리 메소드(Factory Method) - 프로토타입(Prototype) - 싱글톤(Singleton) 구조 패턴 - 어댑터(Adapter) - 브리지(Bridge) - 컴포지트(Composite) - 데코레이터(Decorator) - 퍼싸드(Facade) - 플라이웨이트(Flyweight) - 프록시(Proxy) 행위 패턴 - 책임 연쇄(Chain of Responsibility) - 커맨드(commnad) - 인터프리터(Interpreter) - 반복자(lterator) - 중재자(Mediator) - 메멘토(Memento) - 옵서버(Observer) - 상태(state) - 전략(Strategy) - 템플릿 메소드(Template Method) - 방문자(Visitor) |
8. 자료 사전에서 자료의 생략을 의미하는 기호는?
1. { }
2. **
3. =
4. ( )
- 정의 : = - 구성, 연결 : + - 반복 : { } - 주석 : ** - 선택 : [ | ] - 생략 : ( ) |
9. 트랜잭션이 올바르게 처리되고 있는지 데이터를 감시하고 제어하는 미들웨어는?
1. RPC
2. ORB
3. TP monitor
4. HUB
- RPC : remote procedure call 원격 절차 호출 또는 원격 프로시저 호출 - ORB : object request broker, 객체 간 메시지 전달을 지원하는 미들웨어 - TP monitor : 트랜잭션 처리를 감시/제어하는 미들웨어 |
10. UI 설계 원칙에서 누구나 쉽게 이해하고 사용할 수 있어야 한다는 것은?
1. 유효성
2. 직관성
3. 무결성
4. 유연성
- 직관성 : 누구나 쉽게 이해하고 사용할 수 있어야 함. - 유효성 : 목적이 정확하고 달성될 수 있어야 함. - 학습성 : 초보자나 숙련자나 모두 쉽게 배우고 이해할 수 있어야 함. - 유연성 : 사용자의 요구사항을 최대한 수용하고 오류를 최소화 해야 함. |
11. XP(eXtreme Programming)의 5가지 가치로 거리가 먼 것은?
1. 용기
2. 의사소통
3. 정형분석
4. 피드백
XP(eXtreme Programming)의 5가지 가치 - 의사소통(Communication) - 단순성(Simplicity) - 피드백(Feedback) - 용기(Courage) - 존중(Respect) |
12. UML 모델에서 사용하는 Structural Diagram에 속하지 않은 것은?
1. Class Diagram
2. Object Diagram
3. Component Diagram
4. Activity Diagram
Structural Diagram - 클래스 다이어그램(Class Diagram) - 개체 다이어그램(Object Diagram) - 컴포넌트 다이어그램(Componert Diagram) - 배치 다이어그램(Deployment Diagram) - 복합체 구조 다이어그램(Composite Structure Diagram) - 패키지 다이어그램(Package Diagram) Behavioral Diagram - 유스케이스 다이어그램(Use Case Diagram) - 시퀀스 다이어그램(Sequence Diagram) - 커뮤니케이션 다이어그램(Communication Diagram) - 상태 다이어그램(State Diagram) - 활동 다이어그램(Activity Diagram) - 상호작용 개요 다이어그램(Interaction Overview Diagram) - 타이밍 다이어그램(Timing Diagram) |
13. 소프트웨어 개발 방법 중 요구사항 분석(requirements annalysis)과 거리가 먼 것은?
1. 비용과 일정에 대한 제약설정
2. 타당성 조사
3. 요구사항 정의 문서화
4. 설계 명세서 작성
요구사항분석 : 개발 대상에 대한 사용자의 요구사항 중 명확하지 않거나 모호하여 이해되지 않는 부분을 걸러내기 위한 과정 - 사용자 요구사항의 타당성을 조사하고 비용과 일정에 대한 제약을 설정 - 내용이 중복되거나 하나로 통합되어야 하는 등 서로 상충되는 요구사항이 있으면 이를 해결 - 도출된 요구사항들을 토대로 소프트웨어의 범위를 파악 - 도출된 요구사항들을 토대로 소프트웨어와 주변 환경이 상호 작용하는 방법을 이해 |
14. 럼바우(Rumbaugh)의 객체지향 분석 절차를 가장 바르게 나열한 것은?
1. 객체 모형→동적 모형→기능 모형
2. 객체 모형→기능 모형→동적 모형
3. 기능 모형→동적 모형→객체 모형
4. 기능 모형→객체 모형→동적 모형
럼바우의 객체지향 분석 기법 - 소프트웨어 구성 요소를 그래픽 표기법을 이용하여 모델링하는 객체지향 분석 기법 - 순서는 객체, 동적, 기능 순으로 이루어짐 |
15. 공통 모듈에 대한 명세 기법 중 해당 기능에 대해 일관되게 이해하고 한 가지로 해석될 수 있도록 작성하는 원칙은?
1. 상호작용성
2. 명확성
3. 독립성
4. 내용성
공통 모듈이란 - 전체 프로그램의 기능 중 특정기능을 처리할 수 있는 실행코드 - 자체적으로 컴파일 가능, 다른 프로그램에서 재사용 가능 - 여러 기능 및 프로그램에서 공통으로 사용할 수 있는 모듈(예-날짜 처리를 위한 유틸리티 모듈 등) 공통모듈 원칙 - 정확성 : 해당 기능이 실제 시스템 구현시 필요한지 아닌지를 알 수 있도록 정확하게 작성 - 명확성 : 해당 기능에 대해 일관되게 이해하고 한가지로 해석될 수 있도록 작성 - 완전성 : 시스템이 구현될 때 필요하고 요구되는 모든 것을 기술 - 일관성 : 공통 기능 간에 상호 충돌이 없도록 작성 - 추적성 : 공통 기능에 대한 요구사항 출처와 관련 시스템 등의 유기적 관계에 대한 식별이 가능하도록 작성 |
16. 객체지향 기법에서 클래스들 사이의 ‘부분-전체(part-whole)' 관계 또는 ’부분(is-a-part-of)'의 관계로 설명되는 연관성을 나타내는 용어는?
1. 일반화
2. 추상화
3. 캡슐화
4. 집단화
객체와 클래스 사이 또는 클래스들 사이의 상호 참조하는 관계를 표현하는 방식 - 관계성의 종류 - is member of(연관성(Association)) - 특성 : 클래스와 객체의 참조 및 이용관계("객체 A는 클래스 B에 속한다") - is part of(집단화(Aggregation)) - 특성 : 클래스들 간의 구조적인 집약 관계("클래스 A는 클래스 B와 클래스 C로 구성된다") - is a(일반화(Generalization),특수화(Specialization)) - 특성 : 클래스들 간의 개념적인 포함 관계("자식 클래스 A는 부모 클래스 B의 일종이다") |
17. CASE가 갖고 있는 주요 기능이 아닌 것은?
1. 그래픽 지원
2. 소프트웨어 생명주기 전 단계의 연결
3. 언어번역
4. 다양한 소프트웨어 개발 모형 지원
CASE(Computer Aided Software Engineering) : 소프트웨어 공학의 여러 작업들을 자동화하는 도구 - 소프트웨어 부품의 재사용성을 향상 - 소프트웨어 품질과 일관성을 효율적으로 관리 - 소프트웨어 생명 주기의 모든 단계를 연결시켜 주고 자동화 - 소프트웨어의 유지보수를 용이하게 수행 - 소프트웨어 공학의 여러 작업들을 자동화하는 도구 - 소프트웨어 시스템의 문서화 및 명세화를 위한 그래픽 기능을 제공 - 자료흐름, 비즈니스 프로세스 등의 다이어그램을 쉽게 작성하게 해주는 소프트웨어도 CASE 도구 |
18. DBMS 분석시 고려사항으로 거리가 먼 것은?
1. 가용성
2. 성능
3. 네트워크 구성도
4. 상호 호환성
19. HIPO(Hierarchy Input Process Output)에 대한 설명으로 거리가 먼 것은?
1. 상향식 소프트웨어 개발을 위한 문서화 도구이다.
2. HIPO 차트 종류에는 가시적 도표, 총체적 도표, 세부적 도표가 있다.
3. 기능과 자료의 의존 관계를 동시에 표현할 수 있다.
4. 보기 쉽고 이해하기 쉽다.
HIPO(Hierarchy Input Process Output) : 시스템의 분석 및 설계나 문서화할 때 사용되는 기법 - 기본 시스템 모델은 입력, 처리, 출력으로 구성되며, 하향식 소프트웨어 개발을 위한 문서화 도구 - 체계적인 문서 관리가 가능 - 기능과 자료의 의존 관계를 동시에 표현 - 변경, 유지보수가 용이 - HIPO의 차트 종류 3가지(가시적 도표, 총체적 도표, 세부적 도표) |
20. 객체지향 분석 방법론 중 E-R 다이어그램을 사용하여 객체의 행위를 모델링하며, 객체식별, 구조 식별, 주체 정의, 속성 및 관계 정의, 서비스 정의 등의 과정으로 구성되는 것은?
1. Coad와 Yourdon 방법
2. Booch 방법
3. Jacobson 방법
4. Wirfs-Brocks 방법
Coad와 Yourdon - E-R 다이어그램을 사용하여 객체의 행위를 모델링 - 객체 식별, 구조 식별, 주제 정의, 속성 및 인스턴스 연결 정의, 연산과 메시지 연결 정의 등의 과정으로 주로 관계를 분석 Booch - 미시적, 거시적 개발 프로세스를 모두 사용하는 분석 방법 - 클래스와 객체들을 분석 및 식별하고 클래스의 속성과 연산 정의 Jacobson - USE CASE를 사용하여 분석 * Use CASE : 사용자, 외부 시스템, 다른 요소들이 시스템과 상호 작용하는 방법을 기술 Wirfs-Brock - 분석과 설계간 구분이 없으며, 고객 명세서를 평가해서 설계 작업까지 연속적으로 수행하는 기법 |
'1. 자격증 > 정보처리기사' 카테고리의 다른 글
[정보처리기사 필기] 20년06월06일 시험문제 리뷰를 통한 시험준비[5과목] (0) | 2020.07.24 |
---|---|
[정보처리기사 필기] 20년06월06일 시험문제 리뷰를 통한 시험준비[4과목] (0) | 2020.07.22 |
[정보처리기사 필기] 20년06월06일 시험문제 리뷰를 통한 시험준비[3과목] (0) | 2020.07.20 |
[정보처리기사 필기] 20년06월06일 시험문제 리뷰를 통한 시험준비[2과목] (0) | 2020.07.17 |
[필기] 2020년06월06일 기출문제 리뷰를 통한 시험대비 (0) | 2020.07.14 |