본문 바로가기
CS_정리 & 정보처리기사 💾

[정보처리기사] 2020_06_06 (1회,2회 통합)_1과목

by 개발하는윤기사 2023. 3. 20.
728x90
반응형

안녕하세요~ 이웃 여러분! 개발하는 윤기사입니다.
 
이번에 제가 정보처리 기사 시험을 보기 위해서 열심히 공부 중인데요...! 앞으로 공부하는 것을 블로그에 글을 남기고자 합니다...!
 
제가 따로 공부한 것이나, 이웃 여러분께 알려드리고자 하는 내용을 작성하는거니 많이 봐주셨으면 좋겠습니다!!
 
(사실 제가 따로 보려고 쓰는거기도 하답니다 ^___^)

 

1과목 : 소프트웨어 설계

 


1. 검토회의 전에 요구사항 명세서를 미리 배포하여 사전 검토한 후 짧은 검토 회의를 통해 오류를 조기에 검출하는데 목적을 두는 요구 사항 검토 방법은?    
① 빌드 검증 
② 동료 검토 
③ 워크 스루 
④ 개발자 검토
 
🍎
동료 검토 : 작성자가 명세서 내용 설명을 하고, 동료들이 결함을 발견하는 형태
인스펙션 : 명세서 작성자를 제외한 다른 검토 전문가들이 확인하면서 결함을 발견하는 형태
 


2. 코드 설계에서 일정한 일련번호를 부여하는 방식의 코드는?    
① 연상 코드
② 블록 코드 
③ 순차 코드
④ 표의 숫자 코드
 
🍎
연상 코드 : 항목의 명칭이나 약호와 관계 있는 숫자, 문자, 기호를 이용하여 코드를 부여하는 방법
블록 코드 : 대상 항목에서 공통적인 것을 블록으로 구분하고 블록 내에 일련번호를 부여하는 방법
표의 숫자 코드 : 길이, 넓이, 부피 등 항목의 성질의 물리적인 수치를 그대로 코드에 적용시키는 방법
 


3. 객체지향 프로그램에서 데이터를 추상화하는 단위는?    
① 메소드 
② 클래스
③ 상속성
④ 메시지
 
🍎 
메소드(Methods) : 객체 지향 프로그래밍에서 전통적 시스템의 함수 또는 프로시저에 해당하는 연산기능 객체가 실행해야 할 구체적 연산
상속성 : 상위 클래스의 메서드에 존재하는 모든 속성을 하위클래스가 계승하는 것, 재사용과 유지보수 증대시켜 줌.
메시지 : 객체들 간에 상호작용을 하는데 사용되는 수단 
 


4. 데이터 흐름도(DFD)의 구성요소에 포함되지 않는 것은?    
① process
② data flow    
③ data store
④ data dictionary
 
🍎
데이터 흐름도(Data Flow Diagram) : Process(프로세스), 자료 흐름(Data Flow), 자료 저장소(Data Store), 단말(Terminal)
 


5. 소프트웨어 설계 시 구축된 플랫폼의 성능특성 분석에 사용되는 측정 항목아닌 것은?
① 응답시간(Response Time)
② 가용성(Availability)
③ 사용률(Utilization)    
④ 서버 튜닝(Server Tuning)
 
🍎
플랫폼의 성능특성 분석 측정 항목은
1. 응답시간(Response Time)
2. 가용성(Availability) == 처리량(Throughput)
3. 사용률(Utilization)
4. 경과 시간(Turnaround Time)


6. UML 확장 모델에서 스테레오 타입 객체를 표현할 때 사용하는 기호로 맞는 것은?    
① 《 》
② (( ))    
③ {{ }}
④ [[ ]]
 


7. GoF(Gang of Four)의 디자인 패턴에서 행위 패턴에 속하는 것은?    
① Builder - 생성패턴
② Visitor - 행위패턴
③ Prototype - 생성패턴
④ Bridge - 구조패턴
 
🍎
생성패턴 : 객체의 생성과 관련된 패턴
구조패턴 : 클래스나 객체들을 조합하여 더 큰 구조로 만들 수 있게 해주는 패턴
행위패턴 : 클래스나 객체들이 서로 상호작용하는 방법이나 책임 분배 방법을 정의하는 패턴
 
