/ EXITEM, 정처기

정보처리기사 기출문제 20220424_1

정보처리기사 기출문제 부시기 20220424

합격을 기원합니다.

모든 자료는 전자문제집 CBT에서 제공됩니다.

1과목 : 소프트웨어 설계 (1번 ~ 10번)

1. UML 다이어그램 중 순차 다이어그램에 대한 설명으로 틀린것은?

  1. 객체 간의 동적 상호작용을 시간 개념을 중심으로 모델링 하는 것이다.
  2. 주로 시스템의 정적 측면을 모델링하기 위해 사용한다.
  3. 일반적으로 다이어그램의 수직 방향이 시간의 흐름을 나타낸다.
  4. 회귀 메시지(Self-Message), 제어블록(Statement block) 등으로 구성된다.

문제 해설

  • 순차 다이어그램은 행위 다이어그램이므로 동적이고, 순차적인 표현을 위한 다이어그램이다. [해설작성자 : 두목넷]

내 공부

  • UML 다이어그램이란?
    • UML다이어그램
    • 정의 : UML (Unified Modeling Language), 통합 모델링 언어라는 뜻으로 객체 지향 소프트웨어 엔지니어링 분야의 표준화된 범용 모델링 언어를 말합니다.
  • 순차 다이어그램이란?
    • 시스템의 객체 간 상호작용을 시간적으로 표현합니다.
    • 객체 간의 메시지 교환, 객체의 상태 변화, 예외 상황 등을 보여줍니다.

2. 메시지 지향 미들웨어(Message-Oriented Middleware, MOM)에 대한 설명으로 틀린 것은?

  1. 느리고 안정적인 응답보다는 즉각적인 응답이 필요한 온라인 업무에 적합니다.
  2. 독립적인 애플리케이션을 하나의 통합된 시스템으로 묶기 위한 역할을 한다.
  3. 송신측과 수신측의 연결 시 메시지 큐를 활용하는 방법이 있다.
  4. 상이한 애플리케이션 간 통신을 비동기 방식으로 지원한다.

문제 해설

MOM (Message Oriented Middleware)

  • 메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어이다.
  • 온라인 업무보다는 이기종 분산 데이터 시스템의 데이터 동기를 위해 많이 사용한다. [해설작성자 : 두목넷]

MOM은 즉각적인 응답을 원하는 경우가 아니라 다소 느리고 안정적인 응답을 필요로 하는 경우에 많이 사용됩니다. [해설작성자 : 세유니에용]

내 공부

  • 미들웨어란?
    • 미들웨어는 소프트웨어 시스템에서 애플리케이션과 운영체제 사이, 또는 애플리케이션과 데이터베이스 사이 등 다른 소프트웨어 구성 요소 사이에서 상호 작용을 지원하는 소프트웨어입니다.
    • 주로 분산 시스템에서 사용되며, 서로 다른 애플리케이션 및 컴포넌트 간의 통신, 데이터 교환, 트랜잭션 관리, 보안, 인증, 로깅 등의 작업을 처리할 수 있습니다. 이를 통해 애플리케이션 개발 및 운영의 효율성과 유연성을 높일 수 있습니다.
    • 대표적인 미들웨어에는 웹 서버와 애플리케이션 서버, 메시지 브로커, 데이터베이스 연결 라이브러리 등이 있습니다. 이러한 미들웨어는 여러 시스템에서 재사용 가능하며, 다양한 플랫폼에서 동작할 수 있도록 설계되어 있습니다.
  • 동기 vs 비동기
  • MOM 이란?

3. 익스트림 프로그래밍에 대한 설명으로 틀린 것은?

  1. 대표적인 구조적 방법론 중 하나이다.
  2. 소규모 개발 조직이 불확실하고 변경이 많은 요구를 접하였을 때 적절한 방법이다.
  3. 익스트림 프로그래밍을 구동시키는 원리는 상식적인 원리와 경험을 최대한 끌어올리는 것이다.
  4. 구체적인 실천 방법을 정의하고 있으며, 개발 문서 보다는 소스코드에 중점을 둔다.

문제 해설

  1. 구조적인 방법론이 아니라 애자일 방법론 중 하나이다. [해설작성자 : 지나가는 행인]

내 공부

4. 유스케이스(Use Case)의 구성 요소 간의 관계에 포함되지 않는 것은?

  1. 연관
  2. 확장
  3. 구체화
  4. 일반화

문제 해설

유스케이스(Use Case)의 구성 요소 간의 관계

  • 연관관계(Association) : 유스케이스와 액터간의 상호작용이 있음을 표현한다.
  • 포함관계(Include) : 하나의 유스케이스가 다른 유스케이스의 실행을 전제로 할 때 형성되는 관계이다.
  • 확장관계(Extend) : 확장 기능 유스케이스와 확장 대상 유스케이스 사이에 형성 되는 관계이다.
  • 일반화관계(Generalization) : 유사한 유스케이스 또는 액터를 모아 추상화한 유스케이스 또는 액터와 연결시켜 그룹을 만들어 이해도를 높이기 위한 관계이다.
    [해설작성자 : 두목넷]

