๋ถ๋ฅ:์ปดํจํฐ ๊ทธ๋ํฝ
์ด ๋ฌธ์์ ์๋ณธ์ ์ธ๋ถ ์ํค์์ ๊ฐ์ ธ์์ต๋๋ค.
1. ์ ์[ํธ์ง]
Unified Modeling Language์ ์ฝ์ด.
์ํ์ ์ธ ๋ฌธ๋ฒ๊ณผ ๊ตฌ์ฑ์ผ๋ก ์ด๋ค์ง ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์๋ ๋ฌ๋ฆฌ UML์ ๋ชจ๋ธ๋ง ์ธ์ด์ด๋ค. ๋ค์๋งํด ์ค๊ณ๋๋ฅผ ๊ทธ๋ฆฌ๊ธฐ ์ํ ์ธ์ด๋ผ๋๊ฒ. ํ๊ต๋ค๋๋ ์ค๊ณผ๋ ๊ธฐ์ ์๊ฐ์ ๊ฐ๋จํ ๊ฑด๋ฌผ ๋๋ฉด ๊ธฐํธ์ ๋ํด ๋ฐฐ์ด ๊ธฐ์ต์ด ์๋ค๋ฉด, ๊ทธ๋ฐ ๊ฑด์ถ ๋๋ฉด๊ณผ ์ ์ฌํ๊ฒ ์ ํด์ง ๊ธฐํธ๋ก ๊ตฌ์กฐ๋ฅผ ์ค๋ช ํ ์ ์๋๋ก ํ๋ ์ธ์ด๋ผ๊ณ ๋ณด๋ฉด ๋๋ค. [1]
๊ธฐ์์ Rational ์ฌ์ Grady Booch, James Rumbaugh์ ์ํด 1994๋ 10์์ ์ฒ์ ๊ฐ๋ฐ์ ์ฐฉ์๋์๋ค. ์ดํ 1995๋ 10์์ Unified Method 0.8์ ๋ช ์นญ์ผ๋ก OOPSLA '95์์ ๋ฐํ๋์์ผ๋ฉฐ, ์ดํ Ivar Jacobson์ด UML ๊ฐ๋ฐ์ ํจ๊ป ํ๋ ฅํ๋ฉด์ 1996๋ ์ ๋ฒ์ 0.9๋ฅผ ๋ฐํํ์๊ณ , 1997๋ 11์์๋ UML 1.1 ์ด OMG[2]์ ์ํด ํ์ค์ผ๋ก ์ฑํ๋์๋ค.
2005๋ ์ UML 2.0์ด ๋ฐํ๋์์ผ๋ฉฐ ํ์ฌ 2011๋ ์ ๋ฐํ๋ UML 2.4.1 ์ด ์ต์ ํ์ค์ด๋ค. 2012๋ 10์์ ์งํ์ค์ธ ์ํ์ UML 2.5๊ฐ ๋ฐํ๋์์ผ๋ฉฐ ์ฌ์ ํ ์งํ์ค ์ํ.
์๋๋ ๋ชจ๋ ์๋ฌธํ์ด๋ค.
ํ์ฌ ์ฒด๊ณ๊ฐ ์ด๋์ ๋ ์กํ UML 2.5
์ธํฐ๋ท์ ๋ฐฐํฌ๋๊ณ ์๋ ์๋ฌธ UML ์ ๋ฌธ ์๋ฃ๋ค์ค ์ผ๋ฐ์ ์ผ๋ก ์ฐ์ด๋ James Rumbaugh์ UML 2.0 ํธ๋๋ถ 2ํ
์ธํฐ๋ท์ ๋ฐฐํฌ๋๊ณ ์๋ ์๋ฌธ UML ์ ๋ฌธ ์๋ฃ๋ค์ค ์ผ๋ฐ์ ์ผ๋ก ์ฐ์ด๋ UML superstructure
์ธํฐ๋ท์ ๋ฐฐํฌ๋๊ณ ์๋ ์๋ฌธ UML ์ ๋ฌธ ์๋ฃ๋ค์ค ์ผ๋ฐ์ ์ผ๋ก ์ฐ์ด๋ UML Infrastructure
๋ก๋ฒํธ ๋งํด์ ์๋ฐ ํ๋ก๊ทธ๋๋ฐ์ฉ UML ์ค์ ์ ๋ฌธ์
์ํ์ ์ธ ๋ฌธ๋ฒ๊ณผ ๊ตฌ์ฑ์ผ๋ก ์ด๋ค์ง ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์๋ ๋ฌ๋ฆฌ UML์ ๋ชจ๋ธ๋ง ์ธ์ด์ด๋ค. ๋ค์๋งํด ์ค๊ณ๋๋ฅผ ๊ทธ๋ฆฌ๊ธฐ ์ํ ์ธ์ด๋ผ๋๊ฒ. ํ๊ต๋ค๋๋ ์ค๊ณผ๋ ๊ธฐ์ ์๊ฐ์ ๊ฐ๋จํ ๊ฑด๋ฌผ ๋๋ฉด ๊ธฐํธ์ ๋ํด ๋ฐฐ์ด ๊ธฐ์ต์ด ์๋ค๋ฉด, ๊ทธ๋ฐ ๊ฑด์ถ ๋๋ฉด๊ณผ ์ ์ฌํ๊ฒ ์ ํด์ง ๊ธฐํธ๋ก ๊ตฌ์กฐ๋ฅผ ์ค๋ช ํ ์ ์๋๋ก ํ๋ ์ธ์ด๋ผ๊ณ ๋ณด๋ฉด ๋๋ค. [1]
๊ธฐ์์ Rational ์ฌ์ Grady Booch, James Rumbaugh์ ์ํด 1994๋ 10์์ ์ฒ์ ๊ฐ๋ฐ์ ์ฐฉ์๋์๋ค. ์ดํ 1995๋ 10์์ Unified Method 0.8์ ๋ช ์นญ์ผ๋ก OOPSLA '95์์ ๋ฐํ๋์์ผ๋ฉฐ, ์ดํ Ivar Jacobson์ด UML ๊ฐ๋ฐ์ ํจ๊ป ํ๋ ฅํ๋ฉด์ 1996๋ ์ ๋ฒ์ 0.9๋ฅผ ๋ฐํํ์๊ณ , 1997๋ 11์์๋ UML 1.1 ์ด OMG[2]์ ์ํด ํ์ค์ผ๋ก ์ฑํ๋์๋ค.
2005๋ ์ UML 2.0์ด ๋ฐํ๋์์ผ๋ฉฐ ํ์ฌ 2011๋ ์ ๋ฐํ๋ UML 2.4.1 ์ด ์ต์ ํ์ค์ด๋ค. 2012๋ 10์์ ์งํ์ค์ธ ์ํ์ UML 2.5๊ฐ ๋ฐํ๋์์ผ๋ฉฐ ์ฌ์ ํ ์งํ์ค ์ํ.
์๋๋ ๋ชจ๋ ์๋ฌธํ์ด๋ค.
ํ์ฌ ์ฒด๊ณ๊ฐ ์ด๋์ ๋ ์กํ UML 2.5
์ธํฐ๋ท์ ๋ฐฐํฌ๋๊ณ ์๋ ์๋ฌธ UML ์ ๋ฌธ ์๋ฃ๋ค์ค ์ผ๋ฐ์ ์ผ๋ก ์ฐ์ด๋ James Rumbaugh์ UML 2.0 ํธ๋๋ถ 2ํ
์ธํฐ๋ท์ ๋ฐฐํฌ๋๊ณ ์๋ ์๋ฌธ UML ์ ๋ฌธ ์๋ฃ๋ค์ค ์ผ๋ฐ์ ์ผ๋ก ์ฐ์ด๋ UML superstructure
์ธํฐ๋ท์ ๋ฐฐํฌ๋๊ณ ์๋ ์๋ฌธ UML ์ ๋ฌธ ์๋ฃ๋ค์ค ์ผ๋ฐ์ ์ผ๋ก ์ฐ์ด๋ UML Infrastructure
๋ก๋ฒํธ ๋งํด์ ์๋ฐ ํ๋ก๊ทธ๋๋ฐ์ฉ UML ์ค์ ์ ๋ฌธ์
2. ์ ์ฉ ๋ถ์ผ[ํธ์ง]
3. ํ๊ตญ์ด๋ก ๋ฒ์ญ๋ ์์ ๋ค[ํธ์ง]
ํ๊ตญ์ UML ๊ด๋ จ ์์ ์ ์์ญ ์ข
์ด ๋์์ผ๋, UML์ ์๋ฏธ๋ฅผ ์ ํํ ์๊ณ ์ค๋ช
ํ๋ ์ฑ
์ ์๋ค. ๋ฒ์ญ์ ์ง์ ๋๋์ฑ ๊ธฐ๋ํ๋ฉด ๊ณค๋ํ๋ค. ์จ์ ํ ์๋ฏธ๋ฅผ ์ค๋ช
ํ๋ ์ฑ
์ ์ ์ ์ ํํธ์ ๋งํฌ ๊ฑธ๋ฆฐ PDF๋ฅผ ๋ณด๊ธธ ๋ฐ๋๋ค. ์ค์ฉ์๋ก ๊ณต๋ถํ๋ ๊ฒ์ ๋ณ๋ก ์ถ์ฒํ์ง ์๋๋ค. ๋ค๋ฅธ ๋ชจ๋ธ๋ง ์ธ์ด ์ตํ๋ฏ์ด ๊ฐ๋ณ๊ฒ ์๋ฐ ๊ฒํฅ๊ธฐ๋ก ๋ฐฐ์์ ๊ฐ๋จํ ๋ค์ด์ด๊ทธ๋จ์ ๊ทธ๋ฆฌ๋ ๊ฒ์ด๋ผ๋ฉด ๋ชจ๋ฅผ๊น, ๋๊ท๋ชจ ํ๋ก์ ํธ์ UML์ ์ธ ๋๋ ์ด๋ฐ ์์ผ๋ก ์ ๊ทผํ๋ฉด ๋ฐ๋์ ๋ฌธ์ ๊ฐ ์๊ธด๋ค. ๋๊ท๋ชจ ํ์ ์ด๋ฃจ๋ ์์ ๊ฑด์ค์ฌ, ํญ๊ณต๊ธฐ ๊ฐ๋ฐ์ฌ์์๋ UML(ํน์ UML๊ฐ์ ๋ชจ๋ธ๋ง ์ธ์ด)์ ํต๋ฌํ ์ธ์ดํ์/๊ธฐํธํ์/์ํ์๋ฅผ ์ฑ์ฉํ๋ค.
4. ํ์ ํ์ค ๋ฐ ์ธ์ด[ํธ์ง]
- OMG SysML (System Modeling Language)
- OMG UML Testing Profile์ธ ์ฝ 20์ฌ๊ฐ์ง ๋ชจ๋ธ๋ง ์ธ์ด
- AUTOSAR (AUTomotive Open Software ARchitecture)
- EAST-ADL (Architecture Modeling Language) ์๋ฆฌ์ฆ
- MATLAB / Simulink
- ๊ฐ์ข Visual based Languages
- OMG UML Testing Profile์ธ ์ฝ 20์ฌ๊ฐ์ง ๋ชจ๋ธ๋ง ์ธ์ด
- AUTOSAR (AUTomotive Open Software ARchitecture)
- EAST-ADL (Architecture Modeling Language) ์๋ฆฌ์ฆ
- MATLAB / Simulink
- ๊ฐ์ข Visual based Languages
5. ์ฅ๋จ์ [ํธ์ง]
5.1. UML์ ์ฌ์ฉํ๋ฉด ๊ฐ๋ฐ์ด ์ฌ์์ง๋๊ฐ[ํธ์ง]
๋๊ตฐ๊ฐ๋ UML์ ์ฅ์ ์ ๊ฐ๋ฐ ์ฉ์ด์ฑ์ด๋ผ๊ณ ํ๋๋ฐ, ์ฐ๊ตฌํ๋ ์ฌ๋์ด ๋ด๋ ์ฉ์ดํจ๊ณผ๋ ๊ฑฐ๋ฆฌ๊ฐ ๋ฉ๋ค. UML 2.5์ ๋ํ ์๋ฌธ ์ค๋ช
์ด๋ค. ๋์ถฉ ํ์ด๋ง ๋ณด์๋ ์๋ก์ด ์ธ์ด ํ๋๋ฅผ ๋ฐฐ์ฐ๋ ์์ค์ ์๊ณ ๊ฐ ํ์ํ๋ค.
UML์ ๋ฐฐ์ธ ๋ ์ค์ํ ๊ฒ์ UML์ ์ธ์ด๋ผ๋ ์ ์ด๋ค. UML์ด๋ ์ธ์ด์ฒด๊ณ๋ ์์ฌ์ํต์ ์ํ ๋๊ตฌ์ด์ง, ๋น์ ์ ์ค๊ณ๋ฅ๋ ฅ์ ์ง์ ์ ์ผ๋ก ํค์์ฃผ์ง ์๋๋ค. ๊ฐ๋ฐ๋ฅ๋ ฅ์ ๋ฐ๋ก ํค์์ผ ํจ์ ๋ช ์ฌํ๋ผ. ๋ค๋ง ์ฐ๋ฆฌ๊ฐ ๋ง๋นจ์ ๊ธฐ๋ฅผ ๋ ๊ธ๋ก ํํํด๋ณด๋ฉด ๋ ๋นจ๋ฆฌ ๋๊ณ , ์์ ์ ๋ฐฐ์ธ ๋ ์ ๋ณด๋ก ๊ทธ๋ ค๋ณด๋ฉด ๋ ์์ํ๋ฏ์ด, UML ์ญ์ ์ค๊ณ ๋ฅ๋ ฅ์ ํค์ฐ๋๋ฐ ๋์์ ๊ฐ์ ์ ์ผ๋ก ์ค๋ค.
UML์ ๋ฐฐ์ธ ๋ ์ค์ํ ๊ฒ์ UML์ ์ธ์ด๋ผ๋ ์ ์ด๋ค. UML์ด๋ ์ธ์ด์ฒด๊ณ๋ ์์ฌ์ํต์ ์ํ ๋๊ตฌ์ด์ง, ๋น์ ์ ์ค๊ณ๋ฅ๋ ฅ์ ์ง์ ์ ์ผ๋ก ํค์์ฃผ์ง ์๋๋ค. ๊ฐ๋ฐ๋ฅ๋ ฅ์ ๋ฐ๋ก ํค์์ผ ํจ์ ๋ช ์ฌํ๋ผ. ๋ค๋ง ์ฐ๋ฆฌ๊ฐ ๋ง๋นจ์ ๊ธฐ๋ฅผ ๋ ๊ธ๋ก ํํํด๋ณด๋ฉด ๋ ๋นจ๋ฆฌ ๋๊ณ , ์์ ์ ๋ฐฐ์ธ ๋ ์ ๋ณด๋ก ๊ทธ๋ ค๋ณด๋ฉด ๋ ์์ํ๋ฏ์ด, UML ์ญ์ ์ค๊ณ ๋ฅ๋ ฅ์ ํค์ฐ๋๋ฐ ๋์์ ๊ฐ์ ์ ์ผ๋ก ์ค๋ค.
5.2. ๊ฐ๋ฐ ๋ฐฉ๋ฒ๋ก ์ผ๋ก ๋ณด์์ผ ํ๋๊ฐ[ํธ์ง]
์ฌ์ค UML์ ๋จ์ํ ๋ชจ๋ธ๋ง ์ธ์ด๋ผ์, ์ด๊ฒ์ ์ํํธ์จ์ด ๊ฐ๋ฐ ๋ฐฉ๋ฒ๋ก ์ผ๋ก ๋ณด๊ธฐ๋ ํ๋ค๋ค. UML์ ๊ฐ๋ฐ ๊ณผ์ ์์ ๊ฐ์ฒด์งํฅ์ด๋ ์ปดํฌ๋ํธ ๊ธฐ๋ฐ ๊ฐ๋ฐ ๋ฐฉ๋ฒ๋ก ์ ํ ๋๋ฅผ ์ธ์ฐ๋ ค๋ ์๋๊ฐ ์ด์ด์ก์ผ๋, ๊ทธ๋ฅ ๋ชจ๋ธ๋ง ์ธ์ด ์ฒด๊ณ๋ง ๋ง๋ค์ด์ง๊ณ ์๋ค.
5.3. ์ปดํจํฐ ๋ถ์ผ์์์ ํจ์ฉ์ฑ์ ๋ํด[ํธ์ง]
UML์ ๋๋ฃจ ์ฌ์ฉํ๋ ์ชฝ์ ์ฃผ๋ก SI ์
์ฒด์ ๊ทผ๋ฌดํ๋ ์ฌ๋๋ค์ด๋ค. ์ ํํ๋ ๋น์ง๋์ค ํ๋ก์ธ์ค ๊ฐ๋ฐ ๋ถ์ผ์ ํนํ๋์ด ์ฌ์ฉ, ๋ฐ์ ๋์์ผ๋ฉฐ, ๊ฐ๋ฐ ์๊ตฌ ์ฌํญ์ ์ด๋ค์ ๋ง์ถฐ์ ธ ๊ตฌ์ฑ๋์๋ค. ์ด๋ก ์ ์ผ๋ก๋ ๋ชจ๋ ๊ฒ์ ํํ ๊ฐ๋ฅํ๋, ๊ธฐ๋ณธ์ ์ผ๋ก ๋ฐฐ์ฐ๊ธฐ ์ด๋ ต๋ค๋ ๋ฌธ์ ๋๋ฌธ์ ์์ง ๋๋ฆฌ ํผ์ง์ง ๋ชปํ๊ณ ์๋ค.
์ผ๋จ UML์ ๋์ ํ๋ฉด ์ด๋ฐ ํจ๊ณผ๋ฅผ ๊ธฐ๋ํด ๋ณผ์ ์๋ค.
์ผ๋จ UML์ ๋์ ํ๋ฉด ์ด๋ฐ ํจ๊ณผ๋ฅผ ๊ธฐ๋ํด ๋ณผ์ ์๋ค.
- ๊ฐ๋ฐ ๊ธฐํ๊ณผ ์ฐ์ถ๋ฌผ์ ๋ํ ํ์คํ ์ฆ๊ฑฐ. UML์ด ์ํํธ์จ์ด์ ์ค๊ณ๋๋ฅผ ๊ทธ๋ฆฌ๊ธฐ ์ํ ๋ฌผ๊ฑด์ด๋ค๋ณด๋ UML์ ๊ทธ๋ ธ์ผ๋ฉด ๊ทธ๋ฆฐ๋๋ก ๋ง๋ค๊ณ ๊ทธ๋ฆฐ๋๋ก ๋์ํ๋ฉด ์ผ๋จ ๊ทธ ์ค๊ณ๋ ์ฑ๊ณตํ ๊ฒ์ผ๋ก ๋ณธ๋ค. ํ์ง๋ง ์ค์ ์ค๊ณ๋ ๋๋ก ๋์๊ฐ๊ณ ์ค๊ณ๋ ๋๋ก ๋์๊ฐ๊ฒ๋ ํ๋ ๊ฒ์ ์ฝ์ง๊ฐ ์๊ธฐ์ ์ด๋ฐ ๋ถ๋ถ์ ์ ๋ฌธ์ ์ธ ์ํคํ ํธ๊ฐ ๋ถ์ด์ ํด๊ฒฐํ๋ค. SI์ ์ฒด์ ๊ฒฝ์ฐ ์ ์ฒด๋ณ๋ก ๊ฐ์ ์ ๋ฌดํ๋ฆ์ด ์์ผ๋ ๋ค ๋๊ฐ์ง๋ ์์ง๋ง, ํ๋ฒ UML์ ๊ทธ๋ฆฌ๋ฉด ๊ด๋ จ๋ ๋ชจ๋ ์ฌ๋๋ค์๊ฒ ์ค๊ณ๋ฌธ์๋ฅผ ๋๋ ค ๋์ฅ์ ์ฐ๊ณ ๊ทธ๋๋ก ๋ง๋ค๊ฒ ๋ค๋ ๊ณ์ฝ์๋ฅผ ์ด๋ค ์นด๋๋ผ.
๊ทธ๋๋ ๋์ค์ ๋ณ๊ฒฝ์ฌํญ ๋์ค๋๊ฑด ์ด์ฉ์๊ฐ ์๋ค. - ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ์ด๋ผ๋ ํ์์ ๋ํด ์ ๋ฌธ๊ฐ์ ๋น์ ๋ฌธ๊ฐ๊ฐ ์๋ก ๋ํํ ์ ์๋ ๋๊ตฌ. ์ผ๋ฐ์ ์ธ ํ๋ก๊ทธ๋จ ์ธ์ด์๋ ๋ฌ๋ฆฌ ๋ํ์ผ๋ก ํํ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ํ๋ก๊ทธ๋จ์ ๋ํ ์ง์์ด ์๋ ์ฌ๋๋ ํ๋ก๊ทธ๋จ์ด ์ ๊ณตํด์ผํ ๊ธฐ๋ฅ๊ณผ ๊ตฌ์กฐ๋ฅผ ํํํ๋๊ฒ ๊ฐ๋ฅํ๋ค. ๋ฌผ๋ก , ๋น์ ๋ฌธ๊ฐ๊ฐ ์ค๊ณํ๋ ์ปจ์ ์ ๊ทธ๋๋ก ํ๋ก๊ทธ๋จ ์ธ์ด๋ก ์ฎ๊ธธ์๋ ์๊ธฐ์ ์ผ๋ฐ์ ์ผ๋ก ๊ฐ๋ฐ์ ์์ฒญํ ์ชฝ๊ณผ๋ UseCase ์ ๋๋ง ์ฌ์ฉํด์ ์ผ์ ํ๊ณ ๊ทธ UseCase๋ง๋ค ๊ตฌํ์ ์ํ ๋ด์ฉ์ ์ค๊ณํ๋ค.
ํ์ง๋ง UML์ ๋์ ํ๋ฉด ์ด๋ฐ ํผ๊ณคํ ์ผ๋ค์ด ์๊ธด๋ค.
- ์ ๋๋ก ๋ฐฐ์ด ์ฌ๋์ด ์๋ค: ๊ธฐ๋ณธ์ ์ผ๋ก ๋ชจ๋ธ๋ง ๋ถ์ผ๋ ๊ธฐํธํ๊ณผ ์ธ์ดํ์ ๋ฐํ์ผ๋ก ๋ง๋ค์ด์ง, ์ธ๊ณต ๊ธฐํธ/๋ ผ๋ฆฌ/์ธ์ด์ฒด๊ณ์ด๋ค. ์ธํฐ๋ท์ ๊ฐ๋ฐํ ์ฌ๋์ด ๋ฌผ๋ฆฌํ์์ด๊ณ , MIT MediaLab ์ค๋ฆฝ์๊ฐ ๊ฑด์ถํ์์ด๋ฏ์ด ์ปดํจํฐ๋ ์ ๋๋ก ์ ๊ณต์ ๋ฐฐ์ด ์ฌ๋์ด ์๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ฆฌ๋ ํ์ค์ ๊ด๋ จ๋ ๋ฐฉ๋ฒ๋ก ์ ์ฑ ์ด ์๋, ์ ๋๋ก ์ตํ ์ฌ๋์ ๋๋์ฑ ๋๋ฌผ๋ค.
- ๋ค์ํ ํ๋ฌธ์ ์ ์ ์ด๋ผ, ๊ทธ๋ฆฌ๊ธฐ๋ ์ฌ์๋ ์ ์ฉํ๊ธฐ๋ ์ด๋ ต๋ค: ๋ชจ๋ธ์ ๊ธฐํธํ, ๋ชจ๋ธ ๋ณํ ๋๊ตฌ๋ ์ํ๊ณผ ๋ ผ๋ฆฌํ, ์ธ์ดํ ๋ฑ์ด ๊ฒฐํฉ๋ ๋ถ๋ถ์ด์ด์, ์ ๋ฌธ ๊ฐ๋ฐ ํ์ฌ ์ด์ธ์๋ ์๋๊ธฐ ๋งค์ฐ ์ด๋ ต๋ค. ๊ทธ๋ฆฌ๊ณ ์ปดํ์ผ๋ฌ ๋ง๋ค์ด์ ํฐ ๋ ๋ฒ์ ํ์ฌ๋ ์๋ค. MS๋ Oracle์ Lock-in ์ ๋ต์ ์ํด์ ์ฌ์ฉํ์ง, ์ง์ ์ ์ธ ๋งค์ถ์ ์ํด์ ๊ฐ๋ฐํ์ง ์๋๋ค. MS ํํ์ด์ง ๋ค์ด๊ฐ๋ฉด Visual Studio Community ๋ฒ์ ๊ณต์ง๋ก ๋ฐ์ ์ ์๋ค.
- ์ค๊ณํ ๋ด์ฉ๋๋ก ๊ตฌํ์ด ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ ์ค๋ฌด์ ์ ์ฅ์์ ๊ตฌํ์ด ์ต์ ์ด๊ธฐ ๋๋ฌธ์ ์ค๊ณ๋ฅผ ๋ฌด์ํ๊ณ ํ๋ก๊ทธ๋จ์ ๋ง๋ค๊ฒ ๋๋ค. ๊ทธ๋ฐ๋ฐ ์ด๋ ๊ฒ ์ด๊ธฐ ์ค๊ณ์ ์๋ ๊ตฌํ์ ํ๊ฒ๋๋ฉด ์ด ๋ถ๋ถ์ ์ค๊ณ๋ฌธ์์ ์ฌ๋ฐ์์์ผ์ผ ํ๋๋ฐ ๊ฐ๋ฐ์ผ์ ์ ์ซ๊ธฐ๋ค๋ณด๋ฉด ๊ทธ๋ ๊ฒ ํ๊ธฐ๊ฐ ํ๋ค๋ค. ๋คํํ๋ ์์ฆ์ ๊ฐ๋ฐํด๋ค[7][8]์ด ๋ง์ด ๋ฐ์ ๋์ด ์์ค์ฝ๋์ UML์ ์ํธ ์ฐ๊ด์์ผ ์๋์ผ๋ก ๊ฐฑ์ ๋ ์ ์๋๋ก ํด์ค๋ค.[9]
- UML ์ ๋ฌธ๊ฐ๊ฐ ๋ฐ๋ก ๋ด๋นํด์ผ ํ ์ ๋์ ์๋ฅ์ ์ฐ์ด ๋ง๋ค์ด์ง๋ค. UML ์ค๊ณ๋ฌธ์๋ ์ ๋ง ์์ ํ๊ณ ๊ทธ๋ฆฌ๊ธฐ ์์ํ๋ฉด ์์คํ ๊ท๋ชจ์ ๋ฐ๋ผ ํ๋ฆฌ์ง๋ง ๊ทธ ์์ด ์์ฒญ๋๋ค. ๊ทธ๋์ ์ด๋ฐ ๋ถ๋ถ์ ์ ๋ฌธ์ ์ผ๋ก ๊ด๋ฆฌํด์ฃผ๋ ์ฌ๋์ด ์๋ค๋ฉด ๋ชจ๋ฅผ๊น ๊ทธ๋ ์ง ์์ผ๋ฉด ๊ฐ๋ฐ์๊ฐ ์๋ฅ์ ๊น๋ ค์ฃฝ๋๋ค. ๊ทธ๋์ ํ์ํ ๋ถ๋ถ๋ง ์๋ฅํ์ํค๋ ค๊ณ ํ๋๋ฐ, ๊ฐ๋ฐํ์ ๊ท๋ชจ๊ฐ ์ปค์ง์๋ก ๊ทธ๋ ๊ฒ ํ๊ธฐ ์ด๋ ต๋ค.
๊ทธ๋ฌํ ์ด์ ๋ก ํญ๊ณต๊ธฐ๋ ์์๋ก ์ ์ ๋ฑ ๊ฑฐ๋ํ ํ์ฌ ๊ท๋ชจ๋ฅผ ๊ฐ์ถ์ด์ผ ํ๋ ๊ฒฝ์ฐ์๋ง UML ๋ด๋น ๋งค๋์ ์ ์ธ์ฌ๊ต์ก ๋ด๋น์๋ฅผ ๋ฐ๋ก ๋๋ค. ์๊ท๋ชจ ๊ฐ๋ฐํ์ฌ์ ๊ฒฝ์ฐ ๋จ์๊ธฐ๋ฅ๋ณ๋ก ๋ฐ๊ทธ๋ฆผ์ด ํ์ํ ๋ ์ํ์ค๋ ์ ์ฆ์ผ์ด์ค, ํด๋์ค ์ ๋๋ง ์กฐ๊ธ ์ฌ์ฉํ๋ค.
๋ํ์ ์ธ UML ํ์ ์ ํ์ National Instrument์ฌ์ LabView๋ฅผ ์ด์ฉํด์ ๊ฐ๋ฐ๋ ๋ฏธ๊ตฐ ๋ฌด์ธ์ ํฌ๊ธฐ ํ๋ ๋ํฐ๊ฐ ์๋ค. UML๊ณผ ๋ชจ๋ธ ๊ธฐ๋ฐ ๊ฐ๋ฐ ๋ฐฉ๋ฒ์ ์ฑ์ฉ์ ํตํด ๊ฐ๋ฐ ๋น์ฉ ๋ฐ ๊ฒ์ฆ ๋น์ฉ์ ์ ๊ฐํ์๋ค.[10] UML์ ํผ์์ ์ผ๋ก ์ดํดํ๊ณ ์ฌ์ฉํ์๋ F-35[11]๋ ๊ฐ๋ฐ์ ๋ถ์กฑ์ผ๋ก ์ธํด ๊ฐ๋ฐ์ธ์ด๋ฅผ Ada[12]์์ C++๋ก ๊ต์ฒดํ๋ค๊ฐ... ์ธ๊ณ ์ต๊ณ ๊ฐ์ ๋นํ๊ธฐ๊ฐ ๋์ด๋ฒ๋ ธ๋ค.
UML์ ์ค์ ๋ก ํ๋ก๊ทธ๋จ์ ์ ์ํ๋๋ฐ ์ง์ ์ฌ์ฉ๋๋ ๊ฒ์ด ์๋, ํ๋กํ์ผ์ ์ด์ฉํ ๋ชจ๋ธ ๊ธฐ๋ฐ ๊ฐ๋ฐ(Model-based development)์ ์ฌ์ฉ๋๋ค. UML์ ๋ชจ๋ธ ๊ธฐ๋ฐ ๊ฐ๋ฐ ๋ฐ ์๊ตฌ์กฐ๊ฑด-๊ฐ๋ฐ-๊ฒ์ฆ ๋จ๊ณ๋ฅผ ๋ช ์ํ V ํ๋ก์ธ์ค์ ํต์ฌ ๋ถ๋ถ์ด๋ฉฐ, ์ ์ ์ฅ๋น์ ๊ธฐ๋ฅ์ฑ๊ณผ ์์ ์ฑ์ ๊ท์ ํด ๋์ IEC 61508, IEC 61508์์ ํ์๋ ์๋์ฐจ ์ธ๋ถ ํ์ค์ธ ISO 26262 ๋ฐ ๊ธฐํ 7๊ฐ์ง ์ธ๋ถ ๊ฐ๋ฐ ๋ฐฉ๋ฒ๋ก , ์๋์ฐจ ๊ฐ๋ฐ ๋ฐ ์ํํธ์จ์ด ๊ตฌํ ํ์ค์ธ AUTOSAR ํ์ค์์๋ ๊ธฐ๋ณธ์ผ๋ก ์ฌ์ฉํ๋ค.[13]
LG CNS์์ MDD(Model Driven Development) 100%๋ก 400๊ฑด ์ด์์ ๊ฐ๋ฐ์ ์๋ฃํ๋ค๊ณ
[1] ์ต์ด์ ์ ์ฉ ๋ถ์ผ๊ฐ ํ๋ก๊ทธ๋๋ฐ์ด์๋ ๊ฒ ๋ฟ์ด๋ค. ํ๋ก๊ทธ๋๋ฐ๋ง์ ์ํ ๊ฒ์ด์์ผ๋ฉด Programming Modeling Language๊ฐ ๋์ฑ ์ ํฉํ ํํ์ด๋ค. ์๋ฏธ์์ผ๋ก๋ ํ๋ก๊ทธ๋๋ฐ๋ง์ ์ํ ๊ฒ์ด ์๋๋ค.
[2] CORBA ์ํคํ
์ฒ๋ฅผ ๋ง๋ ๊ทธ๊ณณ
[3] ๊ฐ๋ฐ ํ๋ก์ธ์ค ํ์ค๋ 2011๋
์์ผ ๋ง๋ค์๋ค... ๋ชจ๋ธ ๊ธฐ๋ฐ ๊ฐ๋ฐ๋ก์ ์ ํ์ 2015๋
์ดํ์๋ ๊ฐ๋ฅ
[4] MATLAB/Simulink, LabView ๋ฑ ์ฌ์ฉ
[5] 1์ฐจ๋ก ์ํ ๋ชจ๋ธ ๊ฐ๋ฐํ๊ณ , 2์ฐจ๋ก UML ๋ฑ์ ๋ชจ๋ธ์ ์ด์ฉํ ์ค๊ณํ๊ณ , 3์ฐจ๋ก ๊ตฌํํ๊ณ , 4์ฐจ๋ก ์ฝ๋๋ณ๋ก ๊น์ ๊ฒ์ฆํ๋ค.
[6] ํ์ฟ ์๋ง ๋ฐ์ ์ ํญ๋ฐ ์ฌ๊ณ ์์๋ ํ๋ก๊ทธ๋จ์ ์ ํด์ง ์ค๊ณ๋๋ก์ ์ฑ๋ฅ์ ๋ฐํํ๋ค. ์์ ๊ธฐ์ฒด๋ฅผ ์์ ํํ๊ธฐ ์ํ ๊ธฐ๊ธฐ์ ์ธ๋ถ ์ ์์ ์ฐ๊ฒฐํ๊ธฐ ์ํ ์ฝ์ผํธ ๊ธธ์ด๊ฐ ์งง์ ์ค ๋๊ฐ ์์๋. ๋ฌผ๋ก ์ ์ ์ ๋ง๋ค๊ธฐ๋ง ํ๊ณ 30๋
๋์ ๊ผฝ๋ ์๋๋ ์ํ๋ ์ผ๋ณธ ์ ๋ถ ๋ฐ ๋์ฟ์ ๋ ฅ์ ์๋ชป์ด๋ค.
[7] ๋ค๋ง ๋ฌด์ง์ฅ ๋น์ธ๋ค. ๋ถ์ผ์ ๋ฐ๋ผ์๋ ์ ๊ฐ๊ฐ ์๋ ์ ํ์์ % ๋จ์๋ก ๋ผ์ด๊ฐ๋ค.
[8] ๊ณต๊ฐ๋ฅผ ํด๋ฒ๋ฆฐ MS Robotics Development Studio๋ ์์๊ฐ์ ๋ก๋ด ๊ด๋ จ ์ค์๊ธฐ์
๋ค์ de facto ํ์ค์ด ๋์๋ค.
[9] ์ด๋ก ์ ์ผ๋ก๋ ๋ชจ๋ธ ๊ธฐ๋ฐ ๊ฐ๋ฐ์ ์ต์ ํ ์์
์ ์ฃ์
์ํ๋ค. ํ์ ๊ฐ๋ฐ์๊ฐ ์ ๋ ์ ์์ผ๋๊น...
[10] ์ด๋ก ์ ์ผ๋ก๋ ๊ฐ๋ฐ ์ธ์ด๊ฐ ๋ณ๊ฒฝ๋๋๋ผ๋ ์ธ์ด ๋ณํ ์ด๋ํฐ๋ง ๊ต์ฒดํ๋ฉด ๋๋ค.
[11] ๋ชจ๋ธ ๊ธฐ๋ฐ ๊ฐ๋ฐ ๋ถ์ผ์ ์ฌ์์ด๋ผ๊ณ ๋ถ๋ฆฌ๋ค๊ฐ, ์ด์ ๋ ๋ฏธ๊ตญ ๊ตญ๊ฐ์ฌ์ ์ ์ฌ์์ด๋ผ๊ณ ๋ถ๋ฆฐ๋ค.http://nationalinterest.org/blog/the-buzz/the-f-35-14-trillion-dollar-national-disaster-19985
[12] ๋ฏธ ๊ตญ๋ฐฉ๋ถ ๋ฌด๊ธฐ ํ์ค ๊ฐ๋ฐ ์ธ์ด
[13] ์ด๋ค ๋ชจ๋ธ์ UML์ ์ง์ ์ ์ผ๋ก ์ฌ์ฉํ์ง ์๊ณ , ๋๋ฆ๋๋ก ๋ณํ๋ ๋ชจ๋ธ์ ์ฌ์ฉํ์ง๋ง, UML ๋ชจ๋ฅด๊ณ ์๋ ์ฝ์ ์๋ ์๋ค. ๋ฌผ๋ก OMG์์ ์ด๋ค ํ์ค ๋ฐ ๋จ์ฒด์ ์ฌ์ฉ๋ฃ ๋ฐ๋๋ค.