Use Case
= 시나리오
- text stories of some actors using a system to meet goals.
= 외부 사용자가 우리 시스템을 어떻게 사용하는지 글로 써둔 것
→ 요구사항을 분석하는 방법/ 장치
- UP에서는 Use case = Functional Requirement 로도 쓰임
Use Case Diagram
- Use Case Diagram의 용도
① 모든 use case에 대한 Summary
② system Context Diagram : 시스템의 바운더리를 그림
3 Formats of Use cases
- Brief
: Terse one paragraph summary
: Usually the main success scenario or a happy path
- Casual
: Informal paragraph format
: Multiple paragraphs that cover various scenarios
→ OOA , detail 한 조건이 추가
→ Main Scenario/Altenate Scenario/ Exceptional Scenario 구분이 되어야 Casual Level
- Fully Dressed
: Includes all steps, variations and supporting sections (e.g., preconditions)
: Functional Requirement로 대체 가능
→ OOAD
→ Main Scenario/Altenate Scenario/ Exceptional Scenario 구분이 되어야 Casual Level
Guideline
- Write in an Essential Style
: UI Free / flexible 하게 작성!
: HW Independent
: Concrete 하게 작성하면 안 됨 : 구체적인 요구사항이라 구현 시 제약이 많아짐
- Write Black-Box Use Cases
: Don’t describe the internal working (내부 동작 언급 X)
Quiz) Use-Case에 대한 다음의 설명 중 올바르지 않은 것은?
① Use-Case는 외부 Actors가 개발할 시스템을 어떻게 사용하는지를 묘사한 Text Story이다.
② Use-Case Diagram은 시스템의 Boundary(System Context)를 표시할 수 있다.
③ Use-Case는 일반적으로 Use-Case Diagram을 의미하며, Diagram을 그리는 것이 가장 중요하다.
→ Diagram은 보조 수단 일뿐, 포함하고 있는 use-case (시나리오)가 중요하다!
④ Use-Case는 UP의 각 Phase와 Iteration에 따라 다양한 수준으로 개발된다.
Quiz) Use-Case에 대한 다음의 설명 중 올바른 것은?
① Use-Case는 가능하면 개발 범위 밖에 있는 UI, HW 등에 Independent하게 작성하는 것이 좋다.
② Use-Case는 UP의 모든 Iteration에서 항상 Fully-Dressed 포맷으로 작성하는 것이 바람직하다.
→ Iteration에서는 Brief/Casual하게 있으면 됨. Fully-Dress 포맷을 구현될 때
③ Use-Case는 시스템이 구체적으로 어떻게 동작할 지에 대해서까지 자세히 작성할수록 좋다.
→ BlackBox로 대략적으로 Essential만 작성
④ Use-Case는 UP Construction Phase까지 지속적으로 Refinement 해야 한다.
→ Elaboration 까지만 Refinement(수정)해야 함.
본 글은 개인의 S/W 구조설계 역량 강화를 위한 학습 목적으로 정리된 내용입니다.
일부 타/개인 단체에 저작권이 있는 자료를 포함하고 있으므로, 절대 영리 목적으로 사용하실 수 없습니다.
'SW 공부 > OOP_OOAD_UML' 카테고리의 다른 글
[UML] Sequence Diagram (2) | 2022.08.29 |
---|---|
[UML] Class Diagram (2) | 2022.08.29 |
[UML] 13개의 UML Diagrams 소개 (2) | 2022.08.29 |
[OOP] 3. Object-Oriented Development (객체지향 개발론) (12) | 2022.08.29 |
[OOP] 2. Object-Oriented Principles (객체지향 원칙) (2) | 2022.08.29 |
댓글