내 공부

5. 요구사항 분석에서 비기능적(Nonfunctional) 요구에 대한 설명으로 옳은 것은?

  1. 시스템의 처리량(Throughput), 반응 시간 등의 성능 요구나 품질 요구는 비기능적 요구에 해당하지 않는다.
  2. ‘차량 대여 시스템이 제공하는 모든 화면이 3초 이내에 사용자에게 보여야 한다’는 비기능적 요구이다.
  3. 시스템 구축과 관련된 안전, 보안에 대한 요구사항들은 비기능적 요구에 해당하지 않는다.
  4. ‘금융 시스템은 조회, 인출, 입금, 송금의 기능이 있어야 한다’는 비기능적 요구이다.

문제 해설

기능적 요구사항 vs 비기능적 요구사항

  • 기능적 요구사항 : 시스템이 실제로 어떻게 동작하는지에 관점을 둔 요구사항
  • 비기능적 요구사항 : 시스템 구축에 대한 성능, 보안, 품질, 안정 등에 대한 성능, 보안, 품질, 안정성 등으로 실제 수행에 보조적인 요구사항

오답 조심

  • ‘차량 대여 시스템이 제공하는 모든 화면이 3초 이내에 사용자에서 보여야 한다’는 성능에 해당 하므로 비기능적 요구사항에 해당한다.
    [해설작성자 : 두목넷]

내 공부

기능적 요구사항(Functional Requirements)

  • 시스템이 수행해야 하는 작업 또는 기능에 대한 명세입니다.
  • 주로 시스템의 사용자가 원하는 기능과 관련됩니다.
  • 예를 들어, ‘로그인 페이지에서 사용자 이름과 비밀번호를 입력하고 로그인 버튼을 누르면 시스템이 로그인하고 사용자의 개인정보를 보여준다.’와 같은 요구사항이 있을 수 있습니다.

비기능적 요구사항(Non-functional Requirements)

  • 시스템의 성능, 안전성, 보안성, 유지보수성, 이식성 등과 같은 기능 외에 요구사항을 나타냅니다.
  • 주로 시스템의 품질과 관련되며, 사용자가 직접적으로 경험하는 것보다는 보다 기술적인 측면에 대한 것입니다.
  • 예를 들어, ‘시스템은 1000명 이상의 동시 사용자를 처리할 수 있어야 한다.’ 와 같은 요구사항이 있을 수 있습니다.

6. 정보공학 방법론에서 데이터베이스 설계의 표현으로 사용하는 모델링 언어는?

  1. Package Diagram
  2. State Transition Diagram
  3. Deployment Diagram
  4. Entity-Relationship Diagram

문제 해설

1,2,3 UML다이어그램 4 정보공학방법론
[해설작성자 : 공부]

내 공부

패키지, 상태 전이, 배치 다이어그램 : UML 다이어그램
정보공학방법론 이란?
Entity-Relationship Diagram 이란?

정보공학방법론과 ERD의 관계

정보공학방법론에서 ERD는 시스템 분석과 설계 단계에서 데이터 모델링을 수행하는 데에 활용됩니다.
요구사항 수집과 분석을 통해 시스템의 구조를 파악하고, 이를 기반으로 데이터 모델링을 수행하는 데에 사용됩니다.
데이터 모델링은 시스템에서 사용될 데이터를 구조화하고, 이를 표현하는 모델을 만드는 것입니다.
이를 통해 시스템의 데이터 구조와 관계를 명화히하고, 데이터의 무결성과 일관성을 유지할 수 있습니다.

따라서, 정보공학 방법론에서는 ERD를 활용하여 시스템의 데이터 모델링을 수행하며, 이를 기반으로 시스템의 구조를 설계합니다.

7. 미들웨어(Middleware)에 대한 설명으로 틀린 것은?

  1. 여러 운영체제에서 응용 프로그램들 사이에 위치한 소프트웨어이다.
  2. 미들웨어의 서비스 이용을 위해 사용자가 정보 교환 방법 등의 내부 동작을 쉽게 확인할 수 있어야 한다.
  3. 소프트웨어 컴포넌트를 연결하기 위한 준비된 인프라 구조를 제공한다.
  4. 여러 컴포넌트를 1대1, 1대 다, 다대 다 등 여러 가지 형태로 연결이 가능하다.

문제 해설

