λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
Basics/Concepts

μš”κ΅¬μ‚¬ν•­ 확인 기법(κ²€ν† , ν”„λ‘œν† νƒ€μ΄ν•‘, μΈμˆ˜ν…ŒμŠ€νŠΈ λ“±) : μš”κ΅¬μ‚¬ν•­ μ •μ˜

by IworldT 2022. 2. 22.
λ°˜μ‘ν˜•

 

이번 ν¬μŠ€νŒ…μ€ μš”κ΅¬μ‚¬ν•­ 개발 ν”„λ‘œμ„ΈμŠ€ 쀑 λ§ˆμ§€λ§‰ 단계인 μš”κ΅¬μ‚¬ν•­ 확인 λ‹¨κ³„μ—μ„œ μ“°μ΄λŠ” μš”κ΅¬μ‚¬ν•­ 확인 기법듀에 λŒ€ν•΄ μ•Œμ•„λ³΄λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€.

 

μš”κ΅¬μ‚¬ν•­ 개발 ν”„λ‘œμ„ΈμŠ€μ— λŒ€ν•œ μ„€λͺ…은 이전 ν¬μŠ€νŒ…(https://iworldt.tistory.com/93)을 ν™•μΈν•˜μ‹œλ©΄ λ©λ‹ˆλ‹€.

 


 

1. μš”κ΅¬μ‚¬ν•­ κ²€ν† (Requirement Reviews)

μš”κ΅¬μ‚¬ν•­ κ²€μ¦μ˜ κ°€μž₯ 일반적인 λ°©λ²•μœΌλ‘œ, μ—¬λŸ¬ κ²€ν† μžλ“€μ΄ μ—λŸ¬, 잘λͺ»λœ κ°€μ •, 뢈λͺ…ν™•μ„±, ν‘œμ€€κ³Όμ˜ 차이 등을 μ°Ύμ•„λ‚΄λŠ” μž‘μ—…μ„ μˆ˜ν–‰ν•˜λ©°, κ²€ν† μž 그룹을 μ–΄λ–»κ²Œ κ΅¬μ„±ν•˜λŠλƒκ°€ μ€‘μš”ν•˜λ‹€.

κ²€ν† λŠ” μ‹œμŠ€ν…œ μ •μ˜μ„œ(System Definition Document), μ‹œμŠ€ν…œ μ‚¬μ–‘μ„œ(System Specification), μ†Œν”„νŠΈμ›¨μ–΄ μš”κ΅¬μ‚¬ν•­ λͺ…μ„Έμ„œ(SRS: Software Requirements Specification Document)λ₯Ό μ™„μ„±ν•œ μ‹œμ  λ“±μ—μ„œ 이루어진닀.

 

μš”κ΅¬μ‚¬ν•­ κ²€ν† 

 

 

2. ν”„λ‘œν† νƒ€μ΄ν•‘(Prototyping)

ν”„λ‘œν† νƒ€μ΄ν•‘μ€ μƒˆλ‘œμš΄ μš”κ΅¬μ‚¬ν•­μ„ λ„μΆœν•˜κΈ° μœ„ν•œ μˆ˜λ‹¨μœΌλ‘œ, λ˜ν•œ μ†Œν”„νŠΈμ›¨μ–΄ μš”κ΅¬μ‚¬ν•­μ— λŒ€ν•΄ μ†Œν”„νŠΈμ›¨μ–΄ μ—”μ§€λ‹ˆμ–΄κ°€ ν•΄μ„ν•œ 것을 ν™•μΈν•˜κΈ° μœ„ν•œ μˆ˜λ‹¨μœΌλ‘œ 많이 μ‚¬μš©λœλ‹€.

잘λͺ»λœ μš”κ΅¬μ‚¬ν•­μ„ λ§Œμ‘±μ‹œν‚€κΈ° μœ„ν•˜μ—¬ μžμ›μ„ λ‚­λΉ„ν•˜λŠ” 것을 방지할 수 μžˆλ‹€λŠ” μ μ—μ„œ ν”„λ‘œν† νƒ€μ΄ν•‘μ„ κΈμ •μ μœΌλ‘œ κ²€ν† ν•  수 μžˆλ‹€.

 

ν”„λ‘œν† νƒ€μ΄ν•‘μ˜ 4단계

(μžλ£Œμ—μ„œλ„ μΆœμ²˜κ°€ μœ„ν‚€ν”Όλ””μ•„λ„€μš”. ncs 곡식 ν•™μŠ΅λͺ¨λ“ˆμ˜ μΆœμ²˜κ°€ μœ„ν‚€ ..?)

  • 1단계

기본적인 μ‚¬μš©μž μš”κ΅¬μ‚¬ν•­μ„ λΆ„μ„ν•œλ‹€. μ‹œμŠ€ν…œ μ„€κ³„μžλŠ” 기본적인 μš”κ΅¬μ‚¬ν•­μ΄ λ„μΆœλ˜κΈ°κΉŒμ§€ μ‚¬μš©μžμ™€ ν•¨κ»˜ μž‘μ—…ν•œλ‹€.

  • 2단계

μ‹œμŠ€ν…œ μ„€κ³„μžκ°€ μœ„μ— λ‹¨κ³„μ—μ„œ λ„μΆœλœ μš”κ΅¬μ‚¬ν•­μ„ λ§Œμ‘±μ‹œν‚€λŠ” ν”„λ‘œν† νƒ€μž…μ„ 4μ„ΈλŒ€μ–Έμ–΄(4GL : Fourth-Generation Language)둜 μ•Œλ €μ§„ ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄ λ˜λŠ” CASE 도ꡬλ₯Ό μ΄μš©ν•˜μ—¬ κ°œλ°œν•œλ‹€. μ΄λ•Œ ν”„λ‘œν† νƒ€μž…μ€ μ•žμœΌλ‘œ 개발될 μ‹œμŠ€ν…œμ˜ κ°€μž₯핡심적인 κΈ°λŠ₯ μœ„μ£Όλ‘œ κ°œλ°œλœλ‹€.

  • 3단계

μ‚¬μš©μžκ°€ 개발된 ν”„λ‘œν† νƒ€μž…μ„ μ‹€μ œ μ‚¬μš©ν•¨μœΌλ‘œμ¨ μš”κ΅¬μ‚¬ν•­μ΄ μ΄ν–‰λ˜κ³  μžˆλŠ”μ§€λ₯Ό ν™•μΈν•˜λ©° ν”„λ‘œν† νƒ€μž…μ˜ 보완을 μœ„ν•œ μ—¬λŸ¬ 가지 μ œμ•ˆμ„ ν•˜κ²Œ λœλ‹€.

  • 4단계

ν”„λ‘œν† νƒ€μž…μ˜ μˆ˜μ •κ³Ό 보완이 이루어진닀. μ‹œμŠ€ν…œ μ„€κ³„μžλŠ” μ‚¬μš©μžκ°€ μš”κ΅¬ν•œ λͺ¨λ“  μ œμ•ˆμ‚¬ν•­κ³Ό 이에 λ”°λ₯΄λŠ” λ³΄μ™„μž‘μ—…μ„ ν•˜κ²Œ λœλ‹€. ν”„λ‘œν† νƒ€μž…μ΄ μˆ˜μ •λœ ν›„μ—λŠ” 3λ‹¨κ³„λ‘œ λŒμ•„κ°„λ‹€. μ‚¬μš©μžκ°€ λ§Œμ‘±ν•  λ•ŒκΉŒμ§€ 3단계와 4λ‹¨κ³„λŠ” 계속 λ°˜λ³΅λœλ‹€.

 

ν”„λ‘œν† νƒ€μ΄ν•‘μ˜ μž₯점

λΆ„μ„κ°€μ˜ 가정을 νŒŒμ•…ν•˜κ³  잘λͺ»λœ 경우 μœ μš©ν•œ ν”Όλ“œλ°±μ„ μ œκ³΅ν•œλ‹€λŠ” 점,

μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€(User Interface)의 동적인 ν–‰μœ„κ°€ λ¬Έμ„œλ‚˜ κ·Έλž˜ν”½ λͺ¨λΈλ³΄λ‹€ ν”„λ‘œν† νƒ€μž…μœΌλ‘œ μ΄ν•΄ν•˜κΈ° μ‰¬μš΄ 점,

μš”κ΅¬μ‚¬ν•­μ˜ 가변성이 ν”„λ‘œν† νƒ€ 이핑 이후에 κΈ‰κ²©νžˆ κ°μ†Œν•˜λŠ” 점이닀.

 

ν”„λ‘œν† νƒ€μ΄ν•‘μ˜ 단점

μ‚¬μš©μžμ˜ 관심이 핡심 κΈ°λŠ₯μ—μ„œ 멀어지고 ν”„λ‘œν† νƒ€μž…μ˜ λ””μžμΈμ΄λ‚˜ ν’ˆμ§ˆ 문제둜 집쀑될 수 있으며,

ν”„λ‘œν† νƒ€μž… μˆ˜ν–‰ λΉ„μš©μ΄ λ°œμƒν•œλ‹€λŠ” 것이닀.

 

ν”„λ‘œν† νƒ€μ΄ν•‘ 툴 예 : 카카였였븐

 

 

3. λͺ¨λΈ 검증(Model Verification)

λΆ„μ„λ‹¨κ³„μ—μ„œ 개발된 λͺ¨λΈμ˜ ν’ˆμ§ˆμ„ 검증할 ν•„μš”κ°€ μžˆλ‹€.

예λ₯Ό λ“€μ–΄, 객체 λͺ¨λΈμ˜ 경우 객체듀 μ‚¬μ΄μ˜ μ‘΄μž¬ν•˜λŠ” μ˜μ‚¬μ†Œν†΅ 경둜(Communic ation Path)λ₯Ό 검증(Verify)ν•˜κΈ° μœ„ν•˜μ—¬ 정적 뢄석(Static Analysis)을 μˆ˜ν–‰ν•˜λŠ” 것이 μœ μš©ν•˜λ‹€.

 

 

4. 인수 ν…ŒμŠ€νŠΈ(Acceptance Tests)

μš”κ΅¬μ‚¬ν•­μ˜ μ€‘μš”ν•œ 속성은 μ΅œμ’… μ œν’ˆμ΄ μš”κ΅¬μ‚¬ν•­μ„ λ§Œμ‘±μ‹œν‚€λŠ”μ§€ 확인이 κ°€λŠ₯ν•΄μ•Ό ν•œλ‹€λŠ” 것이닀. 

개발된 μ΅œμ’… μ†Œν”„νŠΈμ›¨μ–΄μ— λŒ€ν•œ ν…ŒμŠ€νŠΈλ₯Ό μˆ˜ν–‰ν•˜λŠ” 기법이닀.

각각의 μš”κ΅¬μ‚¬ν•­μ„ μ–΄λ–»κ²Œ 확인할 것인지에 λŒ€ν•œ κ³„νšμ„ μ„Έμ›Œμ•Ό ν•œλ‹€.

 


 

이번 ν¬μŠ€νŒ…μ€ μ†Œν”„νŠΈμ›¨μ–΄ μš”κ΅¬μ‚¬ν•­ 확인 기법듀에 λŒ€ν•΄ μ•Œμ•„λ³΄μ•˜μŠ΅λ‹ˆλ‹€.

 

λ‹€μŒ ν¬μŠ€νŒ…μ€ μ†Œν”„νŠΈμ›¨μ–΄ μš”κ΅¬μ‚¬ν•­μ˜ ν’ˆμ§ˆ 평가 ν•­λͺ©μ— λŒ€ν•΄μ„œ μ•Œμ•„λ³΄λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€.

 

μš”κ΅¬μ‚¬ν•­ μ •μ˜, μš”κ΅¬μ‚¬ν•­ 개발, μš”κ΅¬μ‚¬ν•­ 개발 ν”„λ‘œμ„ΈμŠ€, μš”κ΅¬μ‚¬ν•­ 개발 단계, μš”κ΅¬μ‚¬ν•­ λ„μΆœ, μš”κ΅¬μ‚¬ν•­ 뢄석, μš”κ΅¬μ‚¬ν•­ λͺ…μ„Έ, μš”κ΅¬μ‚¬ν•­ 확인, μš”κ΅¬μ‚¬ν•­ 뢄석 기법, μš”κ΅¬μ‚¬ν•­ 확인 기법

728x90
λ°˜μ‘ν˜•

λŒ“κΈ€