UML - accidentlywoo/sec GitHub Wiki

UML

메소드 표기법

public -> + return type -> 위치 이동

public String getName(){}

-UML 표기법-> +getName() : String

public String getName(){}

-UML 표기법-> +getName() : String

public String setName(String name){}

-UML 표기법-> +getName(String) : (void)

필드 표기법

class Person{
 private String id;
 private String pwd;
}

--UML 표기법->

-id:String

-pwd:String

표기법 정리

  • +: public
  • #: protected
  • -: private
  • 밑줄 : static
  • 스테레오 타입 : <<>> ex) <<interface>>

관계 표시

  • 의존관계(사용관계) 표시 : 실선과 열린 화살촉 >
  • 상속관계 표시 : 점선과 막힌 삼각형 ▽

Eclipse에서 사용하는 UML Tool

https://objectaid.com/download

new -> other -> ObjectAid UML Diagram / class Diagram 사용!

이클립스 Project Explorer에서 .java파일을 드레그 앤 드롭을 하면 UML을 자동으로 그려준다. (완벽하지 않게 때문에 항상 확인이 필요함)

리벌스 엔지니어링 / 포워드 엔지니어링

리벌스 엔지니어링 : 이미 만들어진 클래스으와 구조를 도식화해준다.

ObjectAid는 리벌스 엔지니어링만 지원한다.

유스케이스

액터가 요구하는 요구사항의 단위

액터 사이의 일반화 관계

  • 포함 관계 : 반드시 포함하고 있다. : include

UserCase1 --include--> UserCase2

UserCase1에 UserCase2가 반드시 포함한다.

흐름, 순서 X

  • 확장 관계 : 선택적으로 포함하고 있다. : extends

UserCase3 <--extends-- UserCase4

UserCase3은 UserCase4를 선택적으로 포함하고있다.

유스케이스 다이어그램 관계도를 그릴때, 왼쪽에 사용자[시작] 오른쪽에는 사용하는 외부 시스템을 그리자

유스케이스는 흐름, 순서를 표현하면 안된다.

작업 절차

  1. 요구사항정의

  2. 분석 : UsecaseDiagram

  3. 설계 : Usecase 별 MVC(EBC : Entity Boundary Controll_Class)

  • ClassDiagram
  • SquenceDiagram :

Combined Fragment : interactionOperator alt[if-elseif-...]/opt[if]

  1. 구현 : 세부클래스
⚠️ **GitHub.com Fallback** ⚠️