Cohe

5장 요구 모델링 본문

소프트웨어 공학

5장 요구 모델링

코헤0121 2023. 3. 12. 15:50
728x90

5-1 다음은 모델링을 하는 이유를 나열한 것이다 옳은 것만 선택한 것은? ③

👉 ㄱ 복잡함을 관리하기 위하여

ㄴ 형체가 없는 소프트웨어의 구조를 시각화하기 위하여

ㄷ 고객과 커뮤니케이션하기 위하여

ㄹ 구현하기 전에 잠재적 솔루션을 실험해보기 위하여

 

  1. ㄱ ㄴ
  2. ㄱ ㄷ
  3. ㄱ ㄴ ㄷ
  4. ㄱ ㄴ ㄹ

 

5-2 시스템 뜨는 시스템을 구성하는 요소들의 동적인 행위를 표현하기 위한 UML 다이어그램이 아닌 것은? 2. ①

  1. 배치(deployment) 다이어그램
  2. 상태(state) 다이어그램
  3. 시퀀스(sequence) 다이어그램
  4. 타이밍(timmg) 다이어그램

 

5-3 UML 다이어그램의 설명이 옳지 않은 것은? 3. ①

  1. 상태(state) 다이어그램(diagram) - 클래스 사이의 메시지 교환을 시간의 흐름에 따라 표현
  2. 클래스 다이어그램(class diagram) - 시스템의 정적인 구조를 나다님
  3. 패키지 다이어그램(package diagram) - 연관된 클래스의 묶음과 그 관계를 나타냄
  4. 액티비티 다이어그램(activity diagram) - 시스템의 동적 특징을 나타냄

 

5-4 객체지향 개념에 대한 설명으로 옳지 않은 것은? 4. ②

  1. 정보은닉(information hiding)은 모듈 안에 있는 자료구조와 메서드에 사용된 알고리즘을 외부에서 직접 변경할 수 없고, 공개 인터페이스로 정의된 메서드를 통해서만 접근할 수 있는 것을 의미한다.
  2. 전체 객체에 전속되어 독립된 객체로 존재할 수 없는 부분 객체도 있는데 이와 같은 관계를 특별히 집합 (aggregation relationship)라고 한다.
  3. 리스코프 교체 원칙(LSP : Liskov Substitution Principle)은 부모 클래스와 자식 클래스 사이의 행위가 일관성이 있어야 한다는 의미이다
  4. 다형성(polymorphism)은 같은 오퍼레이션이 다른 클래스에서 다르게 동작하는 것을 말하며, 하나의 함수 이름이나 연산자가 여러 목적으로 사용될 수 있는 것을 의미한다.

 

5-5 다음 빈칸 ㄱ과 ㄴ에 들어갈 적절한 객체지향의 개념은? 5. ③

 👉 ㄱ은 타입, 즉, 개념에 대한 의도가 있는 정의이다. ㄱ은 속성과 오퍼레이션을 캡슐화 한 것이며 ㄴ은 ㄱ의 인스턴스이다.

 

  1. 객체, 클래스
  2. 메시지 객체
  3. 클래스 객체
  4. 인스턴스 메시지

 

5-6 - 다음 설명에 적합 용어는? 6.③

👉 원의 면적을 구하는 getArea()함수를 갖고 있는 객체, 직사각형의 면적을 구하는 getArea() 함수를 갖고 있는 객체, 삼각형의 면적을 구하는 getArea()함수를 갖고 있는 객체들을 getArea()라는 메시지를 받으면 수행된다. 그러나 함수에서 면적을 구하는 방법은 모두 다를 것이다.

 

  1. 캡슐화
  2. 상속성
  3. 다형성
  4. 추상화

5-7. 다음 설명을 UML 클래스 다이어그램으로 표현할 가장 적절한 관계는? 7. ③

 👉 컴퓨터는 여러 개의 부품으로 구성된다. 컴퓨터를 더 이상 사용할 수 없게 되면 그 부품들도 다른 곳에 재사용 할 수 없게 된다.

 

  1. 상속 관계
  2. 집합 관계
  3. 합성 관계
  4. 의존 관계

5-8 UML 클래스 다이어그램 빈칸에 제일 적당한 것은? 8. ④

 

