이번 과제는 한국철도공사의 코레일 톡에 대한 Use case diagram 을 Architect 프로그램으로 작성한다.
각 Actor 및 Use case 에 대한 개요도 Note에 기재해야한다.
일단 Actor 와 Use case 의 개념부터 알아보자.
Actor
액터(Actor) 는 시스템과 상호작용(interaction)을 하는 시스템 외부의 존재이다.
한가지 주의할 점은 액터가 '사람' 뿐 일거라는 생각인데 아닙니다. 시스템을 제외한 외부 존재는 다 액터입니다.
SMS 전송 시스템을 개발하는 것이 아니라 기존의 시스템을 이용하는 거고 도서관리 시스템이라는 시스템을 제외한 외부 존재이기 때문에 이 또한 액터입니다.
액터를 요약하자면 다음과 같다.
- 액터는 시스템과 상호 작용하는 외부 존재다.
- 액터는 시스템과 직접적인 상호 작용을 해야한다.
- 액터는 시스템 관점에서 바라본 사용자의 역할을 뜻해야한다.
- 액터는 시스템 관점에서 바라본 사용자의 역할을 뜻해야한다.
- 액터는 개발 대상이 되는 시스템에 따라서 달라질 수 있다.
- 장치 유형의 액터의 표현 여부는 표준 플랫폼에 의한 차원에 따라 달라진다.
Use Case
유스케이스는 시스템의 기능 단위이자 사용자가 인지할 수 있는 하나의 기능 단위이다.
즉 시스템이 제공하는 개별적인 기능을 뜻한다.
액터는 ATM시스템에서 카드 판독과 암호 확인를 유스케이스로 표현하지 않아도 된다.
액터가 ATM 시스템을 이용할 때 이를 인식하지 못하기 때문이다.
또한 유스케이스는 구체적이어야한다.
유스케이스 패키지의 사용하는 것이 좋다.
하나의 유스케이스는 다수의 시나리오를 포함한다.
만약 ATM 사용자가 ATM 시스템에서 '출금'이라는 유스케이스를 할 경우 다음과 같은 시나리오가 나올 수 있다.
1. 정상 출금 시나리오
2. 카드 판독 불가 시나리오
3. 암호 불일치 시나리오
4. 잔액 부족 시나리오
...
1) 또 유스케이스에는 활성화(triggering) 상호 작용을 하는 액터가 있어야 한다.
2)모든 활성화 액터에게 동일한 기능을 제공해야합니다. 누군가에겐 다르게 작용되면 안된다.
3) 유스케이스는 트랙잭션(Transaction) 성격을 가져야하는데 트랙잭션은 '가장 작은 일의 단위'라고 생각하면 된다.
대출 관리는 '대출신청', '대출심사' ,'대출집행' , '대출상황' 으로 쪼개질 수 있기 때문에 유스케이스가 될 수 없다.
4) 데이터에 대한 CRUD는 하나의 유스케이스로 표현하는데 CRUD는 Create, Read,Update, Delete 를 묶어서 일컫는 말이다. 사용자 인터페이스가 갖추어야할 기능을 가리키는 용어이기도 하다.
5) 유스케이스 간의 선/후행 관계는 액티비티 다이어그램을 이용해서 표현할 수 있다.
'공부 > 소프트웨어공학' 카테고리의 다른 글
소프트웨어 공학 첫 시간 : 개요 (0) | 2020.09.02 |
---|