SlideShare a Scribd company logo
UML ๊ฐœ๋ก 
UML
โ€ข ์š”๊ตฌ๋ถ„์„, ์‹œ์Šคํ…œ์„ค๊ณ„, ์‹œ์Šคํ…œ ๊ตฌํ˜„ ๋“ฑ์˜ ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ ๊ณผ
์ •์—์„œ, ๊ฐœ๋ฐœ์ž๊ฐ„์˜ ์˜์‚ฌ์†Œํ†ต์„ ์›ํ™œํ•˜๊ฒŒ ์ด๋ฃจ์–ด์ง€๊ฒŒ ํ•˜
๊ธฐ ์œ„ํ•˜์—ฌ ํ‘œ์ค€ํ™”ํ•œ ๋ชจ๋ธ๋ง ์–ธ์–ด์ด๋‹ค.
โ€ข UML is a universal visual modeling language.
โ€ข UML models the world as systems of interacting objects.
An object is a cohensive cluster of data and function.
โ€ข ์„ธ์ƒ์€ object๋“ค์ด ์ƒํ˜ธ๊ฐ„ interaction์„ ํ•˜๋ฉด์„œ ์ด๋ฃจ์–ด์ง€
๋Š” ์‹œ์Šคํ…œ๋“ค์˜ ๋ฌถ์Œ์ด๋‹ค.
Diagrams in UML
Diagrams
static model
(system structure)
dynamic model
(system behavior)
class diagram
component diagram
deployment diagram
object diagram
use case diagram
sequence diagram
collaboration diagram
state-chart diagram
activity diagram
Use Case Modelling
Part 1. Basics
์š”๊ตฌ ์‚ฌํ•ญ ๋ถ„์„
โ€ข ๋ชจ๋“  ์‹œ์Šคํ…œ์€ ์š”๊ตฌ ์‚ฌํ•ญ์ด ์žˆ๋‹ค. ์–ด๋–ป๊ฒŒ ํ•˜
๋ฉด ์ด๋Ÿฌํ•œ ์š”๊ตฌ ์‚ฌํ•ญ๋“ค์€ ์‚ฌ๋žŒ๋“ค์ด ์‰ฝ๊ฒŒ ์ด
ํ•ดํ•˜๊ณ  ๋น ์ง„ ์š”๊ตฌ ์‚ฌํ•ญ๋“ค์„ ์ฐพ์•„๋‚ผ ์ˆ˜ ์žˆ์„
๊นŒ?
โ€ข Functional Requirement
โ€“ Use Case Diagram์„ ๊ทธ๋ฆฌ์ž.
โ€“ Use Case Specification์„ ์ž‘์„ฑํ•˜์ž.
Use Case Modelling Step
โ€ข Find the system boundary
โ€ข Find the actors
โ€ข Find the use cases:
โ€“ specify the use case
โ€“ create scenarios
โ€ข actors
โ€ข use cases
โ€ข relationships
โ€ข system boundary
System boundary
โ€ข ์‹œ์Šคํ…œ ๊ตฌ์ถ•์„ ์ƒ๊ฐํ•˜๋Š” ์‹œ์ ์— ๊ทผ๋ณธ์ ์ธ ์š”์†Œ๊ฐ€ ๋ฐ”๋กœ ์‹œ
์Šคํ…œ ๋ฒ”์œ„ ๊ฒฐ์ •.
โ€ข ์‹œ์Šคํ…œ ๋ฒ”์œ„ ๋”ฐ๋ผ์„œ ์š”๊ตฌ์‚ฌํ•ญ์ด ๋‹ฌ๋ผ์ง„๋‹ค.
โ€ข ์‹œ์Šคํ…œ ๋ฒ”์œ„๋ž€?
โ€“ inside system boundary
โ€ข ์–ด๋– ํ•œ ๋ถ€๋ถ„๋“ค์ด ์‹œ์Šคํ…œ ๋‚ด๋ถ€์— ํฌํ•จ๋˜์–ด ๊ตฌ์„ฑ์ด ๋˜์–ด์งˆ๊นŒ?
โ€“ outside system boundary
โ€ข ์–ด๋–ค ๊ฒƒ๋“ค์„ ์‹œ์Šคํ…œ ์™ธ๋ถ€๋กœ ์นญํ•ด์•ผ ํ• ๊นŒ?
์˜ˆ. ๋ณ€ํ™˜์„œ๋น„์Šค๋Š” Docs ์‹œ์Šคํ…œ ์™ธ๋ถ€? ๋‚ด๋ถ€?
โ€ข use case diagram์—์„œ๋Š” ์ƒ์ž์— ์‹œ์Šคํ…œ ์ด๋ฆ„์„ ๊ธฐ๋ก
Actor
โ€ข Actor๋Š”
โ€“ ์‹œ์Šคํ…œ ์™ธ๋ถ€์— ์œ„์น˜.
โ€“ ์‹œ์Šคํ…œ๊ณผ ์ง์ ‘์ ์ธ ๊ต๋ฅ˜๊ฐ€ ์žˆ๋Š” ์—ญํ• 
โ€ข ๋™์ผํ•œ ์‚ฌ๋žŒ์ด ๋‹ค๋ฅธ role์„ ์ทจํ•˜๋Š” ๊ฒฝ์šฐ ๋‹ค๋ฅธ actor
โ€“ ์˜ˆ. ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž / ๊ด€๋ฆฌ์ž.
โ€ข ์—ญํ• ์ด๊ธฐ ๋•Œ๋ฌธ์— ํƒ€ ์‹œ์Šคํ…œ๋„ actor๋กœ ์ทจ๊ธ‰
โ€“ ์˜ˆ. NOS Publisher (post to docs ๊ฒฝ์šฐ)
โ€ข Who or what uses or interacts with the system?
<<actor>>
NOS Publisher
Admin Time
Use case
โ€ข use case๋Š”
โ€“ ์•ž์„œ ์ •์˜ํ•œ actor๊ฐ€ ์‹œ์Šคํ…œ์ด ํ•ด์ฃผ๊ธฐ๋ฅผ ๋ฐ”๋ผ๋Š” ๊ฒƒ๋“ค.
โ€“ actor์— ์˜ํ•ด์„œ ์‹œ์ž‘
โ€“ actor ๊ด€์ ์—์„œ ์ƒ์„ธ ๋‚ด์šฉ์ด ๊ธฐ์ˆ ๋œ๋‹ค.
โ€ข How does each actor use the system?
โ€ข What does do for each actor?
SuspendUser
Use Case Diagram์€
์‹œ์Šคํ…œ์˜ ๊ธฐ๋Šฅ์  ์š”๊ตฌ
์‚ฌํ•ญ์„ ๋ถ„์„ํ•˜๋ฉฐ, ์‹œ์Šคํ…œ
์—ญํ• ์„ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๋„๋ก
๋„์›€์ด ๋˜๋„๋ก ์ตœ๋Œ€ํ•œ
๊ฐ„๋‹จํžˆ ๊ทธ๋ ค์ ธ์•ผ ํ•œ๋‹ค.
Use Case Diagram๋งŒ
๊ทธ๋ฆฌ๋‹ค๊ฐ€ ๋ชจ๋ธ๋ง ํฌ๊ธฐํ•˜๋Š”
์‚ฌ๋žŒ์ด ๋งŽ๋‹ค.
Use Case Diagram์€
์ ์ฐจ์ ์œผ๋กœ ๋ฐ˜๋ณต์ ์œผ๋กœ
๊ฐฑ์‹ ๋˜๋ฉด์„œ ์™„์„ฑ๋˜๊ฐ€๋Š”
๊ฒƒ์ด๋‹ค.
Use Case Diagram์€
์ตœ๋Œ€ํ•œ ๋‹จ์ˆœํ™”๋ฅผ ์‹œํ‚ค๋„๋ก
๊ทธ๋ ค๊ฐ„๋‹ค.
Detail a use case
Use Case modelling์„ diagram ๊ทธ๋ฆฌ
๋Š” ์ˆœ๊ฐ„์—์„œ ๋งˆ๋ฌด๋ฆฌ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.
์ด๋กœ ์ธํ•ด ๋งŽ์€ ๋ฌธ์ œ ๋ฐœ์ƒํ–ˆ์—ˆ๋‹ค. ์ด
๋กœ ์ธํ•ด Use Case Diagram ๋ฐ˜๋Œ€๋ก ์ž
๋“ค๋„ ๋‚˜ํƒ€๋‚ฌ์—ˆ๋‹ค.
์ด๋Š” ์ƒ์„ธํ™” ๊ณผ์ •์ด ์—†์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
์˜ˆ์™ธ ์ƒํ™ฉ๋“ค์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ (1)
โ€ข If / Else, For, While ๊ธฐ๋ฒ• ์ ์šฉ
โ€ข alternative flow: post condition์— ๊ธฐ์ˆ 
โ€“ ์–ด๋Š ์‹œ์ ์—๋‚˜ ๋ฐœ์ƒ๋  ์ˆ˜ ์žˆ๋Š” ์ƒํ™ฉ์— ๋Œ€ํ•œ ๊ธฐ์ˆ 
โ€“ ์˜ˆ. ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์ดํŠธ๋ฅผ ๋„์ค‘์— ๋‚˜๊ฐ€๋ฒ„๋ฆฐ๋‹ค.
์˜ˆ์™ธ ์ƒํ™ฉ๋“ค์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ (2)
โ€ข scenario๋Š”
โ€“ ์ •์ƒ์ ์ธ use case ๋™์ž‘(primary scenario) ๊ฒฝ์šฐ ์™ธ ๊ฒฝ
์šฐ์— ๋Œ€ํ•ด์„œ ๋ณ„๋„ use case spec.(secondary
scenarios)๋กœ ์ •๋ฆฌ
โ€“ a use case = primary scenario + secondary scenarios
โ€“ scenario ์‚ฌ์šฉ ๊ฒฝ์šฐ์—๋Š” branch๊ฐ€ ์—†๋‹ค.
โ€ข secondary scenario๋“ค์€ ๋ณ„๋„ use case spec. ์œผ
๋กœ ์ •๋ฆฌ. ํ‘œ๊ธฐ๋Š” ํƒ€์ดํ‹€์— ๋Œ€์ƒ Use case ๊ธฐ๋ก ํ›„
์ถ”๊ฐ€๋กœ secondary scenario ๋ช…์‹œ
Use Case Modelling
Part 2. Advanced
advanced topics
โ€ข Actor generalization
โ€“ ์ผ๋ฐ˜ํ™” ํ•  ์ˆ˜ ์žˆ๋Š” ์—ญํ• ๊ณผ ์„ธ๋ถ„ํ™” ๊ฐ€๋Šฅ ์—ญํ• 
โ€ข Use case generalization
โ€“ ์ผ๋ฐ˜ํ™” ๊ฐ€๋Šฅํ•œ use case์— ์ด์— ๋Œ€ํ•ด ์„ธ๋ถ„ํ™” ๊ฐ€๋Šฅํ•œ use case ๊ด€๊ณ„
โ€ข <include>>
โ€“ ํŠน์ • use case๊ฐ€ ๋‹ค๋ฅธ use case๋ฅผ ํฌํ•จํ•˜๋Š” ๊ฒฝ์šฐ
โ€ข <<extend>>
โ€“ ๊ธฐ๋ณธ use case๊ฐ€ ์žˆ๊ณ  ํŠน์ • ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ ์ด๋ฅผ ํ™•์žฅํ•˜๋Š” use case๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ
โ€ข ์ถ”๊ฐ€๋กœ ์‚ฌ์šฉ๋˜๋Š” ์œ„ ๊ฐœ๋…๋“ค์€ ์ตœ๋Œ€ํ•œ use case model์„ ๋‹จ์ˆœํ™” ํ•˜๊ธฐ
์œ„ํ•ด์„œ๋งŒ ์‚ฌ์šฉ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
Actor generalization - target case
โ€ข ์œ ์‚ฌ use case๊ฐ€ ์ค‘๋ณต๋˜๋Š” ๊ฒฝ์šฐ์— ์ด์— ๋Œ€ํ•ด์„œ
commonํ•œ actor(role)๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒฝ์šฐ
Actor generalization - solution
Use case generalization
โ€ข the child use case
โ€“ ๋ถ€๋ชจ use case ํŠน์ • ์†์„ฑ๋“ค์„ ์ƒ์†
โ€“ ์ƒˆ๋กœ์šด ํŠน์ง•๋“ค ๋˜๋Š” ๊ฒฝ์šฐ๋“ค ํฌํ•จ
โ€“ ๊ธฐ์กด ๊ธฐ๋Šฅ๋“ค์„ ๊ฒฝ์šฐ์— ๋”ฐ๋ผ์„œ ๊ตฌ์ฒดํ™” (template)
โ€ข use case spec. ํ‘œ๊ธฐ๋ฒ•
โ€“ normal text: ๋ถ€๋ชจ use case ๊ทธ๋Œ€๋กœ ์ƒ์† ๋ถ€๋ถ„
โ€“ Italic text: ํŠน์ • ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ child ๋งŒ์˜ ํŠน์„ฑ ์‚ด๋ฆผ
โ€“ Bold text: child์—์„œ ์ถ”๊ฐ€๋œ ๋ถ€๋ถ„
Use case generalization - example
๊ทธ๋Œ€๋กœ ์ƒ์†
ํŠน์ˆ˜ํ™”
์ถ”๊ฐ€
<<include>>
โ€ข php์˜ include์™€ ์œ ์‚ฌ.
โ€ข ๋™์ผ use case๋ฅผ ์ค‘๋ณต ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ
โ€ข behavior fragment
actor์— ์˜ํ•ด
์‹คํ–‰๋„ ๊ฐ€๋Šฅ
use case spec. of <<include>>
<<extend>>
โ€ข <<extend>>๋Š” ์ด๋ฏธ ์กด์žฌํ•˜๋Š” use case์— ๋Œ€ํ•ด์„œ ์ƒˆ๋กœ์šด ๋™์ž‘์„ ์ถ”๊ฐ€
ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.
โ€ข <<extend>>๋˜๊ธฐ ์ „์—๋„ ์ •์ƒ์ ์ธ use case. <<include>>๊ฐ€ ์—†์ด๋Š”
์ •์ƒ์ ์ธ use case๊ฐ€ ์•„๋‹Œ ๊ฒƒ๊ณผ ์ฐจ์ด๊ฐ€ ์žˆ์Œ.
โ€ข ์˜ˆ. ๋„์„œ๊ด€์—์„œ ์‚ฌ์„œ๊ฐ€ ์ฑ…์„ ๋ฐ˜๋‚ฉ ๋ฐ›๋Š” use case.
โ€ข ๋ฐ˜๋‚ฉ ์‹œ์ ์— ์—ฐ์ฒด๋ฃŒ๊ฐ€ ์žˆ๋Š” ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์ถ”๊ฐ€์ ์ธ ์กฐ์น˜๊ฐ€ ํ•„์š”ํ•œ
use case๋„ ์žˆ๋‹ค.
use case spec. for <<extend>>

