2020 정보처리기사 실기 요약 정리- 요구사항 확인(2)

minidoo·2020년 9월 13일
2

정보처리기사

목록 보기
6/8

UML

  1. UML
  • 객체지향 모델링 언어
  • 6개의 구조 다이어그램과 7개의 행위 다이어그램을 작성
  • 구성요소: 사물, 관계, 다이어그램
  1. 사물(Things)
  • 구조 사물: 시스템의 개념적, 물리적 요소를 표현
  • 행동 사물: 시간과 공간에 따른 요소들의 행위를 표현
  • 그룹 사물: 요소들을 그룹으로 묶어서 표현
  • 주해 사물: 부가적인 설명이나 제약조건 등을 표현
  1. 관계(Relationship)
  • 연관 관계
    ex) 사람은 회사에 대해 알고 있지만, 회사는 누구에 의해 소유되고 있는지 모름
  • 집합 관계: 서로 독립적
    ex) 부서는 다른 회사에도 속할 수 있음
  • 포함 관계: 서로 영향을 주는 관계
    ex) 특정 키로만 특정 문을 열 수 있음
  • 일반화 관계
  • 실체화 관계
  • 의존 관계: 짧은 시간 동안만 연관 유지
  1. 다이어그램(Diagram)
  • 구조 다이어그램: 클래스, 객체, 컴포넌트, 배치 다이어그램
  • 행위 다이어그램: 유스케이스, 시퀀스, 커뮤니케이션, 상태, 활동 다이어그램
  • 구현 단계에서 사용되는 다이어그램: 컴포넌트, 배치 다이어그램

유스케이스 다이어그램

  1. 시스템 / 시스템 범위
  • 외부 시스템과 구분하기 위해 내부의 유스케이스 사각형으로 묶어 시스템의 범위 표현
  1. 액터(Actor): 시스템과 상호작용하는 모든 외부 요소
  • 주액터: 사람
  • 부액터: 외부 시스템, <<Actor>>
  1. 유스케이스: 시스템이 액터에게 제공하는 서비스 또는 기능, 타원으로 표현
  2. 관계
  • 일반화 관계, 포함관계 <<include>>, 확장관계 <<extends>>
  1. 유스케이스 명세서(기술서)
  • 유스케이스 안에서의 액터와 시스템 간의 상호 작용 과정을 글로 자세히 표현한 것

활동 다이어그램

  • 자료 흐름도와 유사한 것, 사용자 관점에서 시스템이 수행하는 기능을 처리 흐름에 따라 순서대로 표현
  1. 액션 / 액티비티
  • 액션: 더 이상 분해할 수 없는 단일 작업 ex) 로그인 클릭, 주문 완료
  • 액티비티: 몇 개의 액션으로 분리될 수 있는 작업 ex) 회원 정보 입력, 주문 상품 선택, 결제 인증
  1. 시작 노드 / 종료 노드

  2. 병합 노드 ex) ‘결제 인증' 성공과 실패 후 ‘주문 완료’로 합쳐짐

  3. 포크(fork) 노드 ex) ‘주문 상품 선택'이 ‘결제 인증'과 ‘상품 재고 확인'으로 나눠짐

  4. 조인 노드 ex) ‘결제 인증'과 ‘상품 재고 확인'이 ‘주문 완료'로 합쳐짐

  5. 스윔레인(swim lane)

  • 액티비티 수행을 담당하는 주체 구분, 가로 또는 세로 실선

기능적 모델 검증

  • 기능 모델링이 끝나고 구조 모델링이나 동적 모델링으로 넘어가기 전에 기능 모델링이 제대로 작성되었는지 확인할 필요 있음
  • 유스케이스 명세서: 유스케이스명, 액터명, 정상적인 흐름, 대체(대안) 흐름

클래스 다이어그램

  1. 클래스: 클래스명, 속성, 오퍼레이션(동작)
  • 속성이나 오퍼레이션 생략 가능
  • 접근제어자
    - public(+): 어떤 클래스에서라도 접근 가능
    - private(-): 해당 클래스에서만 접근 가능
    - protected(#): 동일 패키지 내, 외부 패키지의 클래스에서 접근 가능
    - package(~): 동일 패키지 내부에 있는 클래스에서만 접근 가능
  1. 오퍼레이션
  • 클래스가 수행할 수 있는 동작으로, 함수(메소드)라고함
  1. 제약조건
  • 클래스: { } 이용
  • 오퍼레이션: 도형 안에 제약 조건을 적음
  1. 관계
  • 연관 관계, 집합 관계, 포함 관계, 일반화 관계, 실체화 관계, 의존 관계
  • 연관 클래스: 연관 관계에서 추가적으로 표현해야 할 속성이나 오퍼레이션이 있는 경우

시퀀스 다이어그램

  • 시스템이나 객체들이 메시지를 주고받으며 시간의 흐름에 따라 상호작용하는 과정을 그림으로 표현
  1. 액터: 시스템으로부터 서비스를 요청하는 외부 요소, 사람이나 외부 시스템 <<Actor>>

  2. 객체

  • 메시지를 주고 받는 주체
  • 객체명: 클래스명
  1. 라이프라인(Lifeline): 객체가 메모리에 존재하는 기간, 점선으로 표현

  2. 활성 상자: 객체가 메시지를 주고받으며 구동되고 있음을 표현

  3. 메시지

  4. 객체 소멸 (✖)

  5. 프레임: 다이어그램의 전체 또는 일부, 직사각형으로 표현


커뮤니케이션 다이어그램

  • 시퀀스 다이어그램과 같이 동작에 참여하는 객체들이 주고받는 메시지를 표현하는데, 메시지뿐만 아니라 객체들 간의 관계까지 표현
  • 링크(Link): 객체들 간의 관계 표현, 실선으로 표현

상태 다이어그램

  • 객체의 상태: 객체가 갖는 속성 값의 변화
  1. 상태(State): 객체의 상태 / 시작 상태, 종료 상태

  2. 상태 전환: 상태 사이의 흐름, 화살표로 표현

  3. 이벤트(Event): 상태에 변화를 주는 현상 / 조건, 외부 신호, 시간의 흐름

  4. 프레임: 상태 다이어그램의 범위

0개의 댓글