컴퓨터

정처기[필기] 소프트웨어 설계

JH_1 2022. 12. 25. 15:09
반응형

출처: CBT 

 

 

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

→ 순차 다이어그램은 행위 다이어그램이므로 동적이고, 순차적인 표현을 위한 다이어그램이다

 

 

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

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

온라인 업무보다는 이기종 분산 데이터 시스템의 데이터 동기를 위해 많이 사용한다.

- MOM(MessgaeOriented Middleware): 메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어이다

 

 

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

구조적 방법론(X) 애자일 방법론(O)

 

 

4. 유스케이스(Use Case)의 구성 요소 간의 관계에 포함되지 않는 것은?
     1. 연관
     2. 확장
     3. 구체화
     4. 일반화

- 유스케이스(Use Case) 다이어그램: 개발될 시스템을 이용해 수행할 수 있는 기능을 사용자의 관점에서 표현한 것

- 종류는 연관(Association), 의존(Dependency), 일반화(Generalization)이 있다. 그 중 의존 관계는 포함(Include), 확장(Extend)로 나뉘어진다.

 

 

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

차량 대여 시스템이 제공하는 모든 화면이 3초 이내에 사용자에게 보여야 한다' 는 성능에 해당 하므로 비기능적 요구사항에 해당한다.

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

 

 

6. 정보공학 방법론에서 데이터베이스 설계의 표현으로 사용하는 모델링 언어는?
     1. Package Diagram
     2. State Transition Diagram
     3. Deployment Diagram
     4. Entity-Relationship Diagram

→4 정보공학방법론

 

 

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

→미들웨어 솔루션은 미들웨어의 서비스 이용을 위해 사용자가 정보 교환 방법 등의 내부 동작을 확인할 필요가 없다

- 미들웨어에서 미들(Middle)과 소프트웨어(Software)의 합성어로, 운영체제와 해당 운영체제에서 실행되는 응용 프로그램 사이에서 운영체제가 제공하는 서비스 이외에 추가적인 서비스를 제공하는 소프트웨어이다

 

 

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

→오류 발생 해결 : 사용자가 오류에 대한 상황을 정확하게 인지할 수 있어야 함

-UI()는 넓은 의미에서 사용자와 시스템 사이에서 의사소통할 수 있도록 고안된 물리적, 가상의 매개체이다.
좁은 의미로는 정보 기기나 소프트웨어의 화면 등에서 사람이 접하게 되는 화면이다.

 

 

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

→ 오버로딩 - 같은 이름의 메소드를 중복하여 정의하는것 / 매개변수의 수나 타입은 다르게 하고, 메소드명을 동일하게 하여 재정의하는 

 

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


     1. 기능(Function)
     2. 성능(Performance)
     3. 제약 조건(Constraint)
     4. 인터페이스(Interface)

 인터페이스: 서로 다른 두 시스템이나 소프트웨어 등을 서로 이어주는 부분 또는 접속 장치를 의미

 

 

11. 객체에 대한 설명으로 틀린 것은?
     1. 객체는 상태, 동작, 고유 식별자를 가진 모든 것이라 할 수 있다.
     2. 객체는 공통 속성을 공유하는 클래스들의 집합이다.
     3. 객체는 필요한 자료 구조와 이에 수행되는 함수들을 가진 하나의 독립된 존재이다.
     4. 객체의 상태는 속성값에 의해 정의된다.

→ 클래스는 공통 속성을 공유하는 객체들의 집합이다.

 

 

12. 속성과 관련된 연산(Operation)을 클래스 안에 묶어서 하나로 취급하는 것을 의미하는 객체지향 개념은?      
     1. Inheritance
     2. Class
     3. Encapsulation
     4. Association

→ 캡슐화: 서로 관련성이 많은 데이터들과 연산들을 묶는다.

 

 

13. 애자일(Agile) 프로세스 모델에 대한 설명으로 틀린 것은?
     1. 변화에 대한 대응보다는 자세한 계획을 중심으로 소프트웨어를 개발한다.
     2. 프로세스와 도구 중심이 아닌 개개인과의 상호소통을 통해 의견을 수렴한다.
     3. 협상과 계약보다는 고객과의 협력을 중시한다.
     4. 문서 중심이 아닌, 실행 가능한 소프트웨어를 중시한다.