More Related Content

Similar to Uml intro 0

Uml ์„ธ๋ฏธ๋‚˜
Uml ์„ธ๋ฏธ๋‚˜Uml ์„ธ๋ฏธ๋‚˜
Uml ์„ธ๋ฏธ๋‚˜Daniel Shin
ย 
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐCWMin
ย 
Implementing_AOP_in_Spring_SYS4U
Implementing_AOP_in_Spring_SYS4UImplementing_AOP_in_Spring_SYS4U
Implementing_AOP_in_Spring_SYS4Usys4u
ย 
Lost practice : Requirement Analysis
Lost practice : Requirement AnalysisLost practice : Requirement Analysis
Lost practice : Requirement Analysisc K
ย 
ํ…Œ์ŠคํŒ…์„์œ„ํ•œ์„ ํ–‰์กฐ๊ฑด ๋ช…์„ธ
ํ…Œ์ŠคํŒ…์„์œ„ํ•œ์„ ํ–‰์กฐ๊ฑด ๋ช…์„ธํ…Œ์ŠคํŒ…์„์œ„ํ•œ์„ ํ–‰์กฐ๊ฑด ๋ช…์„ธ
ํ…Œ์ŠคํŒ…์„์œ„ํ•œ์„ ํ–‰์กฐ๊ฑด ๋ช…์„ธ๊ทœ๋™ ์ตœ๊ทœ๋™
ย 
์†Œํ”„ํŠธ์›จ์–ด์„ค๊ณ„๋ก 
์†Œํ”„ํŠธ์›จ์–ด์„ค๊ณ„๋ก ์†Œํ”„ํŠธ์›จ์–ด์„ค๊ณ„๋ก 
์†Œํ”„ํŠธ์›จ์–ด์„ค๊ณ„๋ก JeongDong Kim
ย 
ใ€Žแ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‰แ…ตแ„‰แ…ณแ„แ…ฆแ†ทแ„‹แ…ณแ†ฏ แ„€แ…ชแ†ซแ„…แ…ตแ„’แ…กแ„‚แ…ณแ†ซ แ„€แ…ตแ„‰แ…ฎแ†ฏใ€ - แ„†แ…กแ†บแ„‡แ…ฉแ„€แ…ต
ใ€Žแ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‰แ…ตแ„‰แ…ณแ„แ…ฆแ†ทแ„‹แ…ณแ†ฏ แ„€แ…ชแ†ซแ„…แ…ตแ„’แ…กแ„‚แ…ณแ†ซ แ„€แ…ตแ„‰แ…ฎแ†ฏใ€ - แ„†แ…กแ†บแ„‡แ…ฉแ„€แ…ตใ€Žแ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‰แ…ตแ„‰แ…ณแ„แ…ฆแ†ทแ„‹แ…ณแ†ฏ แ„€แ…ชแ†ซแ„…แ…ตแ„’แ…กแ„‚แ…ณแ†ซ แ„€แ…ตแ„‰แ…ฎแ†ฏใ€ - แ„†แ…กแ†บแ„‡แ…ฉแ„€แ…ต
ใ€Žแ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‰แ…ตแ„‰แ…ณแ„แ…ฆแ†ทแ„‹แ…ณแ†ฏ แ„€แ…ชแ†ซแ„…แ…ตแ„’แ…กแ„‚แ…ณแ†ซ แ„€แ…ตแ„‰แ…ฎแ†ฏใ€ - แ„†แ…กแ†บแ„‡แ…ฉแ„€แ…ต๋ณต์—ฐ ์ด
ย 
[๊ฐ•์˜] OOP ๊ฐœ์š”
[๊ฐ•์˜] OOP ๊ฐœ์š”[๊ฐ•์˜] OOP ๊ฐœ์š”
[๊ฐ•์˜] OOP ๊ฐœ์š”Nohyun Kee
ย 
ํ”„๋กœ์ ํŠธ Xxx์— ์ ์šฉํ•˜๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ๋ฐฉ๋ฒ•
ํ”„๋กœ์ ํŠธ Xxx์— ์ ์šฉํ•˜๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ๋ฐฉ๋ฒ•ํ”„๋กœ์ ํŠธ Xxx์— ์ ์šฉํ•˜๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ๋ฐฉ๋ฒ•
ํ”„๋กœ์ ํŠธ Xxx์— ์ ์šฉํ•˜๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ๋ฐฉ๋ฒ•๋„ํ˜• ์ž„
ย 
Transfer learning usage
Transfer learning usageTransfer learning usage
Transfer learning usageTae Young Lee
ย 
JIRA ์—…๋ฌด ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ ๋ฐ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ
JIRA ์—…๋ฌด ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ ๋ฐ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌJIRA ์—…๋ฌด ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ ๋ฐ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ
JIRA ์—…๋ฌด ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ ๋ฐ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌKwangSeob Jeong
ย 
201803 ํŒŒ์ด์ฌ ์„ธ๋ฏธ๋‚˜
201803 ํŒŒ์ด์ฌ ์„ธ๋ฏธ๋‚˜201803 ํŒŒ์ด์ฌ ์„ธ๋ฏธ๋‚˜
201803 ํŒŒ์ด์ฌ ์„ธ๋ฏธ๋‚˜JeongHwan Kim
ย 
7 8 1
7 8 17 8 1
7 8 1nexthw
ย 
Design patterns
Design patternsDesign patterns
Design patternsJoshua Yoon
ย 
ํ’€์žŽ์Šค์ฟจ - LIME ๋ฐœํ‘œ์ž๋ฃŒ(์„ค๋ช…๊ฐ€๋Šฅํ•œ ์ธ๊ณต์ง€๋Šฅ ๊ธฐํš!)
ํ’€์žŽ์Šค์ฟจ - LIME ๋ฐœํ‘œ์ž๋ฃŒ(์„ค๋ช…๊ฐ€๋Šฅํ•œ ์ธ๊ณต์ง€๋Šฅ ๊ธฐํš!)ํ’€์žŽ์Šค์ฟจ - LIME ๋ฐœํ‘œ์ž๋ฃŒ(์„ค๋ช…๊ฐ€๋Šฅํ•œ ์ธ๊ณต์ง€๋Šฅ ๊ธฐํš!)
ํ’€์žŽ์Šค์ฟจ - LIME ๋ฐœํ‘œ์ž๋ฃŒ(์„ค๋ช…๊ฐ€๋Šฅํ•œ ์ธ๊ณต์ง€๋Šฅ ๊ธฐํš!)Bong-Ho Lee
ย 
Understanding MLOps
Understanding MLOpsUnderstanding MLOps
Understanding MLOpsChun Myung Kyu
ย 
๋””์ž์ธํŒจํ„ด 1~13
๋””์ž์ธํŒจํ„ด 1~13๋””์ž์ธํŒจํ„ด 1~13
๋””์ž์ธํŒจํ„ด 1~13Shin heemin
ย 