5-9 다음 코드와 부합하는 클래스 간의 관계로 옳은것은? 9. ①

classPC (

private CPU cpu,

private RAM[] rams;

private ROM rom;

public PC(){

this.cpu new CPU();

this.rams new RAW[2];

this.rom : new ROM();}
....}

 

 

5-10. 다음 클래스 다이어그램에서 적용되지 않은 개념은? 10. ④

 

  1. 일반화
  2. 상속(inheritance)
  3. 다형성
  4. 합성

 

5-11 다음에 표현된 클래스 다이어그램으로 가장 잘 나타낸것은? ④

‘영업사원이 하나 이상의 주문을 받는다. 주문은 여러 주문 아이템으로 구성된다. 하나의 주문에는 한 고객이 연관되어 있다.’

 

 

5-12 다음 클래스 다이어그램 중 바르게 것은? 12. ③

  1. A의 인스턴스가 있다.
  2. B 객체는 1 또는 N개의 D객체와 관련이 있다.
  3. E와 B의 객체는 N개의 C 객체와 관련이 있다.
  4. D의 객체는 B의 하나의 객지와 관련이 있다.

5-13 UML 시퀀스 다이어그램의 구성요소로 옳지 않은 것은? 13. ①

  1. 포크(fork)
  2. 생명선(lifeline)
  3. 메시지(message)
  4. 복합적 부분(combined fragment)

5-14 시퀀스 다이어그램이 표현하는 의미를 정확히 설명한 것은? ③

  1. 유스케이스의 개관을 나타낸 것이다
  2. 클래스 사이의 연관을 나타낸 것이다
  3. 객체들이 어떻게 협력하고 있는 가를 나타낸 것이다
  4. 객체들이 어떻게 연관되어 있는 가를 나타낸 것이다.

 

5-15 다음 시퀀스 다이어그램에 표시된 메시지가 실행되는 순서는? 15. ④

  1. abcabc
  2. abcab
  3. abc
  4. ababc

 

 

5-16 커뮤니케이션 다이어그램에 표시된 assign(d:Department)의 의미를 바르게 설명 한 것은? 16.②

  1. 함수 선언은 Company 클래스 안에 있고 호출할 때 d라는 객체가 전달된다.
  2. 오퍼레이션은 Person 클래스 안에 선언되고 Company 클래스 인에서 호출된 것이다
  3. 함수는 Person, Company 클래스 모두 선언하여야 하며 단지 Company 객체에서 호출되었다.
  4. 오퍼레이션 Company 클래스 안에 선언되고 Person 클래스 인에서 호출된 것이다.

5-17 다음 상태 다이어그램에 대한 설명 중 옳은 것은? 17. ②

  1. ‘on’은 병렬 상태이다.
  2. 시스템이 시작되면 자동으로 Idle 상태가 된다.
  3. play, stop, rew는 액션이다.
  4. idle, rewinding, playing은 이벤트 들이다.

5-18 다음 중 동시에 실행되는 액티비티는 무엇인가? 18. ④

  1. a44 a66
  2. a22 a33 a55
  3. a11 a22 a77
  4. a55 a66

5-19 다음의 다이어그램에서 어떤 Accont 클래스에 구현되어야 하나? 19. ③

  1. xfer()
  2. xfer(), plus(), minus()
  3. check(), plus(), minus()
  4. xfer(), evaluation(), plus(), . minus()

 

 

5-20 UML 모델 사이에 일치하는지 크로스 체킹에 해당되는 사항이 아닌 것은? 20. ①

  1. 유스케이스 다이어그램에 나오는 유스케이스가 모두 상대 다이어그램에 상태로 표시되었는가?
  2. 시퀀스 다이어그램에서 메시지를 보내는 클래스와 받는 클래스가 다이어그램에 연결되어 있는가?
  3. 시퀀스 다이어그램의 메시지를 보내는 클래스 안에 메시지의 호출이 있는가?
  4. 상태 다이어그램의 상태 전화에 표시된 메서드가 클래스 다이어그램 안에 정의하였는가?

5-21 모델링은 어떤 작업이며 모델링 작업과 도메인 지식의 관계는 무엇인가?

모델링이란 도메인 지식을 체계화하는 과정이다.

