모델링
- 현실 세계를 단순화 시켜 표현하는 기법
- 개발 프로세스에서는 요구사항, 분석, 설계단계에 해당한다.
UML 이란?
- 통합 모델링 언어(Unified Modeling Language)
- 소프트웨어 공학에서 사용되는 표준화 된 범용 모델링 언어
- 다이어그램으로 그리기 위해 사용 → 시각적 표기법
종류
- 정적 : 클래스 다이어그램, 패키지 다이어그램 …
- 동적 : 유스케이스 다이어그램
소프트웨어 개발 프로세스
- 요구사항 분석 → 설계 → 구현 → 테스트 → 유지보수
UML의 V프로세스
블랙박스 테스트
- 소프트웨어의 내부 구조나 작동 원리 모르는 상태에서 동작 검사 (소프트웨어의 코드나 내부 구조 몰라도 된다)
- 사용자 입장 테스트 기법 (소프트웨어에 대한 요구사항이 결과물과 일치하는지 확인 등)
화이트박스 테스트
- 소프트웨어의 내부 구조, 동작을 자세하게 검사 (내부 소스 코드 테스트. 단사용자가 볼 수 없는 구간의 코드 테스트)
- 개발자 관점 단위 테스팅 기법
유스케이스 다이어그램
작성 순서 : 액터 식별 → 유스케이스 식별 → 관계 정의
액터 - 유스케이스
1. 연관 관계
- 액터는 유스케이스 활성화 시킨다
- 액터는 일반화, 실선 관계만 가능
유스케이스 - 유스케이스
2. 포함 관계 → 반드시 실행되어야 하는 경우
- 기능을 포함하는 유스케이스 → 기능에 포함되는 유스케이스
- 글을 쓴다 - include→ 로그인 한다 (글을 쓰기 위해 반드시 로그인 해야한다)
3. 확장 관계 → 특정 조건에 따라 기능 수행하는 경우
- 글을 쓴다 ←extend - 파일을 첨부한다 (글을 쓸 때 선택적으로 파일을 첨부한다)
4. 일반화 관계 - 빈 삼각형 화살표 / 그룹핑해서 이해관계 높임 (선을 줄이기 위해 사용)
- 추상적인 유스케이스 ← 구체적인 유스케이스
- 글을 검색한다 ← 날짜로 검색한다