-
시퀀스 다이어그램, 액티비티 다이어 그램, 상태 다이어그램, 협력 다이어그램전산학/소프트웨어공학 2024. 8. 23. 02:57728x90반응형
시퀀스 다이어그램, 액티비티 다이어그램, 상태 다이어그램, 협력 다이어그램은 UML(Unified Modeling Language)에서 객체 지향 시스템을 모델링하기 위한 다양한 도구입니다. 각각의 다이어그램은 시스템의 다른 측면을 시각화하는 데 사용됩니다. 예시를 들어 설명하겠습니다.
1. 시퀀스 다이어그램 (Sequence Diagram)
설명: 시퀀스 다이어그램은 객체 간의 메시지 교환을 시간 순서에 따라 나타냅니다. 주로 시스템의 동작을 설명하거나 특정 시나리오를 문서화하는 데 사용됩니다.
예시: 온라인 쇼핑몰에서 고객이 상품을 구매하는 시나리오
Customer | ShoppingCart | PaymentService | OrderService ----------------------------------------------------------------------------------- | | | | | addItem(item) | | | |----------------->| | | | | | | | | processPayment() | | | |----------------------->| | | | | | | | | processOrder() | | | |-------------------->| | | | | | | | | | | | orderConfirmation()| | | |<--------------------| | | | | | | confirmOrder() | | | |<-----------------------| | | | | |
- Customer: 고객 객체
- ShoppingCart: 장바구니 객체
- PaymentService: 결제 서비스 객체
- OrderService: 주문 서비스 객체
이 다이어그램은 고객이 장바구니에 아이템을 추가하고 결제를 처리한 후 주문이 생성되는 과정에서 객체들 간의 상호작용을 보여줍니다.
2. 액티비티 다이어그램 (Activity Diagram)
설명: 액티비티 다이어그램은 시스템의 흐름을 보여주는 다이어그램으로, 특정 작업 또는 프로세스의 단계들을 시각화합니다. 흐름과 분기, 병합을 설명하는 데 유용합니다.
예시: 온라인 쇼핑몰에서 고객이 상품을 구매하는 과정
[Start] --> [Add Items to Cart] --> [Proceed to Checkout] --> [Enter Shipping Address] --> [Select Payment Method] --> [Review Order] --> [Place Order] --> [Payment Processing] --> [Order Confirmation] --> [End]
- Start: 프로세스 시작
- Add Items to Cart: 장바구니에 아이템 추가
- Proceed to Checkout: 체크아웃 진행
- Enter Shipping Address: 배송 주소 입력
- Select Payment Method: 결제 방법 선택
- Review Order: 주문 검토
- Place Order: 주문하기
- Payment Processing: 결제 처리
- Order Confirmation: 주문 확인
- End: 프로세스 종료
이 다이어그램은 구매 프로세스의 단계와 각 단계 간의 흐름을 나타냅니다.
3. 상태 다이어그램 (State Diagram)
설명: 상태 다이어그램은 객체의 상태와 상태 간의 전이를 나타냅니다. 주로 객체의 생명주기와 상태 변화에 대해 설명할 때 사용됩니다.
예시: 주문의 상태 변화를 나타내는 상태 다이어그램
[Order Placed] --> [Processing] | | | | V V [Shipped] [Cancelled] | | V [Delivered]
- Order Placed: 주문이 접수된 상태
- Processing: 주문이 처리 중인 상태
- Shipped: 주문이 발송된 상태
- Cancelled: 주문이 취소된 상태
- Delivered: 주문이 배송된 상태
이 다이어그램은 주문이 다양한 상태를 거치면서 어떻게 변화하는지를 보여줍니다.
4. 협력 다이어그램 (Collaboration Diagram)
설명: 협력 다이어그램(또는 커뮤니케이션 다이어그램)은 객체 간의 상호작용과 관계를 나타냅니다. 객체들이 서로 어떻게 협력하는지를 설명하는 데 사용됩니다.
예시: 온라인 쇼핑몰에서 고객이 상품을 구매하는 과정
+-------------------+ +---------------------+ | Customer | | ShoppingCart | +-------------------+ +---------------------+ | - addItem(item) | | - processPayment() | | - checkout() | | | +-------------------+ +---------------------+ | | | calls | calls | | v v +-------------------+ +---------------------+ | PaymentService | | OrderService | +-------------------+ +---------------------+ | - processOrder() | | - confirmOrder() | | - sendConfirmation()| | | +-------------------+ +---------------------+
- Customer: 고객 객체
- ShoppingCart: 장바구니 객체
- PaymentService: 결제 서비스 객체
- OrderService: 주문 서비스 객체
이 다이어그램은 객체 간의 협력과 메시지 전달을 보여줍니다. 고객이 장바구니를 통해 결제를 요청하면, 장바구니는 결제 서비스를 호출하고, 결제 서비스는 주문 서비스를 호출하여 최종 주문을 처리하는 과정입니다.
각 다이어그램은 시스템의 다양한 측면을 시각화하고 문서화하는 데 도움을 주며, 복잡한 시스템을 이해하는 데 유용한 도구들입니다.
728x90반응형'전산학 > 소프트웨어공학' 카테고리의 다른 글