Similar to Uml intro 0 (20)

Uml ์„ธ๋ฏธ๋‚˜
Uml ์„ธ๋ฏธ๋‚˜Uml ์„ธ๋ฏธ๋‚˜
Uml ์„ธ๋ฏธ๋‚˜
ย 
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ
ย 
Implementing_AOP_in_Spring_SYS4U
Implementing_AOP_in_Spring_SYS4UImplementing_AOP_in_Spring_SYS4U
Implementing_AOP_in_Spring_SYS4U
ย 
Lost practice : Requirement Analysis
Lost practice : Requirement AnalysisLost practice : Requirement Analysis
Lost practice : Requirement Analysis
ย 
ํ…Œ์ŠคํŒ…์„์œ„ํ•œ์„ ํ–‰์กฐ๊ฑด ๋ช…์„ธ
ํ…Œ์ŠคํŒ…์„์œ„ํ•œ์„ ํ–‰์กฐ๊ฑด ๋ช…์„ธํ…Œ์ŠคํŒ…์„์œ„ํ•œ์„ ํ–‰์กฐ๊ฑด ๋ช…์„ธ
ํ…Œ์ŠคํŒ…์„์œ„ํ•œ์„ ํ–‰์กฐ๊ฑด ๋ช…์„ธ
ย 
์†Œํ”„ํŠธ์›จ์–ด์„ค๊ณ„๋ก 
์†Œํ”„ํŠธ์›จ์–ด์„ค๊ณ„๋ก ์†Œํ”„ํŠธ์›จ์–ด์„ค๊ณ„๋ก 
์†Œํ”„ํŠธ์›จ์–ด์„ค๊ณ„๋ก 
ย 
ใ€Žแ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‰แ…ตแ„‰แ…ณแ„แ…ฆแ†ทแ„‹แ…ณแ†ฏ แ„€แ…ชแ†ซแ„…แ…ตแ„’แ…กแ„‚แ…ณแ†ซ แ„€แ…ตแ„‰แ…ฎแ†ฏใ€ - แ„†แ…กแ†บแ„‡แ…ฉแ„€แ…ต
ใ€Žแ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‰แ…ตแ„‰แ…ณแ„แ…ฆแ†ทแ„‹แ…ณแ†ฏ แ„€แ…ชแ†ซแ„…แ…ตแ„’แ…กแ„‚แ…ณแ†ซ แ„€แ…ตแ„‰แ…ฎแ†ฏใ€ - แ„†แ…กแ†บแ„‡แ…ฉแ„€แ…ตใ€Žแ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‰แ…ตแ„‰แ…ณแ„แ…ฆแ†ทแ„‹แ…ณแ†ฏ แ„€แ…ชแ†ซแ„…แ…ตแ„’แ…กแ„‚แ…ณแ†ซ แ„€แ…ตแ„‰แ…ฎแ†ฏใ€ - แ„†แ…กแ†บแ„‡แ…ฉแ„€แ…ต
ใ€Žแ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‰แ…ตแ„‰แ…ณแ„แ…ฆแ†ทแ„‹แ…ณแ†ฏ แ„€แ…ชแ†ซแ„…แ…ตแ„’แ…กแ„‚แ…ณแ†ซ แ„€แ…ตแ„‰แ…ฎแ†ฏใ€ - แ„†แ…กแ†บแ„‡แ…ฉแ„€แ…ต
ย 
[๊ฐ•์˜] OOP ๊ฐœ์š”
[๊ฐ•์˜] OOP ๊ฐœ์š”[๊ฐ•์˜] OOP ๊ฐœ์š”
[๊ฐ•์˜] OOP ๊ฐœ์š”
ย 
ํ”„๋กœ์ ํŠธ Xxx์— ์ ์šฉํ•˜๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ๋ฐฉ๋ฒ•
ํ”„๋กœ์ ํŠธ Xxx์— ์ ์šฉํ•˜๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ๋ฐฉ๋ฒ•ํ”„๋กœ์ ํŠธ Xxx์— ์ ์šฉํ•˜๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ๋ฐฉ๋ฒ•
ํ”„๋กœ์ ํŠธ Xxx์— ์ ์šฉํ•˜๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ๋ฐฉ๋ฒ•
ย 
Transfer learning usage
Transfer learning usageTransfer learning usage
Transfer learning usage
ย 
JIRA ์—…๋ฌด ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ ๋ฐ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ
JIRA ์—…๋ฌด ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ ๋ฐ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌJIRA ์—…๋ฌด ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ ๋ฐ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ
JIRA ์—…๋ฌด ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ ๋ฐ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ
ย 
SoftwareEngeneering3rd
SoftwareEngeneering3rdSoftwareEngeneering3rd
SoftwareEngeneering3rd
ย 
201803 ํŒŒ์ด์ฌ ์„ธ๋ฏธ๋‚˜
201803 ํŒŒ์ด์ฌ ์„ธ๋ฏธ๋‚˜201803 ํŒŒ์ด์ฌ ์„ธ๋ฏธ๋‚˜
201803 ํŒŒ์ด์ฌ ์„ธ๋ฏธ๋‚˜
ย 
Holub on-patterns-2-1
Holub on-patterns-2-1Holub on-patterns-2-1
Holub on-patterns-2-1
ย 
HolubOnPatterns/chapter2_1
HolubOnPatterns/chapter2_1HolubOnPatterns/chapter2_1
HolubOnPatterns/chapter2_1
ย 
7 8 1
7 8 17 8 1
7 8 1
ย 
Design patterns
Design patternsDesign patterns
Design patterns
ย 
ํ’€์žŽ์Šค์ฟจ - LIME ๋ฐœํ‘œ์ž๋ฃŒ(์„ค๋ช…๊ฐ€๋Šฅํ•œ ์ธ๊ณต์ง€๋Šฅ ๊ธฐํš!)
ํ’€์žŽ์Šค์ฟจ - LIME ๋ฐœํ‘œ์ž๋ฃŒ(์„ค๋ช…๊ฐ€๋Šฅํ•œ ์ธ๊ณต์ง€๋Šฅ ๊ธฐํš!)ํ’€์žŽ์Šค์ฟจ - LIME ๋ฐœํ‘œ์ž๋ฃŒ(์„ค๋ช…๊ฐ€๋Šฅํ•œ ์ธ๊ณต์ง€๋Šฅ ๊ธฐํš!)
ํ’€์žŽ์Šค์ฟจ - LIME ๋ฐœํ‘œ์ž๋ฃŒ(์„ค๋ช…๊ฐ€๋Šฅํ•œ ์ธ๊ณต์ง€๋Šฅ ๊ธฐํš!)
ย 
Understanding MLOps
Understanding MLOpsUnderstanding MLOps
Understanding MLOps
ย 
๋””์ž์ธํŒจํ„ด 1~13
๋””์ž์ธํŒจํ„ด 1~13๋””์ž์ธํŒจํ„ด 1~13
๋””์ž์ธํŒจํ„ด 1~13
ย 

