IT/정보처리기사실기 공부

[정보처리기사실기] 활동 다이어그램, 클래스 다이어그램

phobi-k 2020. 9. 28. 00:40

1. 활동(Activity) 다이어그램 (B)

  • 활동 다이어그램 개념
    • 자료 흐름도와 유사하다. 사용자의 관점에서 시스템이 수행하는 기능을 순서대로 표현한 것
    • 유스케이스 사이에서 발생하는 복잡한 처리의 흐름을 명확하게 표현할 수 있다.
  • 활동 다이어그램 구성 요소: 액션, 액티비티, 노드, 스윔레인
    • 액션 : 더 이상 분해할 수 없는 단일 작업
    • 액티비티 : 몇 개의 액션으로 분리될 수 있는 작업 
    • 제어 흐름 : 실행의 흐름
    • 노드
      • 시작 노드 : 액션이나 액티비티가 시작됨. 하나만 존재. 검은색 원 ●
      • 종료 노드 : 흐름이 종료됨. 일반적으로 하나. 검은색 원을 포함한 원
      • 조건 노드 : 조건에 따라 흐름 분리. 들어오는 제어 흐름은 한 개이고 나가는 건 여러 개. 마름모. ◇ 
      • 병합 노드 : 여러경로의 흐름이 하나로 합쳐짐. 마름모 ◇. 여러 개 들어오고 나가는 건 한 개
      • 포크(Fork) 노드 : 액티비티의 흐름 분리. 굵은 가로선, 하나의 흐름 들어오고 나가는 거 여러 개
      • 조인(Join) 노드: 액티비티의 흐름 합쳐짐. 굵은 가로선
    • 스윔레인 : 액티비티 수행을 담당하는 주체 구분. 가로 또는 세로 실선!!

활동다이어그램 한눈에 보기


2. 클래스 다이어그램 (A)

  • 정적 모델링의 개념: 사용자가 요구한 기능을 구현하는데 필요한 자료들의 논리적인 구조
    • 객체들을 클래스로 추상화하여 표현한다.
    • UML을 이용한 정적 모델링의 대표: 클래스 다이어그램
  • 클래스 다이어그램의 개념
    • 구조적 다이어그램
    • 코딩에 필요한 객체의 속성, 함수 등의 정보를 잘 표현하고 있어 시스템 모델링에 자주 사용
    • 클래스, 제약조건, 관계 등으로 구성

  • 클래스
    • 클래스의 이름, 속성, 오퍼레이션을 표기 (속성, 오퍼레이션 생략 가능 -> 구획선 안 그려도 됨)
    • 속성 : 변수
      • 일반 형식
        • [접근제어자] 속성명 : 자료형[다중성][=초기값] ([]은 생략 가능)
        • - 선수코드 : String
        • - 포지션 : String[2]
        • - 경기수 : int = 0
        • - 경력 : int {경력 > 0} ({} 는 제약조건)
    • 오퍼레이션: 함수
      • 일반 형식
        • [접근제어자]오퍼레이션명(매개변수:자료형 ...) : 반환자료형
        • + 연봉조정(승점:int) : int
  • 연관 클래스 : 두 클래스가 연관 관계에 있을 때 추가적으로 표현해야 할 속성, 오퍼레이션이 있는 경우 사용
    • 두 클래스의 선의 가운데로부터 점선을 연관 클래스로 이어 표시
  • 제약조건 
    • {} : 클래스 안에 제약조건 넣을 때
    • 주석 도형 안에 제약조건 적고 점선으로 연결 : 오퍼레이션에 넣을 때
  • 관계 : 클래스와 클래스의 연관성
    • 연관 관계 : 
    • 집합 관계 : 집합 관계에 있는 클래스의 객체 변수를 매개변수로 사용할 수 있다.
    • 포함 관계 : 포함 관계에 있는 클래스를 이용아여 생성된 객체 변수를 이요하여 새로운 객체 변수를 생성할 수 있다. 
    • 일반화 관계 : extends (실체화 관계 : implements)
    • 의존 관계