1과목 : 소프트웨어 설계
( CBT모의고사 기준 틀린 문항 : 1, 4, 6, 7, 9, 12, 16, 20 )
* 키워드 : 요구사항 검토, DFD, 스테레오 타입 객체 표현, 행위 패턴, 미들웨어, UML다이어그램, 관계, 객체지향 분석 방법론
1. 검토회의 전에 요구사항 명세서를 미리 배포하여 사전 검토한 후 짧은 검토 회의를 통해 오류를 조기에 검출하는데 목적을 두는 요구사항 검토 방법은?
1. 빌드 검증
2. 동료 검토
3. 워크 스루
4. 개발자 검토
정답 및 해설
3. 워크 스루
* 요구사항 개발 프로세스
도출(Elicitation) - 분석(Analysis) - 명세(Specification) - 확인(Validation)
* 요구사항 검토(Requirements Review)
요구사항 명세서의 오류 확인 및 표준 준수 여부 등의 결함 여부를 검토 담당자들이 수작업으로 분석하는 방법
* 종류
- 동료 검토(Peer Review) : 요구사항 명세서 작성자가 내용을 직접 설명, 동료들이 이를 들으면서 결함 발견
- 워크 스루(Walk Trough) : 검토 회의 전 요구사항 명세서를 미리 배포하여 사전 검토 회의를 통해 결함 발견
- 인스펙션(Inspection) : 요구사항 명세서 작성자를 제외한 다른 검토 전문가들이 결함 발견
- 프로토타이핑 : 실제 개발될 소프트웨어에 대한 견본품을 만들어 최종 결과물 예측
- 테스트 설계 : 테스트 케이스를 생성해 이후에 요구사항이 현실적으로 테스트 가능한지 검토
- CASE 도구 활용 : 일관성 분석을 통해 요구사항 변경사항의 추적 및 분석, 관리, 표준 준수 여부 확인
4. 데이터 흐름도(DFD)의 구성 요소에 포함되지 않는 것은?
1. process
2. data flow
3. data store
4. data dictionary
정답 및 해설
4. data dictionary
* 자료 흐름도(DFD; Data Flow Diagram) ( = 자료 흐름 그래프, 버블 차트 )
- 요구사항 분석에서 자료의 흐름 및 변환 과정과 기능을 도형 중심으로 기술하는 방법
- 시스템 안의 프로세스와 자료 저장소 사이에 자료 흐름을 나타내는 그래프
-> 자료 흐름과 처리를 중심으로 하는 구조적 분석 기법에 이용됨
- 자료 흐름과 기능을 자세히 표현하기 위해 단계적으로 세분화됨
- 자료는 처리(Process)를 거쳐 변환될 때마다 새로운 이름이 부여되며,
처리는 입력 자료가 발생하면 기능을 수행한 후 출력 자료를 산출함
* 자료 흐름도 지침
- 처리를 거쳐 변환될 때마다 새로운 이름 부여
- 어떤 처리가 출력 자료를 산출하기 위해서는 반드시 입력 자료가 발생
- 처리와 하위 자료 흐름도의 자료 흐름은 서로 일치
* 자료 흐름도 구성 표기법
프로세스 (Process) |
자료 흐름 (Data Flow) |
자료 저장소 (Data Stroe) |
단말, 종착 (Terminator) | |
정의 | (처리, 기능, 변환, 버블) 자료 변환시키는 시스템 (처리 과정) |
자료의 이동(흐름)이나 연관관계 |
시스템 자료 저장소 (파일, 데이터베이스) |
시스템 교신의 외부 개체 (정보 생산자와 소비자) |
표기법 | 원, 둥근 사각형 (그 안에 이름 기입) |
화살표 (그 위에 이름 기입) |
직선 (평행선; 단선/이중선)(그 안에 이름 기입) |
도형, 직사각형 (그 안에 이름 기입) |
* 자료 사전(DD; Data Dictionary) ( = 데이터의 데이터, 메타 데이터 )
- 데이터를 설명하는 데이터
- 자료 흐름도에 있는 자료를 더 자세히 정의하고 기록한 것
- 자료에 대한 정의 부분 : 자료의 이름
- 자료에 대한 설명 부분 : 자료에 대한 자세한 내용
- {} : 자료의 반복 - iteration of
- () : 자료의 생략 - optioanl
- ** : 자료의 설명 - comment
- = : 자료의 정의 - is composed of
- + : 자료의 연결 - and, along with
6. UML 확장 모델에서 스테레오 타입 객체를 표현할 때 사용하는 기호로 맞는 것은?
1. << >>
2. (( ))
3. {{ }}
4. [[ ]]
정답
1. << >>
7. GoF(Gang of Four)의 디자인 패턴에서 행위 패턴에 속하는 것은?
1. Builder
2. Visitor
3. Prototype
4. Bridge
정답 및 해설
2. Visitor
* 디자인 패턴의 종류
생성 패턴 (Creational Pattern) |
구조 패턴 (Structural Pattern) |
행위 패턴 (Behavioral Pattern) |
객체의 생성과 관련된 패턴 | 클래스나 객체들을 조합하여 더 큰 구조로 만들 수 있게 해주는 패턴 |
클래스나 객체들이 서로 상호작용하는 방법이나 책임 분배 방법을 정의하는 패턴 |
- 추상 팩토리(Abstract Factory) - 빌더(Builder) - 팩토리 메소드(Factory Method) - 프로토타입(Prototype) - 싱글톤(Singleton) |
- 어댑터(Adapter) - 브리지(Bridege) - 컴포지트(Composite) - 데코레이터(Decorator) - 퍼싸드(Facade) - 플라이웨이트(Flyweight) - 프록시(Proxy) |
- 책임 연쇄(Chain of Responsibility) - 커맨드(Command) - 인터프리터(Interpreter) - 반복자(Iterator) - 중재자(Mediator) - 메멘토(Memento) - 옵서버(Observer) - 상태(State) - 전략(Strategy) - 템플릿 메소드(Template Method) - 방문자(Visitor) |
9. 트랜잭션이 올바르게 처리되고 있는지 데이터를 감시하고 제어하는 미들웨어는?
1. RPC
2. ORB
3. TP monitor
4. HUB
정답 및 해설
3. TP monitor
* 미들웨어(Middle+Software)
분산 컴퓨팅 환경에서 서로 다른 기종의 하드웨어나 프로토콜, 통신 환경을 연결하여 응용 프로그램과 그 프로그램이 운영되는 환경 간에 원만한 통신이 이루어질 수 있게 하는 소프트웨어
* 미들웨어의 종류
- DB(DataBase)
: 데이터베이스 벤더(Vendor)에서 제공하는 클라이언트에서 원격의 데이터베이스와 연결하기 위한 미들웨어
- RPC(Remote Procedure Call)
: 응용 프로그램의 프로시저를 사용하여 원격 프로시저를 마치 로컬 프로시저처럼 호출하는 방식의 미들웨어
- MOM(Message Oriented Middleware)
: 메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어
- TP-Monitor(Transaction Processing Monitor)
: 항공기나 철도 예약 업무 등과 같은 온라인 트랜잭션 업무에서 트랜잭션을 처리 및 감시하는 미들웨어
- ORB(Object Request Broker)
: 객체 지향 미들웨어로 코바(CORBA) 표준 스펙을 구현한 미들웨어
- WAS(Web Application Server)
: 사용자의 요구에 따라 변하는 동적인 콘텐츠를 처리하기 위해 사용되는 미들웨어
+ 요구사항 식별 시 고려사항 : 가용성, 성능, 기술지원, 구축비용
12. UML 모델에서 사용하는 Structural Diagram에 속하지 않은 것은?
1. Class Diagram
2. Object Diagram
3. Component Diagram
4. Activity Diagram
정답 및 해설
4. Activity Diagram
* UML(Unified Modeling Language) : 원활한 의사소통을 위해 표준화한 모델링 언어
구조적 다이어그램 | 행위 다이어그램 | ||
종류 | 키워드 | 종류 | 키워드 |
클래스 | 구조 | 유스케이스 | 모델링 |
객체 | 관계 | 시퀀스 | 메시지 |
컴포넌트 | 구현, 인터페이스 | 커뮤니케이션 | 메시지 + 연관관계 |
배치 | 구현, 위치 | 상태 | 상태 변화 |
복합체 구조 | 내부 구조 | 활동 | 로직 흐름 |
패키지 | 그룹 | 상호작용 개요 | 제어 흐름 |
타이밍 | 시간제약 |
16. 객체지향 기법에서 클래스들 사이의 '부분-전체(part-whole)'관계 또는 '부분(is-a-part-of)'의 관계로 설명되는 연관성을 나타내는 용어는?
1. 일반화
2. 추상화
3. 캡슐화
4. 집단화
정답 및 해설
4. 집단화
* 관계(Relationships)
연관 Association |
집합 Aggregation |
포함 Composition |
일반화 Generalization |
의존 Dependency |
실체화 Realization |
|
정의 | 2개 이상 사물 서로 관련 | 하나의 사물, 다른 사물에 포함 | 포함되는 사물에게 영향 미침 | 사물끼리 일반적, 구체적 표현 | 연관은 있으나 영향줄 때만 연관을 유지 | 행위, 인터페이스로 서로 그룹화할 수 있는 관계 |
표기법 | ― * 다수, .. 또는 |
◇ | ◆ | 상위개념 실선 | 일시적, 점선 | 상위개념, 점선 |
예시 | 자동차-타이어 | 컴퓨터 ◇ 마우스 |
마우스 ◆ 마우스 리시버 |
토레타 포카리 - 이온음료 | 고객등급 --- 사은품 |
폰, 벽시계 --- 시간확인 |
20. 객체지향 분석 방법론 중 E-R 다이어그램을 사용하여 객체의 행위를 모델링하며, 객체식별, 구조 식별, 주체 정의. 속성 및 관계 정의, 서비스 정의 등의 과정으로 구성되는 것은?
1. Coad와 Yourdon 방법
2. Booch 방법
3. Jacobson 방법
4. Wirfs-Brocks 방법
정답 및 해설
1. Coad와 Yourdon 방법
* 객체지향 분석(OOA; Object Oriented Analysis)의 방법론
- Rumbaugh(럼바우) 방법 - 객체 모델링 기법(OMT)
: 가장 일반적으로 사용되는 방법으로 분석 활동을 객체 모델, 동적 모델, 기능 모델로 나누어 수행하는 방법
>> 객체 지향 분석 절차
- 객체 모형(객체 - 객체도),
- 동적 모형(객체의 흐름, 상태, 행위도 - 상태도),
- 기능 모형(자료 흐름, 처리과정 - 자료흐름도)
- Booch(부치) 방법
: 미시적(Micro) 개발 프로세스와 거시적(Macro) 개발 프로세스를 모두 사용하는 분석 방법
- 클래스와 객체들을 분석 및 식별하고 클래스의 속성과 연산을 정의
- Jacobson 방법
: Use Case를 강조하여 사용하는 분석 방법
- Coad와 Yourdon 방법
: E-R 다이어그램을 사용하여 객체의 행위를 모델링하며, 객체 식별, 구조 식별, 주제 정의, 속성과 인스턴스 연결 정의, 연산과 메시지 연결 정의 등의 과정으로 구성하는 기법
- Wirts-Brock 방법
: 분석과 설계 간의 구분이 없고, 고객 명세서를 평가해서 설계 작업까지 연속적으로 수행하는 기법
* 이 게시물은 시나공과 유튜버 주간컴공님의 영상을 참고로 작성되었습니다.
* 기출문제 풀이
2020/08/12 - [정보처리기사/1과목 소프트웨어 설계] - 정보처리기사 2020 1, 2회 통합 기출문제 풀이 - 1과목 ( 오답 )
2020/08/12 - [정보처리기사/2과목 소프트웨어 개발] - 정보처리기사 2020 1, 2회 통합 기출문제 풀이 - 2과목 ( 오답 )
2020/08/12 - [정보처리기사/3과목 데이터베이스 구축] - 정보처리기사 2020 1, 2회 통합 기출문제 풀이 - 3과목 ( 오답 )
2020/08/18 - [정보처리기사/4과목 프로그래밍언어 활용] - 정보처리기사 2020 1, 2회 통합 기출문제 풀이 - 4과목 ( 오답 )
2020/08/19 - [정보처리기사/5과목 정보시스템 구축관리] - 정보처리기사 2020 1, 2회 통합 기출문제 풀이 - 5과목 ( 오답 )
'정보처리기사 > 정보처리기사 필기' 카테고리의 다른 글
정보처리기사 필기 ) 선점 스케줄링 (0) | 2020.08.12 |
---|---|
정보처리기사 필기 ) 비선점 스케줄링 (0) | 2020.08.12 |
정보처리기사 필기 ) 이진 트리의 운행법, 전위, 중위, 후위 표기법 (0) | 2020.08.12 |
정보처리기사 2020 1, 2회 통합 기출문제 풀이 - 3과목 ( 오답 ) (0) | 2020.08.12 |
정보처리기사 2020 1, 2회 통합 기출문제 풀이 - 2과목 ( 오답 ) (0) | 2020.08.12 |
댓글