More from ์šด์šฉ ์ตœ

Agile Spirit Base On The Book "Agile Samuari"
Agile Spirit Base On The Book "Agile Samuari"Agile Spirit Base On The Book "Agile Samuari"
Agile Spirit Base On The Book "Agile Samuari"์šด์šฉ ์ตœ
ย 
18 ์•ˆ๋“œ๋กœ์ด๋“œ ๋ฆฌ์ŠคํŠธ๋ทฐ_์†๋„ํ–ฅ์ƒ
18 ์•ˆ๋“œ๋กœ์ด๋“œ ๋ฆฌ์ŠคํŠธ๋ทฐ_์†๋„ํ–ฅ์ƒ18 ์•ˆ๋“œ๋กœ์ด๋“œ ๋ฆฌ์ŠคํŠธ๋ทฐ_์†๋„ํ–ฅ์ƒ
18 ์•ˆ๋“œ๋กœ์ด๋“œ ๋ฆฌ์ŠคํŠธ๋ทฐ_์†๋„ํ–ฅ์ƒ์šด์šฉ ์ตœ
ย 
19 ๋‚˜๋งŒ์˜ view ๋งŒ๋“ค๊ธฐ
19 ๋‚˜๋งŒ์˜ view ๋งŒ๋“ค๊ธฐ19 ๋‚˜๋งŒ์˜ view ๋งŒ๋“ค๊ธฐ
19 ๋‚˜๋งŒ์˜ view ๋งŒ๋“ค๊ธฐ์šด์šฉ ์ตœ
ย 
16 ๋ฐ์ดํ„ฐ ์ €์žฅ๊ณผ ์‚ฌ์šฉ
16 ๋ฐ์ดํ„ฐ ์ €์žฅ๊ณผ ์‚ฌ์šฉ16 ๋ฐ์ดํ„ฐ ์ €์žฅ๊ณผ ์‚ฌ์šฉ
16 ๋ฐ์ดํ„ฐ ์ €์žฅ๊ณผ ์‚ฌ์šฉ์šด์šฉ ์ตœ
ย 
11 tablet ๋Œ€์‘ ๊ฐ€์ด๋“œ
11 tablet ๋Œ€์‘ ๊ฐ€์ด๋“œ11 tablet ๋Œ€์‘ ๊ฐ€์ด๋“œ
11 tablet ๋Œ€์‘ ๊ฐ€์ด๋“œ์šด์šฉ ์ตœ
ย 
08 fragment ํƒœ๋ธ”๋ฆฟ ๋Œ€์‘
08 fragment   ํƒœ๋ธ”๋ฆฟ ๋Œ€์‘08 fragment   ํƒœ๋ธ”๋ฆฟ ๋Œ€์‘
08 fragment ํƒœ๋ธ”๋ฆฟ ๋Œ€์‘์šด์šฉ ์ตœ
ย 
07 ๋‹ค์–‘ํ•œ device_๋Œ€์‘_๋ฐฉ๋ฒ•
07 ๋‹ค์–‘ํ•œ device_๋Œ€์‘_๋ฐฉ๋ฒ•07 ๋‹ค์–‘ํ•œ device_๋Œ€์‘_๋ฐฉ๋ฒ•
07 ๋‹ค์–‘ํ•œ device_๋Œ€์‘_๋ฐฉ๋ฒ•์šด์šฉ ์ตœ
ย 