1. Builder : 작게 분리된 인스턴스를 건축하듯이 조합하여 객체를 생성.
2. Visitor : 각 클래스들의 데이터 구조에서 처리 기능을 분리하여 별도의 클래스로 구성.
3. Prototype : 원본 객체를 복제하는 방법으로 객체를 생성.
4. Bridge : 구현부에서 추상층을 분리하여, 서로가 독립적으로 확장할 수 있도록 구성.
 


8. 자료 사전에서 자료의 생략을 의미하는 기호는?   
① { }
② **    
③ =
④ ( )
 
🍎
정의 : =
구성, 연결 : +
반복 : { }
주석 : **
선택 : [ㅣ]
생략 : ( )
 


9. 트랜잭션이 올바르게 처리되고 있는지 데이터를 감시하고 제어하는 미들웨어는?    
① RPC
② ORB    
③ TP monitor
④ HUB
 
🍎
1.RPC(Remote Procedure Call) : 원격 절차 호출 또는 원격 프로시저 호출.
2.ORB(Object Request Broker) : 객체 간 메시지 전달을 지원하는 코바 표준 스펙을 구현한 미들웨어. 
3.TP monitor : 트랜잭션 처리를 감시/제어하는 미들웨어.
 


10. UI 설계 원칙에서 누구나 쉽게 이해하고 사용할 수 있어야 한다는 것은?     
① 유효성
② 직관성
③ 무결성
④ 유연성
 
🍎
1. 직관성 : 누구나 쉽게 이용하고 쉽게 사용할 수 있어야 함
2. 유효성 : 정확하고 완벽하게 사용자의 목표가 달성될 수 있도록 제작
3. 학습성 : 초보와 숙련자 모두가 쉽게 배우고 사용할 수 있게 제작
4. 유연성 : 사용자의 인터랙션을 최대한 포용하고, 실수를 방지할 수 있도록 제작
 
 


11. XP(eXtreme Programming)5가지 가치로 거리가 먼 것은?     
① 용기
② 의사소통     
③ 정형분석
④ 피드백
 
🍎
XP(eXtreme Programming)의 5가지 가치
 
1. 용기(Courage) : 고객의 요구사항 변화에 능동적인 대처
2. 단순성(Simplicity) : 부가적 기능, 사용되지 않는 구조와 알고리즘 배제
3. 커뮤니케이션(Communication) : 개발자, 관리자, 고객 간의 원활한 의사소통
4. 피드백(Feedback) : 지속적인 테스트와 반복적 결함 수정, 빠른 피드백
5. 존중(Respect) : 모든 프로젝트 관리자는 팀원의 기여를 존중
 


12. UML 모델에서 사용하는 Structural Diagram에 속하지 않은 것은?     
① Class Diagram
② Object Diagram     
③ Component Diagram
④ Activity Diagram
 
🍎 

구조적 다이어그램 (Structual Diagram)

클래스 다이어그램 (Class Diagram)- 클래스와 클래스가 가지는 속성, 클래스 사이의 관계를 표현
- 시스템의 구조 파악, 구조상의 문제점 도출.
객체 다이어그램 (Object Diagram)- 클래스에 속한 사물(객체)들, 즉 인스턴스(Instance)를 특정 시점의 객체와 객체 사이의 관계로 표현
컴포넌트 다이어그램 (Component Diagram)- 실제 구현 모듈인 컴포넌트 간의 관계나 컴포넌트 간의 인터페이스를 표현
구현 단계에서 사용되는 다이어그램.
배치 다이어그램 (Deployment Diagram)- 결과물, 프로세스, 컴포넌트 등 물리적 요소들의 위치 표현
노드와 의사소통(통신) 경로로 표현.
구현 단계에서 사용되는 다이어그램.
복잡체 구조 다이어그램 (Composit Structure Diagram)- 클래스나 컴포넌트가 복합 구조를 갖는 경우, 그 내부 구조를 표현.
패키지 다이어그램 (Package Diagram)- 유스케이스나 클래스 등의 모델 요소들을 그룹화한 패키지들의 관계 표현.

 