도메인 지식이란 업무 프로세스 기능 역할 업무 규칙을 말한다.

 

 

5-22 UML을 이용한 모델링의 관점 세 가지를 들고 어떤 다이어그램이 그 관점에 속하는지 설명하라.

유스케이스 다이어 그램이 속한다.

요구를 사용 사례로 정리하고 사용한다. 관점은 기능적 관점, 구조적 관점, 동적관점으로 구성

 

5-23. UML을 이용하여 객체지향 시스템을 모델링 하는 과정을 설명하라

요구를 사용 사례로 정리 유스케이스 다이어 그램 작성

클래스 후보를 찾아내고 개념적인 객체 모형을 작성

사용 사례를 기초하여 순서 다이어그램을 작성

클래스의 속성 오퍼레이션 및 클래스 사이의 관계를 찾아 객체 모형을 완성

상태 다이어 그램이나 액티비티 다이어 그램 등 다른 다이어 그램을 추가하여 UML 모델을 완성

서브 시스템을 파악하고 전체 시스템 구조를 설계

적당한 객체를 찾아내거나 커스텀화 또는 객체를 새로 설계

 

5-24. 다음 나열한 것을 클래스가 될 것과 객체가 될 것을 구별하라. 또한 그 이유는 무엇인가?

  1. 휴대폰의 받은 문자함
  2. 어제 아침 홍길동에게서 받은 문자
  3. 휴대폰 전화번호부에 있는 전화번호
  4. 전화 삭제
  5. 휴대폰에 저장한 일정

 

5-25. 다음 문장에 담긴 의미를 클래스 다이어그램으로 모델링하라. 이 모델이 왜 적합한지 그 이유를 쓰라.

(1) 파일은 레코드로 구성된다.

(2) 디렌토리는 일반 파일과 같다.

5-26 다음 유스케이스 명세에 담긴 의미를 시퀀스 다이어 그램으로 작성하라.

👉 고객이 카탈로그를 탐색하고 구매할 품목을 선택한다. 고객이 체크아웃 한다. 고객이 운송정보(주소, 익일 또는 3일 배달)를 입력한다. 시스템은 전체 가격 정보를 제공한다. 고객이 신용카드 정보를 입력한다. 시스템은 구매를 승인한다. 시스템은 즉시 판매를 확인한다. 시스템이 고객에게 확인 이메일을 보낸다.

 

 

5-27 현금 자동인출기(ATM)을 위한 시스템의 클래스를 찾아내고 클래스 다이어그램을 그리라.

 

5-28 레스토랑에 가면 홀에서 서비스하는 종업원들과 주방에서 일하는 조리사들이 있다. 고객이 메뉴를 보고 주문하면 홀 종업원이 주문을 받아 조리사에게 알리고 음식이 완성되면 홀 종업원을 통하여 고객에게 전달되는 과정을 시퀀스 다이어그램으로 그리라.

 

5-29 고객이 현금을 인출하는 과정을 동적으로 모델링 하려고 한다 27에서 기술한 현금 자동인출기의 클래스 다이어그램을 이용하여 시퀀스 다이어그램을 그려라

 

5-30 다음은 은행 계좌의 상태 변화에 대한 설명이다 이 내용을 상태 다이어 그램으로 그려라.

👉 "계좌(Account)는 개설(open), 정지(fronzen), 휴면(inactive), 마이너스 잔고(overdrawn), 폐쇄(closed) 상태가 있다. 정지 상태는 문제가 있어 강제로 정지한 경우이며 5년 이상 사용하지 않는 경우에는 휴먼 상태가 된다. 잔고(balance)가 0원이하면 마이너스 잔고 상태가 된다. 예금의 출금과 입금은 개설, 마이너스 잔고 상태만 가능하며, 잔고체크는 패쇄이외의 모든 상태에서 가능하다. 개설 및 휴면상태에서 계좌를 폐쇄할 수 있다.

 

'소프트웨어 공학' 카테고리의 다른 글

7장 아키텍처 설계와 패턴  (1) 2023.03.12
6장 설계 원리  (2) 2023.03.12
4장 요구분석 연습문제  (0) 2023.03.01
4장 설계 원리  (1) 2023.03.01
3장 프로젝트 관리와 계획 연습문제  (0) 2023.03.01