More from ์šด์šฉ ์ตœ (20)

Wot(daliworks) 20131113
Wot(daliworks) 20131113Wot(daliworks) 20131113
Wot(daliworks) 20131113
ย 
NIPA SW Insight Report '13.08
NIPA SW Insight Report '13.08NIPA SW Insight Report '13.08
NIPA SW Insight Report '13.08
ย 
Agile Spirit Base On The Book "Agile Samuari"
Agile Spirit Base On The Book "Agile Samuari"Agile Spirit Base On The Book "Agile Samuari"
Agile Spirit Base On The Book "Agile Samuari"
ย 
21 application and_network_status
21 application and_network_status21 application and_network_status
21 application and_network_status
ย 
20 handler and_async_task
20 handler and_async_task20 handler and_async_task
20 handler and_async_task
ย 
18 ์•ˆ๋“œ๋กœ์ด๋“œ ๋ฆฌ์ŠคํŠธ๋ทฐ_์†๋„ํ–ฅ์ƒ
18 ์•ˆ๋“œ๋กœ์ด๋“œ ๋ฆฌ์ŠคํŠธ๋ทฐ_์†๋„ํ–ฅ์ƒ18 ์•ˆ๋“œ๋กœ์ด๋“œ ๋ฆฌ์ŠคํŠธ๋ทฐ_์†๋„ํ–ฅ์ƒ
18 ์•ˆ๋“œ๋กœ์ด๋“œ ๋ฆฌ์ŠคํŠธ๋ทฐ_์†๋„ํ–ฅ์ƒ
ย 
19 ๋‚˜๋งŒ์˜ view ๋งŒ๋“ค๊ธฐ
19 ๋‚˜๋งŒ์˜ view ๋งŒ๋“ค๊ธฐ19 ๋‚˜๋งŒ์˜ view ๋งŒ๋“ค๊ธฐ
19 ๋‚˜๋งŒ์˜ view ๋งŒ๋“ค๊ธฐ
ย 
17 adapter view & db
17 adapter view & db17 adapter view & db
17 adapter view & db
ย 
16 ๋ฐ์ดํ„ฐ ์ €์žฅ๊ณผ ์‚ฌ์šฉ
16 ๋ฐ์ดํ„ฐ ์ €์žฅ๊ณผ ์‚ฌ์šฉ16 ๋ฐ์ดํ„ฐ ์ €์žฅ๊ณผ ์‚ฌ์šฉ
16 ๋ฐ์ดํ„ฐ ์ €์žฅ๊ณผ ์‚ฌ์šฉ
ย 
15 content provider
15 content provider15 content provider
15 content provider
ย 
14 broad castreceiver
14 broad castreceiver14 broad castreceiver
14 broad castreceiver
ย 
13 service ์ข€๋”
13 service ์ข€๋”13 service ์ข€๋”
13 service ์ข€๋”
ย 
12 service
12 service12 service
12 service
ย 
11 tablet ๋Œ€์‘ ๊ฐ€์ด๋“œ
11 tablet ๋Œ€์‘ ๊ฐ€์ด๋“œ11 tablet ๋Œ€์‘ ๊ฐ€์ด๋“œ
11 tablet ๋Œ€์‘ ๊ฐ€์ด๋“œ
ย 
10 view orientation_change
10 view orientation_change10 view orientation_change
10 view orientation_change
ย 
09 android keyboard & layout
09 android keyboard & layout09 android keyboard & layout
09 android keyboard & layout
ย 
08 fragment ํƒœ๋ธ”๋ฆฟ ๋Œ€์‘
08 fragment   ํƒœ๋ธ”๋ฆฟ ๋Œ€์‘08 fragment   ํƒœ๋ธ”๋ฆฟ ๋Œ€์‘
08 fragment ํƒœ๋ธ”๋ฆฟ ๋Œ€์‘
ย 
08 font size
08 font size08 font size
08 font size
ย 
07 ๋‹ค์–‘ํ•œ device_๋Œ€์‘_๋ฐฉ๋ฒ•
07 ๋‹ค์–‘ํ•œ device_๋Œ€์‘_๋ฐฉ๋ฒ•07 ๋‹ค์–‘ํ•œ device_๋Œ€์‘_๋ฐฉ๋ฒ•
07 ๋‹ค์–‘ํ•œ device_๋Œ€์‘_๋ฐฉ๋ฒ•
ย 
06 activity stack and back, flag
06 activity stack and back, flag06 activity stack and back, flag
06 activity stack and back, flag
ย 