행위 다이어그램 (Behavioral Diagram)

Activity Diagram은 Behavioral Diagram(행위 다이어그램)에 속한다.

유스케이스 다이어그램 (Use Case Diagram)사용자의 요구를 분석하는 것으로 기능 모델링 작업에 사용.
사용자(Actor)와 사용 사례(Use Case)로 구성되며, 사용 사례 간에는 여러 형태의 관계로 이루어짐.
시퀸스 다이어그램 (Sequence Diagram)- 상호 작용하는 시스템이나 객체들이 주고받는 메시지 표현
커뮤니케이션 다이어그램 (Communication Diagram)- 시퀸스 다이어그램과 같이 동작에 참여하는 객체들이 주고받는 메시지 표현.
- 메시지 뿐 아니라 객체들 간의 연관까지 표현
상태 다이어그램 (State Diagram)- 하나의 객체가 자신이 속한 클래스의 상태 변화 혹은 다른 객체와의 상호 작용에 따라 상태가 어떻게 변화하는지를 표현.
활동 다이어그램 (Activity Diagram)- 시스템이 어떤 기능을 수행하는지 객체의 처리 로직이나 조건에 따른 처리의 흐름을 순서에 따라 표현.
상호작용 개요 다이어그램 (Interaction Overview Diagram)상호작용 다이어그램 간의 제어 흐름을 표현.
타이밍 다이어그램 (Timing Diagram)객체 상태 변화와 시간 제약을 명시적으로 표현.

 


13. 소프트웨어 개발 방법 중 요구사항 분석(requirements annalysis)과 거리가 먼 것은?     
① 비용과 일정에 대한 제약설정     
② 타당성 조사     
③ 요구사항 정의 문서화     
④ 설계 명세서 작성
 
🍎
요구사항 분석 (requirements annalysis)
- 비용과 일정에 대한 제약설정
- 타당성 조사
- 요구사항 정의 문서화
 


14. 럼바우(Rumbaugh)의 객체지향 분석 절차를 가장 바르게 나열한 것은?     
① 객체 모형→동적 모형→기능 모형     
② 객체 모형→기능 모형→동적 모형     
③ 기능 모형→동적 모형→객체 모형     
④ 기능 모형→객체 모형→동적 모형
 
🍎
1. 객체 모델링
- 객체 다이어그램(객체 관계)으로 표시.
- 가장 중요하며 선행되어야 함!
2. 동적 모델링
- 상태 다이어그램(상태도)을 이용해 시간의 흐름에 따른 객체들 간의 제어흐름, 상호작용, 동작순서 등의 동적인 행위를 표현하는 모델링
3. 기능 모델링
- 자료 흐름도(DFD)를 이용하여 다수의 프로세스들 간의 자료 흐름을 중심으로 처리
 


15. 공통 모듈에 대한 명세 기법 중 해당 기능에 대해 일관되게 이해하고 한 가지로 해석될 수 있도록 작성하는 원칙은?     
① 상호작용성
② 명확성
③ 독립성
④ 내용성
 
🍎
공통모듈 원칙
- 정확성 : 해당 기능이 실제 시스템 구현시 필요한지 아닌지를 알 수 있도록 정확하게 작성
- 명확성 : 해당 기능에 대해 일관되게 이해하고 한 가지로 해석될 수 있도록 작성
- 완전성 : 시스템이 구현될 때 필요하고 요구되는 모든 것을 기술
- 일관성 : 공통 기능 간에 상호 충돌이 없도록 작성
- 추적성 : 공통 기능에 대한 요구사항 출처와 관련 시스템 등 의 유기적 관계에 대한 식별이 가능하도록 작성
 


16. 객체지향 기법에서 클래스들 사이의 ‘부분-전체 (part-whole)' 관계 또는 ’부분(is-a-part-of)'의 관계로 설명되는 연관성을 나타내는 용어는?     
① 일반화
② 추상화     
③ 캡슐화
④ 집단화
 