계획을 따르기 보다는 (변화 대응)을

 

 

14. 명백한 역할을 가지고 독립적으로 존재할 수 있는 시스템의 부분으로 넓은 의미에서는 재사용되는 모든 단위라고 볼 수 있으며, 인터페이스를 통해서만 접근할 수 있는 것은?      
     1. Model
     2. Sheet
     3. Component
     4. Cell

→ 컴포넌트
- 프로그래밍에 있어 재사용이 가능한 각각의 독립된 모듈
- 특정 기능 수행을 위해 독립적으로 분리

 

 

16. UI와 관련된 기본 개념 중 하나로, 시스템의 상태와 사용자의 지시에 대한 효과를 보여주어 사용자가 명령에 대한 진행 상황과 표시된 내용을 해석할 수 있도록 도와주는 것은?      
     1. Feedback
     2. Posture
     3. Module
     4. Hash

 

 

17. UI의 종류로 멀티 터치(Multi-touch), 동작 인식(Gesture Recognition) 등 사용자의 자연스러운 움직임을 인식하여 서로 주고받는 정보를 제공하는 사용자 인터페이스를 의미하는 것은?      
     1. GUI(Graphical User Interface)
     2. OUI(Organic User Interface)
     3. NUI(Natural User Interface)
     4. CLI(Command Line Interface)

  NUI(Natural User Interface) : 사용자의 말이나 행동으로 기기 조작하는 인터페이스

 

 

18. 소프트웨어 모델링과 관련한 설명으로 틀린 것은?      
     1. 모델링 작업의 결과물은 다른 모델링 작업에 영향을 줄 수 없다.
     2. 구조적 방법론에서는 DFD(Data Flow Diagram), DD(Data Dictionary) 등을 사용하여 요구 사항의 결과를 표현한다.
     3. 객체지향 방법론에서는 UML 표기법을 사용한다.
     4. 소프트웨어 모델을 사용할 경우 개발될 소프트웨어에 대한 이해도 및 이해 당사자 간의 의사소통 향상에 도움이 된다.

→ 모델링 작업의 결과물은 다른 모델링 작업에 영향을 줄 수 있음.

 

 

19. 유스케이스 다이어그램(Use Case Diagram)에 관련된 내용으로 틀린 것은?
     1. 시스템과 상호작용하는 외부시스템은 액터로 파악해서는 안된다.
     2. 유스케이스는 사용자 측면에서의 요구사항으로, 사용자가 원하는 목표를 달성하기 위해 수행할 내용을 기술한다.
     3. 시스템 액터는 다른 프로젝트에서 이미 개발되어 사용되고 있으며, 본 시스템과 데이터를 주고받는 등 서로 연동되는 시스템을 말한다.
     4. 액터가 인식할 수 없는 시스템 내부의 기능을 하나의 유스케이스로 파악해서는 안된다.

→ 액터:시스템과 상호작용하는 모든 외부요소로, 사람이나 외부시스템을 의미함

- 유스케이스는 사용자 측면에서의 요구사항으로, 사용자가 원하는 목표를 달성하기 위해 수행할 내용을 기술한다.

 

 

20. 소프트웨어 아키텍처 모델 중 MVC(Model-View-Controller)와 관련한 설명으로 틀린 것은?     
     1. MVC 모델은 사용자 인터페이스를 담당하는 계층의 응집도를 높일 수 있고, 여러 개의 다른 UI를 만들어 그 사이에 결합도를 낮출 수 있다.
     2. 모델(Model)은 뷰(View)와 제어(Controller) 사이에서 전달자 역할을 하며, 뷰마다 모델 서브시스템이 각각 하나씩 연결된다.
     3. 뷰(View)는 모델(Model)에 있는 데이터를 사용자 인터페이스에 보이는 역할을 담당한다.
     4. 제어(Controller)는 모델(Model)에 명령을 보냄으로써 모델의 상태를 변경할 수 있다.

→ 한 개의 모델에 대해 여러 개의 뷰를 만들 수 있음

반응형

'컴퓨터' 카테고리의 다른 글

홈페이지 만들기  (0) 2023.02.05
웹서버 구축하기2  (0) 2023.02.05
웹서버 구축하기  (1) 2023.02.04
정보처리기사[실기] 문제 풀기  (0) 2023.01.03
정보처리기사  (0) 2022.12.19