활동 다이어그램 활동 다이어그램의 UML 표기법 활동 다이어그램의 용도 활동 다이어그램의 예 유스케이스로부터 활동 다이어그램 모델링 활동 다이어그램 실습
활동 다이어그램의 개념을 이해한다. 활동 다이어그램 UML 표현을 학습한다. 유스케이스에서 활동 다이어그램 모델링을 학습한다. 실습을 통한 활동 다이어그램을 학습한다.
활동 및 전이 활동 다이어그램 오퍼레이션이나 처리 과정이 수행되는 동안 일어나는 일들을 단계적으로 표현 활동 상태 및 전이, 분기, 동기화 막대, 신호, 구획면 등으로 표현 활동 및 전이 [그림 7-1] 시작점, 활동 1, 활동2, 종료 점 그리고 전이로 구성 전이 : 화살표를 의미 시작점 활동의 시작을 의미 ( 검은색 동그라미로 표현 ) 활동 상태 어떠한 일들의 처리와 실행을 의미 ( 모서리가 둥근 사각형으로 표현 ) 종료점 처리의 종료를 의미 ( 이중 동그라미로 표현 ) 활동 다이어그램에서 하나의 활동이 처리되면 그 다음 활동으로 자동적으로 옮겨지며, 활동 상태의 시작과 종료는 항상 존재 [그림 7-1] 활동 다이어그램 구조
[그림 7-2] 시작점, 종료점, 2개의 활동 상태, 그리고 전이에 대한 예 시작 상태에서 조건 없이“MP3 플레이 버튼을 누른다”는 활동으로 전이가 발생 이 활동의 행동이 완료되면 다음으로“음악이 흐른다”의 활동으로 전이가 발생 그 후 활동 종료 [그림 7-2] 시작점과 종료점을 가진 활동 상태와 전이
분기 [그림 7-3] 활동 흐름이 2가지로 나뉘며, 1개의 활동 상태에서 전이할 때 여러 가지의 활동 상태로 분기 활동 흐름이 2가지로 나뉘며, 1개의 활동 상태에서 전이할 때 여러 가지의 활동 상태로 분기 어떤 조건이냐에 따라 처리 경로가 결정 [그림 7-3] 분기는 마름모(판단)를 사용하여 활동 전이를 나누는 방법을 보여주고 있다. 마름모 표기 시 해당 처리 경로 옆에는 대괄호를 이용한 조건문을 써주면 된다. [그림 7-3] 분기 표현 방법
동기화 막대 활동 다이어그램에서는 한 가지 활동만 수행 하지 않고 병행해서 수행하는 경우에 사용 동시 처리의 시작과 끝을 보여준다. [그림 7-4] 가로 방향의 동기화 막대 사용 예 TV는 음향과 화면이 동시에 나온다. 2가지가 동시에 처리되기 때문에 동기화 막대를 사용 [그림 7-4] 동기화 막대 사용 예
신호 활동이 진행되는 도중에 보내는 방식으로, 활동과 객체 사이에 이루어지는 거래 뾰족한 오각형 모양의 송신 시그널과 쐐기 모양의 파인 다각의 수신 시그널로 표현 [그림 7-5] 신호의 전송과 수신 예
구획면 활동 다이어그램에서 그려지는 세로 방향의 영역 각 활동 상태를 담당하는 역할을 나타낸다. 2개 이상의 사각형으로 영역을 표시하고, 구획면의 이름이 기술 [그림 7-6] 회원가입에 대한 처리 과정 총 7개의 활동이 시간적인 전이로 수행 (a) : 해석이 불명확하여 그 주체가 명확하지 않다 (b) : 고객과 시스템의 활동영역을 구별하여 볼 수 있기 때문에 이해하기가 쉽다. [그림 7-6] 회원가입에 대한 처리 과정
활동 다이어그램 유스케이스 수준 또는 그 상위 수준에서 비즈니스 프로세스를 표현 분석 단계에서 유스케이스 내부에 대한 구체적인 흐름을 표현하기 위해서 사용 설계 단계에서 클래스 내부 오퍼레이션에 대한 알고리즘이나 구체적인 로직을 표현하기 위해서 사용 순차 다이어그램이나 통신 다이어그램에서는 나타내기 어려운 상황을 표현 업무의 흐름을 분석하거나 화면의 흐름을 표현
활동 다이어그램을 이용한 업무 흐름분석 구획면, 분기, 동기화 막대 등을 통하여 활동의 주체, 조건에 따른 선택적 활동의 수행과 병행적인 활동 등에 대한 표현이 쉬우므로 [그림 7-7] (a)와 같이 업무 흐름을 표현할 때 가장 효과적으로 사용될 수 있는 다이어그램 [그림 7-7] (a) 홈 쇼핑몰 화면에 따른 업무흐름을 나타내고 있다. 처음 홈쇼핑 채널 선택에서 홈쇼핑을 선택한 후 각각의 제품을 선택하기 위한 제품목록으로 이동 제품목록은 보험상품, 의류제품, 서적으로 구성 [그림 7-7] 활동 다이어그램을 이용한 홈쇼핑 업무 및 화면 흐름 모델
활동 다이어그램을 이용한 화면 흐름 시스템을 사용할 때 이용되는 사용자 인터페이스는 활동다이어그램 을 통해 제공하는 화면들간의 활동 다이어그램을 이용한 화면 흐름 시스템을 사용할 때 이용되는 사용자 인터페이스는 활동다이어그램 을 통해 제공하는 화면들간의 흐름을 표현할 때 유용 화면 흐름 모델은 각 유스케이스 별로 사용자 인터페이스를 위하여 사용되는 화면들간의 흐름관계를 전이로 보여준다. [그림 7-7] (b) 홈쇼핑에 대한 사용자 인터페이스의 활동 다이어그램을 보여주고 있다. [그림 7-7] 활동 다이어그램을 이용한 쇼핑몰 업무 및 화면 흐름 모델
도서관리 도서관리에 대한 활동 다이어그램의 진행 단계 1단계 : 사서는 구입한 도서를 도서 목록에 추가 2단계 : 사서는 제거한 도서를 도서 목록에서 삭제 3단계 : 고객은 도서목록에서 대출이 가능한지 확인 4단계 : 대출이 가능한 도서는 대출 5단계 : 대출이 완료 6단계 : 대출이 불가능한 도서는 예약 7단계 : 예약이 완료 [그림 7-8] 도서관리 활동 다이어그램
도서예약 도서예약 과정 1단계 : 고객이 도서 대출을 신청 2단계 : 사서는 대출이 가능한지 확인 3단계 : 대출이 불가능한 도서를 예약 4단계 : 고객이 예약 취소 5단계 : 취소가 완료 6단계 : 대출 중인 도서가 반납 7단계 : 예약 고객 중 우선순위 높은 고객을 찾는다. 8단계 : 대출 가능 메시지를 보낸다. 9단계 : 예약 시스템이 완료 [그림 7-9] 도서예약 과정을 그린 활동 다이어그램
[그림 7-10] 활동 다이어그램에 각 활동의 주체까지 표현하기 위해 구획면을 이용한 그림 [그림 7-10] 구획면을 이용한 도서예약 활동 다이어그램
텍스트 자료는 도식화된 자료에 비해 검증이 어렵다. 문제해결 방안 유스케이스 명세서 유스케이스의 목표 달성에 필요한 규칙과 논리적인 흐름을 기술한 것 텍스트 자료는 도식화된 자료에 비해 검증이 어렵다. 문제해결 방안 활동 다이어그램은 검증하기 어려운 논리적인 흐름의 명세서를 시각적으로 표현 은행 업무를 할 수 있는 자동입출금기 시스템 중 계좌이체 유스케이스에 대한 명세서
명세서를 활동 다이어그램으로 작성하기 위해서 명세서는 시작에서부터 카드나 통장 삽입, 카드나 통장 유효성 검사, 유스케이스가 실행되기 전에 반드시 테스트되어야 하는 사전 조건을 확인 명세서는 시작에서부터 카드나 통장 삽입, 카드나 통장 유효성 검사, 화면에서 계좌이체를 선택하는 과정을 순차적으로 보여준다. 선택 흐름 카드나 통장의 유효성 확인, 실패 시 에러 메시지를 출력하고 카드와 통장을 배출한 후 초기 화면으로 되돌아가는 과정을 보여준다. [그림 7-11] 계좌이체 유스케이스 명세서의 사전조건 모델링을 보여주고 있다. [그림 7-11] 사전 조건 모델링
종료 시점에서 시스템이 반드시 처리해야 하는 사후 조건 유스케이스 종료와 사후 조건 겹쳐지는 부분이 많기 때문에 함께 작업하는 것이 좋다. 유스케이스를 종료하는 경우 ( 유스케이스 명세서 ) 비밀번호가 3회 이상 틀렸을 경우 비빌번호 입력 화면에서 취소 버튼을 눌렀을 경우 계좌번호 입력 화면에서 취소 버튼을 눌렀을 경우 이체할 은행, 계좌번호, 이름을 확인하는 화면에서 취소 버튼을 눌렀을 경우 종료 시점에서 시스템이 반드시 처리해야 하는 사후 조건 이체 완료 메시지가 나오면 자동 입출금기는 통장에 계좌이체 결과를 입력 통장이나 카드를 배출하고 초기화면으로 돌아간다. 은행 데이터베이스 결과 정보를 보낸다. [그림 7-12] 거래 취소, 통장에 계좌이체 결과 입력, 통장이나 카드 배출, 은행 데이터베이스에 결과 전송 등의 활동 명세서의 정상 흐름 ③, ④, ⑥번의 유스케이스 종료와 사후 조건을 모두 표현 [그림 7-12] 유스케이스 종료와 사후 조건 모델링
1.“비밀번호가 틀립니다. 총○회 틀렸습니다. 3회 이상일 경우 거래가 종료됩니다.” 계좌이체에 대한 처리를 모델링 [그림 7-13]과 [그림 7-14] 선택 흐름에서‘비밀번호가 일치하지 않을 경우’, ‘계좌번호가 일치하지 않을 경우’, ‘고객이 정정이나 취소를 누를 경우’에는 판단 마름모를 사용하여 작업을 반복적으로 처리하도록 모델링한 것 비밀번호가 일치하지 않을 경우 1.“비밀번호가 틀립니다. 총○회 틀렸습니다. 3회 이상일 경우 거래가 종료됩니다.” 라는 오류 메시지를 화면에 출력 2. 비빌 번호가 3회 이상 틀렸는지 확인 3. 3회 이상 틀린 경우가 아닐 때 비밀번호 입력 화면으로 돌아간다. 4. 3회 이상 틀린 경우 거래가 종료되어 카드나 통장이 나오고, 다시 계좌번호를 입력 [그림 7-13] 선택 흐름(비밀번호 입력)에서의 모델링
계좌번호가 일치하지 않을 경우 “계좌번호가 없습니다.”라는 오류 메시지 출력 계좌번호를 다시 입력 [그림 7-14] 선택 흐름(계좌번호 입력)에서의 모델링 [그림 7-15] 완성된 계좌이체 유스케이스에 대한 활동 다이어그램
데이터 전송 명세서 명세서에서 활동 상태 추출 분기 ‘데이터를 입력한다(inputData)’, ‘데이터를 전달한다(dataDeliver)’, ‘결과 메시지를 전달한다(showMessage)’ 분기 입력한 데이터가 조건에 부합하는 가이다. [그림 7-16] 데이터 전송 활동 다이어그램
식당 예약관리 명세서 명세서에서 활동 상태 추출 분기 동기화 ‘전화를 걸다(혹은 끓다)’, ‘전화를 받다’, ‘예약하다’, ‘설명하다’, ‘메모하다’, ‘예약을 완료하다’ 분기 신호가 전달될 때이고, 동기화 전화를 받았을 때 [그림 7-17] 식당 예약관리 활동 다이어그램
주문 예약관리 최초 로그인을 한 후 메인화면에서 원하는 상품을 검색하면, 해당된 상품에 대하여 “찜하기’을 할 수 있으며, 추가로 다른 상품을 검색 검색된 상품을 바로 주문할 수 있다. [그림 7-18] 주문 예약관리에 대한 활동 다이어그램을 나타낸 것 명세서에서 활동 로그인, 메인화면, 상품검색, 상품정보 보여주기, 찜하기, 주문하기 [그림 7-18] 주문 예약관리 활동 다이어그램
라디오 주파수 선택 라디오를 켜게 되면, FM·AM별로 라디오의 주파수 상태를 선택할 수 있으며, AM과 FM선택 여부에 따라 해당 주파수를 분석하고 자신이 원하는 주파수를 선택 [그림 7-19] 라디오 주파수 선택 활동 다이어그램 명세서에서 활동 라디오 켜기, AM·FM선택, 주파수 분석, 주파수 선택 [그림 7-19] 라디오 주파수 선택 활동 다이어그램
화면 로그인 화면 로그인 시 해당 데이터베이스에서 아이디와 패스워드를 검색 검색의 결과가 false가 되면 Error Message를 보내주고 다시 로그인 화면으로 넘어간다. 검색의 결과가 true이면 다음 화면으로 넘어가면서 로그아웃 [그림 7-20] 화면 로그인 활동 다이어그램