미들웨어

  • 클라이언트와 서버 간의 통신을 담당하는 시스템 소프트웨어이다.
  • 이기종 하드웨어, 소프트웨어, 네트워크, 프로토콜, PC 환경, 운영체제 환경 등에서 시스템 간의 표준화된 연결을 도와주는 소프트웨어이다.
  • 표준화된 인터페이스를 통하여 시스템 간의 데이터 교환에 있어 일관성을 제공한다.
  • 운영체제와 애플리케이션 사이에서 중간 매개 역할을 하는 다목적 소프트웨어이다.

오답노트

  • 미들웨어 솔루션은 미들웨어의 서비스 이용을 위해 사용자가 정보 교환 방법 등의 내부 동작을 확인할 필요가 없다.
    [해설작성자 : 행복한버거]

내 공부

이기종 컴퓨팅이란?

  • 하나 이상의 프로세서 또는 코어를 사용하는 시스템을 가리킨다.
  • 이러한 시스템들은 특정한 작업을 수행하기 위해 동일한 종류의 프로세서를 장착하지 않고 유사하지 않은 코프로세스를 장착함으로써 성능 도는 에너지 효율성을 얻는다.

코프로세스란?

  • CPU의 기능을 보충하기 위해 사용되는 컴퓨터 프로세스 입니다.

8. UI의 설계 지침으로 틀린 것은?

  1. 이해하기 편하고 쉽게 사용할 수 있는 환경을 제공해야 한다.
  2. 주요 기능을 메인 화면에 노출하여 조작이 쉽도록 하여야 한다.
  3. 치명적인 오류에 대한 부정적인 사항은 사용자가 인지할 수 없도록 한다.
  4. 사용자의 직무, 연령, 성별 등 다영한 계층을 수용하여야 한다.

문제 해설

  • 사용자 중심 : 사용자가 이해하기 쉽고 편하게 사용할 수 있는 환경을 제공해 실 사용자에 대한 이해가 바탕이 되어야 함
  • 일관성 : 버튼이나 조작 방법을 사용자가 기억하기 빠르고 쉽게 습득할 수 있도록 설계해야 함
  • 단순성 : 조작 방법은 가장 간단하게 작동되도록 하여 인지적 부담 최소화
  • 결과 예측 가능 : 작동시킬 기능만 보고도 결과 예측이 가능해야 함
  • 가시성 : 주요 기능을 메인 화면에 노출하여 쉬운 조작이 가능해야 함
  • 표준화 : 디자인을 표준화하여 기능 구조의 선행 학습 이우 쉽게 사용 가능해야 함
  • 접근성 : 사용자의 직무, 연령, 성별 등이 고려된 다양한 계층을 수용해야 함
  • 명확성 : 사용자가 개념적으로 쉽게 인지해야 함
  • 오류 발생 해결 : 사용자가 오류에 대한 상황을 정확하게 인지할 수 있어야 함
    [해설작성자 : pdh6941]

내 공부
1번 사용자 중심
2번 가시성
4번 접근성

9. 객체지향 개념에서 다형성(Polymorphism)과 관련한 설명으로 틀린 것은?

  1. 다형성은 현재 코드를 변경하지 않고 새로운 클래스를 쉽게 추가할 수 있게 한다.
  2. 다형성이란 여러 가지 형태를 가지고 있다는 의미로, 여러 형태를 받아들일 수 있는 특징을 말한다.
  3. 메소드 오버라이딩(Overriding)은 상위 클래스에서 정의한 일반 메소드의 구현을 하위 클래스에서 무시하고 재정의할 수 있다.
  4. 메소드 오버로딩(Overlodaing)의 경우 매개 변수 타입은 동일하지만 메소드명을 다르게 함으로써 구현, 구분할 수 있다.

문제 해결

오버로딩 - 같은 이름의 메소드를 중복하여 정의하는 것
[해설작성자 : 지나가는 행인]

오버로딩 - 한 클래스 내에서 메서드의 이름은 동일하지만 매개변수의 수나 타입다르게 하여 재정의 하는 것
오버라이딩 - 상속관계에서만 발생, 슈퍼클래스의 메서드를 서브클래스에서도 동일한 메서드를 재정의 하는 것
[해설작성자 : 칼방이]

내 공부

10. 소프트웨어 개발 영역을 결정하는 요소 중 다음 사항과 관계있는 것은?

  • 소프트웨어에 의해 간접적으로 제어되는 장치와 소프트웨어를 실행하는 하드웨어
  • 기존의 소프트웨어와 새로운 소프트웨어를 연결하는 소프트웨어
  • 순서적 연산에 의해 소프트웨어를 실행하는 절차
  1. 기능(Function)
  2. 성능(Performance)
  3. 제약 조건(Constraint)
  4. 인터페이스(Interface)

문제 해설
인터페이스 : 서로 다른 두 시스템이나 소프트웨어 등을 서로 이어주는 부분 또는 접속 장치를 의미 [해설작성자 : comcbt.com 이용자]