Uml intro 0

  • 2. UML โ€ข ์š”๊ตฌ๋ถ„์„, ์‹œ์Šคํ…œ์„ค๊ณ„, ์‹œ์Šคํ…œ ๊ตฌํ˜„ ๋“ฑ์˜ ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ ๊ณผ ์ •์—์„œ, ๊ฐœ๋ฐœ์ž๊ฐ„์˜ ์˜์‚ฌ์†Œํ†ต์„ ์›ํ™œํ•˜๊ฒŒ ์ด๋ฃจ์–ด์ง€๊ฒŒ ํ•˜ ๊ธฐ ์œ„ํ•˜์—ฌ ํ‘œ์ค€ํ™”ํ•œ ๋ชจ๋ธ๋ง ์–ธ์–ด์ด๋‹ค. โ€ข UML is a universal visual modeling language. โ€ข UML models the world as systems of interacting objects. An object is a cohensive cluster of data and function. โ€ข ์„ธ์ƒ์€ object๋“ค์ด ์ƒํ˜ธ๊ฐ„ interaction์„ ํ•˜๋ฉด์„œ ์ด๋ฃจ์–ด์ง€ ๋Š” ์‹œ์Šคํ…œ๋“ค์˜ ๋ฌถ์Œ์ด๋‹ค.
  • 3.
  • 4. Diagrams in UML Diagrams static model (system structure) dynamic model (system behavior) class diagram component diagram deployment diagram object diagram use case diagram sequence diagram collaboration diagram state-chart diagram activity diagram
  • 6. ์š”๊ตฌ ์‚ฌํ•ญ ๋ถ„์„ โ€ข ๋ชจ๋“  ์‹œ์Šคํ…œ์€ ์š”๊ตฌ ์‚ฌํ•ญ์ด ์žˆ๋‹ค. ์–ด๋–ป๊ฒŒ ํ•˜ ๋ฉด ์ด๋Ÿฌํ•œ ์š”๊ตฌ ์‚ฌํ•ญ๋“ค์€ ์‚ฌ๋žŒ๋“ค์ด ์‰ฝ๊ฒŒ ์ด ํ•ดํ•˜๊ณ  ๋น ์ง„ ์š”๊ตฌ ์‚ฌํ•ญ๋“ค์„ ์ฐพ์•„๋‚ผ ์ˆ˜ ์žˆ์„ ๊นŒ? โ€ข Functional Requirement โ€“ Use Case Diagram์„ ๊ทธ๋ฆฌ์ž. โ€“ Use Case Specification์„ ์ž‘์„ฑํ•˜์ž.
  • 7. Use Case Modelling Step โ€ข Find the system boundary โ€ข Find the actors โ€ข Find the use cases: โ€“ specify the use case โ€“ create scenarios โ€ข actors โ€ข use cases โ€ข relationships โ€ข system boundary
  • 8. System boundary โ€ข ์‹œ์Šคํ…œ ๊ตฌ์ถ•์„ ์ƒ๊ฐํ•˜๋Š” ์‹œ์ ์— ๊ทผ๋ณธ์ ์ธ ์š”์†Œ๊ฐ€ ๋ฐ”๋กœ ์‹œ ์Šคํ…œ ๋ฒ”์œ„ ๊ฒฐ์ •. โ€ข ์‹œ์Šคํ…œ ๋ฒ”์œ„ ๋”ฐ๋ผ์„œ ์š”๊ตฌ์‚ฌํ•ญ์ด ๋‹ฌ๋ผ์ง„๋‹ค. โ€ข ์‹œ์Šคํ…œ ๋ฒ”์œ„๋ž€? โ€“ inside system boundary โ€ข ์–ด๋– ํ•œ ๋ถ€๋ถ„๋“ค์ด ์‹œ์Šคํ…œ ๋‚ด๋ถ€์— ํฌํ•จ๋˜์–ด ๊ตฌ์„ฑ์ด ๋˜์–ด์งˆ๊นŒ? โ€“ outside system boundary โ€ข ์–ด๋–ค ๊ฒƒ๋“ค์„ ์‹œ์Šคํ…œ ์™ธ๋ถ€๋กœ ์นญํ•ด์•ผ ํ• ๊นŒ? ์˜ˆ. ๋ณ€ํ™˜์„œ๋น„์Šค๋Š” Docs ์‹œ์Šคํ…œ ์™ธ๋ถ€? ๋‚ด๋ถ€? โ€ข use case diagram์—์„œ๋Š” ์ƒ์ž์— ์‹œ์Šคํ…œ ์ด๋ฆ„์„ ๊ธฐ๋ก
  • 9. Actor โ€ข Actor๋Š” โ€“ ์‹œ์Šคํ…œ ์™ธ๋ถ€์— ์œ„์น˜. โ€“ ์‹œ์Šคํ…œ๊ณผ ์ง์ ‘์ ์ธ ๊ต๋ฅ˜๊ฐ€ ์žˆ๋Š” ์—ญํ•  โ€ข ๋™์ผํ•œ ์‚ฌ๋žŒ์ด ๋‹ค๋ฅธ role์„ ์ทจํ•˜๋Š” ๊ฒฝ์šฐ ๋‹ค๋ฅธ actor โ€“ ์˜ˆ. ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž / ๊ด€๋ฆฌ์ž. โ€ข ์—ญํ• ์ด๊ธฐ ๋•Œ๋ฌธ์— ํƒ€ ์‹œ์Šคํ…œ๋„ actor๋กœ ์ทจ๊ธ‰ โ€“ ์˜ˆ. NOS Publisher (post to docs ๊ฒฝ์šฐ) โ€ข Who or what uses or interacts with the system? <<actor>> NOS Publisher Admin Time
  • 10. Use case โ€ข use case๋Š” โ€“ ์•ž์„œ ์ •์˜ํ•œ actor๊ฐ€ ์‹œ์Šคํ…œ์ด ํ•ด์ฃผ๊ธฐ๋ฅผ ๋ฐ”๋ผ๋Š” ๊ฒƒ๋“ค. โ€“ actor์— ์˜ํ•ด์„œ ์‹œ์ž‘ โ€“ actor ๊ด€์ ์—์„œ ์ƒ์„ธ ๋‚ด์šฉ์ด ๊ธฐ์ˆ ๋œ๋‹ค. โ€ข How does each actor use the system? โ€ข What does do for each actor? SuspendUser
  • 11. Use Case Diagram์€ ์‹œ์Šคํ…œ์˜ ๊ธฐ๋Šฅ์  ์š”๊ตฌ ์‚ฌํ•ญ์„ ๋ถ„์„ํ•˜๋ฉฐ, ์‹œ์Šคํ…œ ์—ญํ• ์„ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๋„๋ก ๋„์›€์ด ๋˜๋„๋ก ์ตœ๋Œ€ํ•œ ๊ฐ„๋‹จํžˆ ๊ทธ๋ ค์ ธ์•ผ ํ•œ๋‹ค. Use Case Diagram๋งŒ ๊ทธ๋ฆฌ๋‹ค๊ฐ€ ๋ชจ๋ธ๋ง ํฌ๊ธฐํ•˜๋Š” ์‚ฌ๋žŒ์ด ๋งŽ๋‹ค. Use Case Diagram์€ ์ ์ฐจ์ ์œผ๋กœ ๋ฐ˜๋ณต์ ์œผ๋กœ ๊ฐฑ์‹ ๋˜๋ฉด์„œ ์™„์„ฑ๋˜๊ฐ€๋Š” ๊ฒƒ์ด๋‹ค. Use Case Diagram์€ ์ตœ๋Œ€ํ•œ ๋‹จ์ˆœํ™”๋ฅผ ์‹œํ‚ค๋„๋ก ๊ทธ๋ ค๊ฐ„๋‹ค.
  • 12. Detail a use case Use Case modelling์„ diagram ๊ทธ๋ฆฌ ๋Š” ์ˆœ๊ฐ„์—์„œ ๋งˆ๋ฌด๋ฆฌ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค. ์ด๋กœ ์ธํ•ด ๋งŽ์€ ๋ฌธ์ œ ๋ฐœ์ƒํ–ˆ์—ˆ๋‹ค. ์ด ๋กœ ์ธํ•ด Use Case Diagram ๋ฐ˜๋Œ€๋ก ์ž ๋“ค๋„ ๋‚˜ํƒ€๋‚ฌ์—ˆ๋‹ค. ์ด๋Š” ์ƒ์„ธํ™” ๊ณผ์ •์ด ์—†์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
  • 13.
  • 14. ์˜ˆ์™ธ ์ƒํ™ฉ๋“ค์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ (1) โ€ข If / Else, For, While ๊ธฐ๋ฒ• ์ ์šฉ โ€ข alternative flow: post condition์— ๊ธฐ์ˆ  โ€“ ์–ด๋Š ์‹œ์ ์—๋‚˜ ๋ฐœ์ƒ๋  ์ˆ˜ ์žˆ๋Š” ์ƒํ™ฉ์— ๋Œ€ํ•œ ๊ธฐ์ˆ  โ€“ ์˜ˆ. ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์ดํŠธ๋ฅผ ๋„์ค‘์— ๋‚˜๊ฐ€๋ฒ„๋ฆฐ๋‹ค.
  • 15. ์˜ˆ์™ธ ์ƒํ™ฉ๋“ค์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ (2) โ€ข scenario๋Š” โ€“ ์ •์ƒ์ ์ธ use case ๋™์ž‘(primary scenario) ๊ฒฝ์šฐ ์™ธ ๊ฒฝ ์šฐ์— ๋Œ€ํ•ด์„œ ๋ณ„๋„ use case spec.(secondary scenarios)๋กœ ์ •๋ฆฌ โ€“ a use case = primary scenario + secondary scenarios โ€“ scenario ์‚ฌ์šฉ ๊ฒฝ์šฐ์—๋Š” branch๊ฐ€ ์—†๋‹ค. โ€ข secondary scenario๋“ค์€ ๋ณ„๋„ use case spec. ์œผ ๋กœ ์ •๋ฆฌ. ํ‘œ๊ธฐ๋Š” ํƒ€์ดํ‹€์— ๋Œ€์ƒ Use case ๊ธฐ๋ก ํ›„ ์ถ”๊ฐ€๋กœ secondary scenario ๋ช…์‹œ
  • 16.
  • 17. Use Case Modelling Part 2. Advanced
  • 18. advanced topics โ€ข Actor generalization โ€“ ์ผ๋ฐ˜ํ™” ํ•  ์ˆ˜ ์žˆ๋Š” ์—ญํ• ๊ณผ ์„ธ๋ถ„ํ™” ๊ฐ€๋Šฅ ์—ญํ•  โ€ข Use case generalization โ€“ ์ผ๋ฐ˜ํ™” ๊ฐ€๋Šฅํ•œ use case์— ์ด์— ๋Œ€ํ•ด ์„ธ๋ถ„ํ™” ๊ฐ€๋Šฅํ•œ use case ๊ด€๊ณ„ โ€ข <include>> โ€“ ํŠน์ • use case๊ฐ€ ๋‹ค๋ฅธ use case๋ฅผ ํฌํ•จํ•˜๋Š” ๊ฒฝ์šฐ โ€ข <<extend>> โ€“ ๊ธฐ๋ณธ use case๊ฐ€ ์žˆ๊ณ  ํŠน์ • ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ ์ด๋ฅผ ํ™•์žฅํ•˜๋Š” use case๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ โ€ข ์ถ”๊ฐ€๋กœ ์‚ฌ์šฉ๋˜๋Š” ์œ„ ๊ฐœ๋…๋“ค์€ ์ตœ๋Œ€ํ•œ use case model์„ ๋‹จ์ˆœํ™” ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋งŒ ์‚ฌ์šฉ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • 19. Actor generalization - target case โ€ข ์œ ์‚ฌ use case๊ฐ€ ์ค‘๋ณต๋˜๋Š” ๊ฒฝ์šฐ์— ์ด์— ๋Œ€ํ•ด์„œ commonํ•œ actor(role)๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒฝ์šฐ
  • 21. Use case generalization โ€ข the child use case โ€“ ๋ถ€๋ชจ use case ํŠน์ • ์†์„ฑ๋“ค์„ ์ƒ์† โ€“ ์ƒˆ๋กœ์šด ํŠน์ง•๋“ค ๋˜๋Š” ๊ฒฝ์šฐ๋“ค ํฌํ•จ โ€“ ๊ธฐ์กด ๊ธฐ๋Šฅ๋“ค์„ ๊ฒฝ์šฐ์— ๋”ฐ๋ผ์„œ ๊ตฌ์ฒดํ™” (template) โ€ข use case spec. ํ‘œ๊ธฐ๋ฒ• โ€“ normal text: ๋ถ€๋ชจ use case ๊ทธ๋Œ€๋กœ ์ƒ์† ๋ถ€๋ถ„ โ€“ Italic text: ํŠน์ • ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ child ๋งŒ์˜ ํŠน์„ฑ ์‚ด๋ฆผ โ€“ Bold text: child์—์„œ ์ถ”๊ฐ€๋œ ๋ถ€๋ถ„
  • 22. Use case generalization - example ๊ทธ๋Œ€๋กœ ์ƒ์† ํŠน์ˆ˜ํ™” ์ถ”๊ฐ€
  • 23. <<include>> โ€ข php์˜ include์™€ ์œ ์‚ฌ. โ€ข ๋™์ผ use case๋ฅผ ์ค‘๋ณต ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ โ€ข behavior fragment actor์— ์˜ํ•ด ์‹คํ–‰๋„ ๊ฐ€๋Šฅ
  • 24. use case spec. of <<include>>
  • 25. <<extend>> โ€ข <<extend>>๋Š” ์ด๋ฏธ ์กด์žฌํ•˜๋Š” use case์— ๋Œ€ํ•ด์„œ ์ƒˆ๋กœ์šด ๋™์ž‘์„ ์ถ”๊ฐ€ ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. โ€ข <<extend>>๋˜๊ธฐ ์ „์—๋„ ์ •์ƒ์ ์ธ use case. <<include>>๊ฐ€ ์—†์ด๋Š” ์ •์ƒ์ ์ธ use case๊ฐ€ ์•„๋‹Œ ๊ฒƒ๊ณผ ์ฐจ์ด๊ฐ€ ์žˆ์Œ. โ€ข ์˜ˆ. ๋„์„œ๊ด€์—์„œ ์‚ฌ์„œ๊ฐ€ ์ฑ…์„ ๋ฐ˜๋‚ฉ ๋ฐ›๋Š” use case. โ€ข ๋ฐ˜๋‚ฉ ์‹œ์ ์— ์—ฐ์ฒด๋ฃŒ๊ฐ€ ์žˆ๋Š” ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์ถ”๊ฐ€์ ์ธ ์กฐ์น˜๊ฐ€ ํ•„์š”ํ•œ use case๋„ ์žˆ๋‹ค.
  • 26. use case spec. for <<extend>>