정보처리기사 공부

<실기> UI 설계

0_TLS 2025. 3. 12. 22:19

UML : 객체 지향 소프트웨어 과정에서 산출물을 명세화, 시각화, 문서화할 때 사용되는 모델링 기술과 방법론을 통합해서 만든 표준화된 범용 모델링 언어

 

UML 구성 요소

  • 사물(Things) : 추상적인 개념, 주제를 나타내는 요소(명사 또는 동사)
  • 관계(Relationships) : 사물의 의미를 확장하고 명확히 하는 요소(형용사 또는 부시)
  • 다이어그램(Diagrams) : 사물과 관계를 모아 그림으로 표현한 형태(형식과 목적에 따라 9가지로 정의)

UML 다이어그램

구조적 다이어그램(Structural Diagram) / 정적 다이어그램(Static Diagram) : 클객 컴배 복패

  • 클래스(Class) : 클래스의 속성 및 연산, 클래스 간 정적인 관계 표현(클래스와 클래스, 클래스의 속성 사이 관계)
  • 객체(Object) : 클래스에 속한 사물(객체)들, 객체와 객체 사이 관계, 연관된 모든 인스턴스
  • 컴포넌트(Component) : 컴포넌트와 그들 사이의 관계, 실질적 프로그래밍 작업에 사용
  • 배치(Deployment) : 종속성, 물리적 요소들의 위치
  • 복합체 구조(Composite Structure) : 복합 구조를 갖는 경우 그 내부 구조를 표현
  • 패키지(Package) : 모델 요소들을 그룹화한 패키지들의 관계를 표현

행위적 다이어그램(Behavioral Diagram) / 동적 다이어그램(Dynamic Diagram)

  • 유스케이스(Usecase) : 사용자 관점, 시스템의 기능적 요구 정의
  • 시퀀스(Sequence) : 객체 간 동적 상호작용을 시간적 개념을 중심으로 메시지 흐름으로 표현(교류 다이어그램의 일종)
  • 커뮤니케이션(Communication) : 동작에 참여하는 객체들이 주고받는 메시지, 객체 간의 연관
  • 상태(State) : 하나의 객체가 자신이 속한 클래스의 상태 변화 혹은 다른 객체와의 상호 작용에 따라 상태가 어떻게 변화하는지 표현
  • 활동(Activity) : 객체의 처리 로직이나 조건에 따른 처리의 흐름으로 순서대로 표현
  • 타이밍(Timing) : 객체 상태 변화와 시간 제약을 명시적으로 표현

UML 스테레오 타입

<<include>> : 하나의 유스케이스가 어떤 시점에 반드시 다른 유스케이스를 실행

<<extend>> : 하나의 유스케이스가 어떤 시점에 다른 유스케이스를 실행할 수도 있고, 아닐수도 있고

<<interface>> : 모든 메서드가 추상 메서드. 추상메서드와 상수만으로 구성

 

클래스 간의 관계

1. 연관 관계(Association) : 서로 개념적으로 연결. 2개 이상의 사물이 서로 관련되어 있는 상태

2. 의존 관계(Dependency) : 서로 연관은 있으나 필요에 따라 서로에게 영향을 주는 짧은 시간 동안만 연관을 유지

3. 일반화 관계(Generalization) : 하나의 사물이 다른 사물에 비해 더 일반적인지 구체적인지 표현(상속관계)

4. 실체화 관계(Realization) : 자식 클래스가 추상 메서드를 구현할 때. 사물이 해야하거나 할 수 있는 기능

5. 포함 관계(Composition) : 포함하는 사물의 변화가 포함하는 사물에게 영향을 미치는 관계. 영구적이고 집합관계보다 더 강함.

6. 집합 관계(Aggregation) : 하나의 객체에 여러개의 독립적인 객체들이 구성. 하나의 사물이 다른 사물에 포함되어 있음.

순서대로 연관, 일반화, 실체화, 의존, 집합, 포함 관계

 

유스케이스 다이어그램

유스케이스, 액터, 시스템, 시스템 시나리오

-포함 관계 : 유스케이스를 수행할 때 다른 유스케이스가 반드시 수행되는 관계 <<include>>

-확장 관계 : 특정 조건일 때 한 유스케이스로만 확장되는 관계 <<extend>>

-일반화 관계 : 추상적인 액터와 좀 더 구체적인 액터 사이에 맺어주는 관계 

 

시퀀스 다이어그램

객체, 생명선, 실행, 메시지, 회귀 메시지

고객, 로그인 인증, 상품 데이터베이스, 장바구니가 객체

로그인 시도, [OK] 상품 조회 ... 가 메시지

세로 점선이 생명선

중간에 있는 세로 사각형이 실행(오퍼레이션이 실행되는 시간을 의미. 직사각형이 길수록 오래걸림)

3:상품 추천에 다시 돌아가는 화살표가 회귀 메시지

 

패키지 다이어그램

패키지, 의존 관계

폴더 모양이 패키지

하나의 패키지가 다른 패키지를 사용하는 관계 : 의존 관계

 

활동 다이어그램

시작점, 전이, 액션/액티비티, 종료점, 조건(판단) 노드, 병합 노드, 포크 노드, 조인 노드, 구획면

 

상태 다이어그램

상태, 시작 상태, 종료 상태, 전이, 전이 조건

 

커뮤니케이션 다이어그램

액터, 객체, 링크, 메시지

 

컴포넌트 다이어그램

컴포넌트, 인터페이스, 의존 관계


예제

1. ()안에 들어갈 용어를 쓰시오.

- 추상화, 하나의 사물이 다른 사물에 포함되어 있는 관계 표현 : (집합 관계(Aggregation))

- 개념화, 하나의 사물이 다른 사물에 비해 더 일반적인지 구체적인지를 표현 : (일반화 관계(Generalization))

 

2. UML 유형 중 (  ) 다이어그램은 속성, 메서드를 포함하는 다이어그램이다.

: 클래스

 

3. 설명에 대한 답을 쓰시오.

- UML의 구성 요소 중 사물의 의미를 확장하고 명확히 하는 요소로 사물과 사물을 연결하여 표현하는 요소 :  관계

- 공통의 속성, 연산(메서드), 관계, 의미를 공유하는 객체들의 집합 : 클래스

- 기능을 모아놓은 클래스로 추상 메서드와 상수만을 포함하는 추상 클래스로 구현하는 모든 클래스에 대해 특정한 메서드가 반드시 존재하도록 강제하는 역할을 하는 클래스 : 인터페이스

 

4. (    ) 다이어그램은 시스템을 구성하는 물리적인 컴포넌트와 그들 사이의 의존 관계를 나타내는 다이어그램이다.

실질적 프로그래밍 작업에 사용한다.

=> 컴포넌트

'정보처리기사 공부' 카테고리의 다른 글

<실기> 데이터 입출력 구현  (1) 2025.03.15
<실기> 서버 프로그램 구현  (1) 2025.03.13
<실기> SQL 응용  (1) 2025.03.12
정보시스템 구축관리  (0) 2025.02.05
소프트웨어 설계  (0) 2025.02.05