(ํ์์ผ)
- github ์ด์ ์์ฑํด์ jira๋ ์ฐ๋ ์ค์ตํ๊ธฐ(?)
- README.md ํ์ผ์์ md๋...? markdown ํ์ผ์ด๋ผ๋ ๋ป (์น ํ์ด์ง ๊ธ์ฌ๋ฆด ๋ ์ฐ์)
Todo : ์ด์ ์งํ ์ ์ํ
In Progress : ๋ด๋น์๊ฐ ์ด์๋ฅผ ํ์ธํ๊ณ ์งํ์ค์ธ ์ํ
In Review : ๊ฒํ ๋ฅผ ์์ฒญ/์งํ ์ค์ธ ์ํ(์ค๊ฐ์ ๊ฒํ ๋จ๊ณ๋ฅผ ๋ฃ๋๊ฒ ์์ฆ ๊ทผํฉ)
Done : ์๋ฃ ๋ฐ ์ข ๋ฃ๋ ์ํ
ํ๋ก์ ํธ ๋ชฉํ : ์ ํด์ง ๋น์ฉ๊ณผ ๊ธฐ๊ฐ๋ด์์ ์ด๋ป๊ฒ ํ๋ฉด ํ์ง์ ๋์ด๋ฉด์ ๋ง๋ฌด๋ฆฌํ ์ ์์๊ฑด์ง...
- R&R : Role & Responsibility (pm์ด๋ผ๋ฉด ํ๋ก์ ํธ ๊ด๋ฆฌ๋ฅผ ์ํ ์ฑ ์)
- wbs ์ค์ต์ ๋ด์ผ!!
- ์ํ๊ณผ ์ด์์ ์ฐจ์ด : ์ํ(potential problem)์ ์์ง ์ ์ฌ์ ๋ฌธ์ ๋ก ์์ง ์ผ์ด๋์ง ์์ ๊ฒ์ด๊ณ ์ด์๋ ์ผ์ด๋ ๋ฌธ์ ๋ก ์ค์ ๋ก ์ผ์ด๋ ์ด์๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด ์ํ์ ๋ฐฉ์งํด์ผํ๋ค!
- ์ํ๊ณผ ๊ด๋ จ๋์ฉ์ด : ๋ฐ์ ๊ฐ๋ฅ์ฑ๊ณผ ๋ฐ์ํ์๋์ ์ฌ๊ฐ๋(์ํ๋)๋ฅผ ๊ณฑํ๊ฒ์ด ์ํ๋.. ๋์๊ฒ์ด ์ฐ์ ์์๋ก ์ ํด์ง๊ณ ์ด๋ฅผ ๋๋นํ๊ธฐ ์ํด ์ฒ ์ ํ๊ฒ ๊ณํ์ ์ธ์์ผํ๋ค
(์์์ผ)
- wbs ๋ง๋ค๊ธฐ
๋ฒ ์ด์ค ๋ผ์ธ : ํน์ ์์ ์์ ํ์ํ ํ์ผ๋ค์์ ํํ ์ฌ์ฉํ ์ ์๊ฒ ํด์ฃผ๋ ์์ ..
- ์ด๋ค ์๊ตฌ์ฌํญ ๋ช ์ธ์๋ฅผ ๋ฐ์ํ๋ ์์ค์ฝ๋์ธ๊ฑด์ง๋ฅผ ์๊ธฐ ์ ๋งคํ๋ฏ๋ก ์ด๋ค ์ฐ์ถ๋ฌผ์ ๊ธฐ์ค์ผ๋ก ๊ฐ๋ฐํ๊ฑด์ง๋ฅผ ์๊ธฐ ์ํด ์ ์ด ๋์๊ฒ์ด baseline..
- ์ด๋ค ์๊ตฌ์ฌํญ ๋ช ์ธ์์ ์ค๊ณ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ฐ๋ฐํ ๊ฑด์ง๋ฅผ ํ์ธํ๊ณ ๊ฐ๋ฐํด์ผํ๋ค!
- ์ํํธ์จ์ด ํ์ ํต์ : ํ์ํต์ ์์ํ์์ ๋ณ๊ฒฝ ์์ฒญ์ ์์ฉํ ๊ฒ์ธ์ง ํ๊ฐํ๊ณ ํ์ํ๋ ๊ณผ์ (CCBํํ ํต๊ณผ ๋ฐ์์ผ ์ ๋ฐ์ดํธ ๊ฐ๋ฅ)
์๊ตฌ์ฌํญ ๋ช ์ธ์(SW Requirement Specification) : ๋ฌด์์ ๊ฐ๋ฐํ ๊ฑด์ง์ ์ด์ ์ ๋ง์ถ๋ค! (์ด๋ค ๊ธฐ๋ฅ์ ์ ๊ณตํ ๊ฒ์ธ์ง, ์ด๋ค ํ์ง๋ก / ์ด๋ป๊ฒ๋ ์ค๊ณ์์ ๋ค์ด๊ฐ๋๋ค..)
- ์์คํ (SYSRS)
- ์ํํธ์จ์ด(SWRS)
- ํ๋์จ์ด(HWRS)
๊ธฐ๋ฅ vs ๋น๊ธฐ๋ฅ
- ๊ธฐ๋ฅ : ์ฐ ๊ธฐ๋ฅ
- ๋น๊ธฐ๋ฅ : ํ์ง, ์ฑ๋ฅ, ์ ์ฝ์ฌํญ
๋น๊ธฐ๋ฅ ์๊ตฌ์ฌํญ ์์
๊ธฐ๋ฅ ์๊ตฌ์ฌํญ ์ด๋ป๊ฒ ๋ถ์ํ๊ณ ์์ฑํ๋์ง... (๋์ถ, ๋ถ์, ๋ช ์ธ, ํ์ธ...)
- ์ข์ ์๊ตฌ์ฌํญ ๋ช ์ธ์๋ผ๋ฉด ์๊ตฌ์ฌํญ ๋ช ์ธ์๋ฅผ ๊ฐ์ง๊ณ ํ ์คํธ๋ฅผ ๋ง๋ค์ด์ ๋ค ์ ๋์๊ฐ๋์ง...(ํ ์คํธ๊ฐ ๊ฐ๋ฅํ๋ค๋ฉด ์๊ตฌ์ฌํญ์ด ๊ต์ฅํ ๋ํ ์ผ ํ๋ค๋๊ฒ!! / ์๋๋ผ๋ฉด ์๊ตฌ์ฌํญ ๋ช ์ธ์ ๋ ์์ธํ๊ฒ ํด๋ฌ๋ผ๊ณ ๋ถํํ๊ธฐ!!)
- ์ถ์ ์ฑ : ์ฐ๋ฆฌ์ ์์ค์ฝ๋๊ฐ ์ด๋ค ์ค๊ณ์, ์ํคํ ์ฒ ์ค๊ณ์, ์๊ตฌ์ฌํญ ๋ช ์ธ์๋ฅผ ๋ง์กฑ์ํค๊ธฐ ์ํด ๋์๋์ง ์ถ์ ์ด ๊ฐ๋ฅํ์ง... / ์ฐ๋ฆฌ์ ์๊ตฌ์ฌํญ์ ์ธ์ ๋ ์ง ๋ณ๊ฒฝ๋ ์ ์๊ธฐ ๋๋ฌธ์ ์ด๋ค๊ฑธ ์์ ํด์ผํ ์ง ์ฐพ๋๋ฐ ์๊ฐ์ด ์ค๋๊ฑธ๋ฆผ, ๋๋ฝ ๊ฐ๋ฅํ๋ค
- ๋ณ๊ฒฝ ์ฉ์ด์ฑ : ๋ค๋ฅธ๊ฒ๊ณผ ์ต๋ํ ๋ ๋ฆฝ์ฑ์ ๋์ฐ๋๊ฒ์ด ์ข๋ค(์์กด์ ์ด๋ฉด ๋ณ๊ฒฝํ๊ธฐ ํ๋ฆ)
- uml ๊ทธ๋ฆฌ๊ธฐ ์ค์ต์ ๋ด์ผ..
<๋ชฉ์์ผ)
- UML : ์์คํ ์ค๊ณ๋ฅผ ํํํ๋๋ฐ ์ฌ์ฉํ๋ ํตํฉ๋ ๋ชจ๋ธ๋ง์ธ์ด
MBD : MODEL BASED DEVELOPMENT / ๋ชจ๋ธ๋ง๋ง ํ๋ฉด ์๋์ผ๋ก ๊ฐ๋ฐํด์ค... / ๊ฐ๋ฐ์๋ ์์ด์ ธ๋... ์ค๊ณ์๋ ์ ์์ด์ง๋ค
USECASE DIAGRAM ๊ตฌ์ฑ์์
- user actor : ์์คํ ์ ์ธ๋ถ์ ์์ผ๋ฉด์ ์์คํ ๊ณผ ์ํธ์์ฉํ๋ ๊ฒ๋ค... ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ์ ํน์ ์ธ๋ถ ์์คํ
- system actor : ํด๋น ํ๋ก์ ํธ์ ๊ฐ๋ฐ ๋ฒ์์๋ ์ํ์ง ์์ง๋ง ๋ฐ์ดํฐ๋ฅผ์ฃผ๊ณ ๋ฐ๋ ๋ฑ ์๋ก ์ฐ๋๋๋ ๋ค๋ฅธ ์์คํ
ex) ์ฐ๋ฆฌ ์์คํ
์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๋ ๊ธฐ์์ฒญ ์์คํ
- usecase : ์์คํ ์ด ์กํฐ์๊ฒ ์ ๊ณตํด์ผ ํ๋ ๊ธฐ๋ฅ์ ์งํฉ / ๋์ฌ+๋ช ์ฌ ํ์์ผ๋ก ์์ฑ(์ฑ์ ๋ฑ๋ก, ์ฑ์ ์กฐํ)
- relationship : ์กํฐ์ ์ ์ค์ผ์ด์ค / ์ ์ค์ผ์ด์ค์ ์ ์ค์ผ์ด์ค ์ฌ์ด์ ์ฐ๊ด ๊ด๊ณ!!! (๊ด๊ณ ์ข ๋ฅ.....)
# USECASE DIAGRAM ๊ทธ๋ฆฌ๊ธฐ
# ์ค๊ณ
- ๊ด์ : HOW(์ด๋ป๊ฒ)
- ํน์ง : ์ฌ์ฉ ํ๊ฒฝ์ ๋ฐ์ํด ๊ตฌ์ฒด์
- ์์ ์ค๊ณ์, ์์ธ ์ค๊ณ์ ๋๊ฐ์ง๋ก ๋๋จ
(๊ธ์์ผ)
https://velog.io/@hongjunland/Clean-Architecture
ํด๋ฆฐ ์ํคํ ์ฒ ํ๋ ์...
# ์ค๊ณ!!!
## ์ถ์ํ : ์์ ๋ ๋ฒจ์์ ์ ํ์ ๊ตฌํ์ ์๊ฐํด๋ด!!
Top-down(ํํฅ์)๊ณผ Bottom-up(์ํฅ์)์ ์ฐจ์ด..
comfile ๊ณผ์ : .java ํ์ผ์ ์ปดํจํฐ๊ฐ ํด์ํ ์ ์๋๋ก ์ปดํ์ผ๋ฌ๋ฅผ ๊ฑฐ์ณ์ .class ํ์ผ๋ก ๋ฐ๊ฟ์ฃผ๋ ๊ณผ์
## ๋ถํ ๊ณผ ์ ๋ณต(Divide Conquer)
- Component : ์ํํธ์จ์ด๋ฅผ ๊ตฌ์ฑํ๋ ์์๋ค์ ์งํฉ / ํด ์๋ ์์ ์๋ ์ด๋ป๊ฒ ์ชผ๊ฐ์ง๋์ง๋ ๋๋ง๋ค ๋ค๋ฅด๋ค
- Unit : ๋์ด์ ๋๋ ์ ์๋ atomicํ ์์
๋ถํ ๊ณผ ์ ๋ณต์ ์๋ฏธ...
- ํ๋๋ก ํ์ง ๋ง๊ณ ์ฌ๋ฌ ๊ฐ๋ก ์ชผ๊ฐ๊ณ ํ๋ํ๋ ์์ ๋จ์๋ถํฐ ๊ฐ๋ฐํ๊ณ ํฉ์ณ์ ์ํฅ์์ผ๋ก ๊ฐ๋ฐํด ๋๊ฐ๋ผ๋ ์๋ฏธ
- ๋ชจ๋ํ๋ ๊ฐ์ ์๋ฏธ(= unit๊ณผ๋ ๊ฐ์)
- ํ ํ๋ฉด์ ๋ณด๊ธฐ ์ข์ 50-80์ค ์ฌ์ด๋ก ํจ์๋ฅผ ์์ฑํ๋ ๊ฒ์ด ์ข์
## ๋ชจ๋ํ(Modularity)
- ์๋ฏธ : ์ํํธ์จ์ด ๊ตฌ์กฐ๋ฅผ ์ด๋ฃจ๋ ๊ธฐ๋ณธ ๋จ์
- ํน์ง
- ๋ ๋ฆฝ์ ์ธ ๊ธฐ๋ฅ์ ์ํํ๋ ๋จ์
- ์ ์ผํ ์ด๋ฆ์ ๊ฐ์ง
- ๋ชจ๋์์ ๋ ๋ค๋ฅธ ๋ชจ๋์ ํธ์ถ(call)ํ ์ ์์ -> interaction์ ํ ์ข ๋ฅ / interface : interaction์ ํ๋๋ฐ ์์ฝ๊ฒ ํ๋ ์๋จ(ํ๋ฉด) / ํธ์ถ์ ํ๋๊ฒฝ์ฐ... ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๊ณ ์๋ต ๋ฐ์
- ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์์๋ ๋ชจ๋์ ํธ์ถํ ์ ์์
- ๋ชจ๋์ ํฌ๊ธฐ : ์์คํ ์ ๊ท๋ชจ, ์ ํ, ํน์ฑ์ ๋ฐ๋ผ ์์ / ์์ ์์คํ ์ด๋ผ๋ฉด ๋ชจ๋์ ํฌ๊ธฐ๋ ํจ์ / ํฐ ์์คํ ์ด๋ผ๋ฉด...
- ์์ง๋๋ ๊ฐํ๊ฒ(๋ชจ๋ ๊ตฌ์ฑ ์์๊ฐ์๋ ๊ฐํ๊ฒ) / ๊ฒฐํฉ๋๋ ์ฝํ๊ฒ(์์กด์ฑ์ด ์ฝํด์ผํ๋ค)
- ๊ฒฐํฉ๋๋ฅผ ๋์จํ๊ฒ ํ๋ผ๋ ๋ง์ด... ๋ชจ๋ ๊ด๊ณ๊ฐ ์์ข๋ค๋ ๋ง์ด ์๋๋ผ A,B๊ฐ ์๋ก ํธ์ถํ์ฌ ์๋ฌ์ ๋ฌดํ๋ฃจํ๋ฅผ ๋์ง ๋ง๋ผ๋ ์๋ฆฌ
- ๊ฒฐํฉ๋๊ฐ ๋์์๋ก ๋ณต์กํด์ง / ๋ฎ์์๋ก ๋จ์ํด์ง๋ ์ ์ง๋ณด์, ์ฌ์ฌ์ฉ์ฑ์ด ์ข๋ค
C์ธ์ด ์ ์ฐจ์งํฅํ ์ธ์ด...
- ๋ค๋ฅธ ์ธ์ด๋ค๋ ๋ค ์์๋๋ก ์ฝ๋๊ฐ ์คํ๋๋๋ฐ ์ ์ ์ฐจ์งํฅ์ด๋ผ๊ณ ํ๋์ง ???? ํนํ๋ ์์์ ์ง์คํด์?? ํจ์๋ฅผ ์ด๋์๋ ์ฐ๋ ค๊ณ ํ๋ฉด ์ ์ญ๋ณ์๋ก ์ ์ธํด์ผ ํ๋ค / ์ ์ง๋ณด์ ์ด๋ ค์
JAVA ๊ฐ์ฒด์งํฅ ์ธ์ด...
- ์ฌ๋์ด ์ดํดํ๊ฒ์ฒ๋ผ ์ฝ๋๋ฅผ ์ง๋ณด์ ํด์ ๋์จ ์ธ์ด
- interaction์ด ์ด๋ฃจ์ด์ง๊ธฐ ๋๋ฌธ์ loose coupling, strong cohension์ ๊ผญ ํ์
# ๊ฐ์ฒด์งํฅ๋ฐฉ๋ฒ๋ก ์ ํน์ง
- ์บก์ํ : ์ ๋ณด์๋์ ๊ฐ๋ ์ด ํฌํจ๋ ๊ฐ๋ / ๋์ ์ ๋ณด๋ฅผ ๊ฐ์ธ์ ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ ์ ๋ณด๋ฅผ ์จ๊ธฐ๋ ํจ๊ณผ
- ์์ : ๋ค๋ฅธํด๋์ค์ ์์ฑ์ ๋ฌผ๋ฌ๋ฐ์ ๋ด ๊ฒ์ฒ๋ผ ์ฐ๋ ๊ฒ
- ๋คํ์ฑ : ํ๋ ์ด์์ ํํ๋ฅผ ๊ฐ๋ ๊ฒ
- ์ค๋ฒ๋ก๋ฉ : ๊ฐ์ ํจ์ ์ด๋ฆ์ด์ด๋ ๋งค๊ฐ๋ณ์์ ๊ฐ์๋ ํ์ ์ด ๋ค๋ฅด๋ฉด ์ค๋ณต ์ ์ํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅ
- ์ค๋ฒ๋ผ์ด๋ฉ : ์์ ๊ด๊ณ์์ ๋ถ๋ชจ์ ๊ฐ์ ธ์จ ๋ฉ์๋๋ฅผ ์์ ํด๋์ค๊ฐ ์ฌ์ ์ ํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅ
- ์ค๋ฒ๋ผ์ด๋ฉ์ ๋ถ๋ชจ ํด๋์ค์ ๋ฉ์๋๋ฅผ ์์ ํด๋์ค์์ ๋์ผํ ์ด๋ฆ๊ณผ ๋งค๊ฐ๋ณ์๋ก ์ฌ์ ์ํ์ฌ, ์์ ํด๋์ค์์ ๋ฉ์๋๋ฅผ ํธ์ถํ ๋ ๋ถ๋ชจ ํด๋์ค์ ๋ฉ์๋๊ฐ ์๋ ์์ ํด๋์ค์ ๋ฉ์๋๊ฐ ์คํ๋๋๋ก ํ๋ ๊ฒ์ ๋๋ค. ์ค๋ฒ๋ผ์ด๋ฉ์ ๋ฉ์๋์์๋ง ์ด๋ฃจ์ด์ง๋๋ค.
- ์๋์์ ์์ ํด๋์ค์์ ๋ถ๋ชจ ํด๋์ค์ ๋์ผํ ์ด๋ฆ์ ๋ณ์๋ฅผ ์ ์ธํ์ฌ ๋ถ๋ชจ ํด๋์ค์ ๋ณ์๋ฅผ ๋ฎ์ด์ฐ๋ ๊ฒ์ ๋๋ค. ์ด ๊ฒฝ์ฐ ์์ ํด๋์ค์ ์ธ์คํด์ค๋ ๋ถ๋ชจ ํด๋์ค์ ๋ณ์ ๋์ ์์ ํด๋์ค์ ๋ณ์๋ฅผ ์ฐธ์กฐํ๊ฒ ๋ฉ๋๋ค. ํ์ง๋ง ๋ถ๋ชจ ํด๋์ค์ ๋ณ์ ์์ฒด๊ฐ ๋ณ๊ฒฝ๋๋ ๊ฒ์ ์๋๋๋ค
'java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ธํผ_๋น์ ๊ณต ์๋ฐ ๋๊ฐ3. ํด๋์ค์ ๊ฐ์ฒด(์๋ฐ์ ๊ฝ?) (0) | 2023.09.29 |
---|---|
java๊ฐ๋ ์ด๋ชจ์ ๋ชจ.. (1) | 2023.09.24 |
์๋ฐ - ์ ์ด๋ฌธ ์ดํดํ๊ธฐ๐ค (0) | 2023.09.21 |
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ2 (0) | 2023.09.13 |
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ๐ฎ (0) | 2023.09.08 |