🍎
집단화 is part of : 클래스 간의 구조적인 집약 관계 "클래스 A는 클래스 B와 클래스 C로 구성된다" (part가 들어가면 집단화 생각) 
일반화 is a : 클래스들 간의 개념적인 포함 관계 "자식 클래스 A는 부모 클래스 B의 일종이다."
캡슐화 : 속성(데이터)과 메서드(연산)를 하나로 묶어서 객체로 구성된다.
추상화 : 공통 성질을 추출하여 슈퍼클래스로 구성한다. 또한 객체 중심의 안정된 모델을 구축 가능하며 현실 세계를 자연스럽게 표현한다. 장점으로 분석의 초점이 명확해진다.
 
 


17. CASE가 갖고 있는 주요 기능이 아닌 것은?     
① 그래픽 지원     
② 소프트웨어 생명주기 전 단계의 연결     
③ 언어번역
④ 다양한 소프트웨어 개발 모형 지원
 
🍎
CASE [소프트웨어 개발의 자동화] 주요 기능
1. S/W의 생명주기 전(모든) 단계의 연결
2. 모델들 사이의 모순검사
3. 오류검증
4. 자료흐름도 등 다이어그램 작성
5. 다양한 소프트웨어 개발 모형지원
6. 시스템 문서화 및 명세화를 위한 그래픽 지원
 


18. DBMS 분석 시 고려사항으로 거리가 먼 것은?    
① 가용성
② 성능     
③ 네트워크 구성도
④ 상호 호환성
 
🍎
[DBMS분석 시 고려사항]
DBMS : 데이터베이스라는 데이터의 집합을 만들고, 저장 및 관리할 수 있는 기능들을 제공하는 응용 프로그램
1. 무결성 (가용성) : 장애 발생 가능성, 백업 및 복구 편의성
2. 일관성 (상호 호환성) : 설치 가능한 운영체제 종류 (JDBC[Java DataBase Connectivity], ODBC[Open Source Connectivity])
3. 성능 : 대규모 데이터 처리 성능
4. 기술 지원 : 공급 업체들의 기술 지원 여부 / 사용자 간의 정보 공유 여부
5. 구축 비용 : 라이선스 정책 및 비용
 


19. HIPO(Hierarchy Input Process Output)에 대한 설명으로 거리가 먼 것은?     
① 상향식 소프트웨어 개발을 위한 문서화 도구이다.     
② HIPO 차트 종류에는 가시적 도표, 총체적 도표, 세부 적 도표가 있다.
③ 기능과 자료의 의존 관계를 동시에 표현할 수 있다.     
④ 보기 쉽고 이해하기 쉽다. 
 
🍎
HIPO(Hierarchy Input Process Output) 
- 하향식 소프트웨어 개발을 위한 문서화 도구이다.
- HIPO 차트 종류에는 가시적 도표, 총체적 도표, 세부적 도표가 있다.
- 기능과 자료의 의존 관계를 동시에 표현할 수 있다.     
- 보기 쉽고 이해하기 쉽다. 
 


20. 객체지향 분석 방법론 중 E-R 다이어그램을 사용하여 객체의 행위를 모델링하며, 객체식별, 구조 식별, 주체 정의, 속성 및 관계 정의, 서비스 정의 등의 과정으로 구성되는 것은?     
① Coad와 Yourdon 방법
② Booch 방법    
③ Jacobson 방법
④ Wirfs-Brocks 방법
 
🍎
1. Rumbaugh(럼바우) - 가장 일반적으로 사용되는 방법으로 분석 활동을 객체/동적/기능 모델로 나누어 수행하는 방법
2. Booch(부치) - 미시적(Micro) 개발 프로세스와 거시적(Macro) 개발 프로세스를 모두 사용하는 분석방법
3. Jacobson - Use Case를 강조하여 사용하는 분석방법
4. Coad와 Yourdon(코드와 요든) - E-R다이어그램을 사용하여 개체의 활동들을 데이터 모델링하는데 초점을 둔 기법
5. Wirfs-Brock(워프스-브록) - 분석과 설계 간의 구분이 없고 고객 명세서를 평가해서 설계 작업까지 연속적으로 수행하는 기법

728x90
반응형