λΉŒλ“œ μžλ™ν™” 도ꡬ

μ†ŒμŠ€μ½”λ“œ νŒŒμΌλ“€μ„ μ‹€ν–‰ν•  수 μžˆλŠ” μ†Œν”„νŠΈμ›¨μ–΄λ‘œ λ³€ν™˜ν•˜λŠ” 과정에 ν•„μš”ν•œ 도ꡬ

  • Ant 
    • μ•„νŒŒμΉ˜ μž¬λ‹¨ 개발, XML 기반의 λΉŒλ“œ 슀크립슀 μ‚¬μš©
  • Maven
    • Ant λŒ€μ•ˆ, μžλ™μœΌλ‘œ ν•„μš”ν•œ 라이브러리 νŒŒμΌλ“€μ„ 뢈러옴
  • Gradle (κ·Έλž˜λ“€)
    • μž‘μ—…μ˜ μ΅œμ†Œλ‹¨μœ„μΈ Task둜 μ‹€ν–‰, Groovyλ₯Ό 기반, μ•ˆλ“œλ‘œμ΄λ“œ μŠ€νŠœλ””μ˜€ 곡식 λΉŒλ“œ μ‹œμŠ€ν…œ
  • Jenkins (μ  ν‚¨μŠ€)
    • μžλ°”κΈ°λ°˜μ˜ μ˜€ν”ˆμ†ŒμŠ€, κ°€μž₯ 많이 μ‚¬μš©
    • μ†Œν”„νŠΈμ›¨μ–΄ 개발 μ‹œ 지속적 톡합 μ„œλΉ„μŠ€λ₯Ό μ œκ³΅ν•˜λŠ” 툴

μ†Œν”„νŠΈμ›¨μ–΄ 버전관리

SW 개발과 κ΄€λ ¨ν•˜μ—¬ μ½”λ“œμ™€ 라이브러리, κ΄€λ ¨ λ¬Έμ„œ λ“± μ‹œκ°„μ˜ 변화에 λ”°λ₯Έ 변경을 κ΄€λ¦¬ν•˜λŠ” ν™œλ™

 

  • Repository - 파일의 ν˜„μž¬ 버전과 λ³€κ²½ 이λ ₯ 정보λ₯Ό μ €μž₯ν•˜λŠ” μ €μž₯μ†Œ
  • Import - 버전 관리 λ˜μ§€ μ•Šμ€ 둜컬 디렉토리 νŒŒμΌμ„ 처음으둜 λ ˆν¬μ§€ν„°λ¦¬μ— 볡사
  • Check-out - λ ˆν¬μ§€ν„°λ¦¬ 파일 λ°›κΈ°
  • Check-in - λ ˆν¬μ§€ν„°λ¦¬μ— μƒˆλ‘œμš΄ λ²„μ „μœΌλ‘œ κ°±μ‹ 
  • Commit - 체크인 μ‹œ 이전 κ°±μ‹  사항이 μžˆλŠ” 경우 좩돌 μ•Œλ¦Ό, diff  도ꡬ 이용 μˆ˜μ •

버전관리 도ꡬ μœ ν˜•

  • CVS - μ„œλ²„μ™€ ν΄λΌμ΄μ–ΈνŠΈλ‘œ κ΅¬μ„±λ˜μ–΄ λ‹€μˆ˜μ˜ 인원이 λ™μ‹œμ— λ²”μš©μ μΈ 운영체제둜 μ ‘κ·Ό κ°€λŠ₯ν•˜μ—¬ 버전관리
  • SVN - GNU의 버전 관리 μ‹œμŠ€ν…œμœΌλ‘œ 업계 ν‘œμ€€
  • RCS - μˆ˜μ •μ„ ν•œ μ‚¬λžŒλ§ŒμœΌλ‘œ μ œν•œ, λ‹€μˆ˜μ˜ μ‚¬λžŒμ΄ λ™μ‹œμ— μˆ˜μ •ν•  수 없도둝 νŒŒμΌμ„ 잠금
  • Bitkeeper - SVNκ³Ό λΉ„μŠ·ν•œ 쀑앙 ν†΅μ œ λ°©μ‹μ˜ 버전 κ΄€λ¦¬λ‘œ λŒ€κ·œλͺ¨ ν”„λ‘œμ νŠΈμ—μ„œ 빠름
  • Git - ν˜„μž¬μ˜ λ¦¬λˆ…μŠ€ 버전 컨트둀 방식, SVNκ³Ό λ‹€λ₯΄κ²Œ Commit은 둜컬 μ €μž₯μ†Œμ—μ„œ 이뀄지고 pushλŠ” 원격 μ €μž₯μ†Œμ— μ €μž₯됨
    • Git의 μž‘μ—… ν΄λ”λŠ” λͺ¨λ‘ 전체 기둝과 각 기둝을 좔적할 수 μžˆλŠ” 정보λ₯Ό ν¬ν•¨ν•˜λŠ” μ™„μ „ν•œ ν˜•νƒœμ˜ μ €μž₯μ†Œ
    • λ„€νŠΈμ›Œν¬λ‚˜ 쀑앙 μ„œλ²„μ— μ˜μ‘΄ν•˜μ§€ μ•ŠμŒ
  • Clear Case - IBM μ œμž‘, 볡수 μ„œλ²„μ™€ 볡수 ν΄λΌμ΄μ–ΈνŠΈ ꡬ쑰

ν˜•μƒκ΄€λ¦¬ (SCM : Software Configuration Management)

μ†Œν”„νŠΈμ›¨μ–΄μ˜ 개발 κ³Όμ •μ—μ„œ λ°œμƒν•˜λŠ” μ‚°μΆœλ¬Όμ˜ λ³€κ²½ 사항을 버전 κ΄€λ¦¬ν•˜κΈ° μœ„ν•œ 일련의 ν™œλ™

(ν”„λ‘œμ νŠΈ 생λͺ…μ£ΌκΈ°μ˜ μ „ λ‹¨κ³„μ—μ„œ μˆ˜ν–‰ν•˜λŠ” ν™œλ™, μœ μ§€ 보수 λ‹¨κ³„μ—μ„œλ„ μˆ˜ν–‰λ˜λŠ” ν™œλ™)

 

* 베이슀라인 - ν˜•μƒ ν•­λͺ©μ΄ ν•˜λ‚˜μ˜ μ™„μ„±λœ μ‚°μΆœλ¬Όλ‘œμ¨ μ±…μž„μžˆλŠ” κΈ°κ΄€μ΄λ‚˜ 관리주체에 μ˜ν•΄ κ³΅μ‹μ μœΌλ‘œ 승인된 μƒνƒœ

  1. ν˜•μƒ 식별 
    ν˜•μƒκ΄€λ¦¬ λŒ€μƒμ„ μ‹λ³„ν•˜μ—¬ 이름과 관리 번호 λΆ€μ—¬, 트리 ꡬ쑰둜 κ΅¬λΆ„ν•˜μ—¬ μˆ˜μ • 및 좔정이 μš©μ΄ν•˜λ„λ‘ ν•˜λŠ” 베이슀라인 기쀑 정립 ν™œλ™
  2. λ³€κ²½ μ œμ–΄
    μ‹λ³„λœ ν˜•μƒν•­λͺ©μ˜ λ³€κ²½ μš”κ΅¬λ₯Ό κ²€ν† , 승인 ν†΅μ œν•¨μœΌλ‘œμ¨ ν˜„μž¬μ˜ λ² μ΄μŠ€λΌμΈμ— 잘 반영될 수 μžˆλ„λ‘ μ‘°μ •
  3. ν˜•μƒ μƒνƒœ 보고
    베이슀라인의 ν˜„μž¬ μƒνƒœ 및 λ³€κ²½ ν•­λͺ©λ“€μ΄ μ œλŒ€λ‘œ λ°˜μ˜λ˜λŠ”μ§€ μ—¬λΆ€λ₯Ό λ³΄κ³ ν•˜κ³  λ³΄κ³ μ„œλ₯Ό μž‘μ„±ν•˜λŠ” 절차
  4. ν˜•μƒ 감사
    베이슀라인의 무결성을 ν‰κ°€ν•˜κΈ° μœ„ν•΄ 확인, 검증과정을 톡해 κ³΅μ‹μ μœΌλ‘œ 승인
  5. 버전 관리 
    λ³€κ²½ μ „κ³Ό λ³€κ²½ ν›„λ₯Ό 기둝
  6. λ³€κ²½ 관리
    λ³€κ²½μœΌλ‘œ μΈν•œ μ„±λŠ₯ 및 ν’ˆμ§ˆμ„ ν‰κ°€ν•œλ‹€
  7. ν˜•μƒ ν†΅μ œ
    μ‹λ³„λœ ν˜•μƒ ν•­λͺ©μ— λŒ€ν•œ λ³€κ²½ μš”κ΅¬λ₯Ό κ²€ν† ν•˜μ—¬ ν˜„μž¬μ˜ 기쀀선이 발 반영될 수 μžˆλ„λ‘ μ‘°μ •
  8. ν˜•μƒ 기둝

μ†Œν”„νŠΈμ›¨μ–΄ νŒ¨ν‚€μ§•

배포λ₯Ό μœ„ν•œ νŒ¨ν‚€μ§• μ‹œμ— λ””μ§€ν„Έ μ½˜ν…μΈ μ˜ μ§€μ μž¬μ‚°κΆŒμ„ λ³΄ν˜Έν•˜κ³  κ΄€λ¦¬ν•˜λŠ” κΈ°λŠ₯을 제곡

νŒ¨ν‚€μ§• λ„κ΅¬λŠ” λΆˆλ²• λ³΅μ œλ‘œλΆ€ν„° λ””μ§€ν„Έ μ½˜ν…μΈ μ˜ μ§€μ μž¬μ‚°κΆŒμ„ λ³΄ν˜Έν•΄μ£ΌλŠ” μ‚¬μš© κΆŒν•œ μ œμ–΄ 기술, νŒ¨ν‚€μ§• 기술, λΌμ΄μ„ μŠ€ 관리, κΆŒν•œ ν†΅μ œ 기술 등을 ν¬ν•¨ν•œλ‹€.

 

μ €μž‘κΆŒ 관리 κ΅¬μ„±μš”μ†Œ

  • μ½˜ν…μΈ  제곡자 - μ½˜ν…μΈ λ₯Ό μ œκ³΅ν•˜λŠ” μ €μž‘κΆŒμž
  • μ½˜ν…μΈ  λΆ„λ°°μž - μ•”ν˜Έν™”λœ μ½˜ν…μΈ λ₯Ό 제곡
  • νŒ¨ν‚€μ € - μ½˜ν…μΈ λ₯Ό 메타 데이터와 ν•¨κ»˜ 배포 κ°€λŠ₯ν•œ λ‹¨μœ„λ‘œ λ¬ΆλŠ” κΈ°λŠ₯
  • λ³΄μ•ˆ μ»¨ν…Œμ΄λ„ˆ - 원본을 μ•ˆμ „ν•˜κ²Œ μœ ν†΅ν•˜κΈ° μœ„ν•œ λ³΄μ•ˆ μž₯치
  • DRM 컨트둀러 - 배포된 μ½˜ν…μΈ μ˜ 이용 κΆŒν•œμ„ ν†΅μ œ
  • 클리어링 ν•˜μš°μŠ€ - ν‚€ 관리 및 λΌμ΄μ„ μŠ€ λ°œκΈ‰ 관리

νŒ¨ν‚€μ§• 도ꡬ κ΅¬μ„±μš”μ†Œ

  • μ•”ν˜Έν™”
    μ½˜ν…μΈ  및 λΌμ΄μ„ μŠ€λ₯Ό μ•”ν˜Έν™”ν•˜κ³ , μ „μž μ„œλͺ…을 ν•  수 μžˆλŠ” 기술 (PKI, DiGital Signature λ“±)
  • ν‚€ 관리
    μ½˜ν…μΈ λ₯Ό μ•”ν˜Έν™”ν•œ 킀에 λŒ€ν•œ μ €μž₯ 및 배포 기술 (Centralized, Enveloping)
  • μ•”ν˜Έν™” 파일 생성 
    μ½˜ν…μΈ λ₯Ό μ•”ν˜Έν™”λœ μ½˜ν…μΈ λ‘œ μƒμ„±ν•˜κΈ° μœ„ν•œ 기술 (Pre-packing, On-the-fly Packaging)
  • 식별 기술 
    μ½˜ν…μΈ μ— λŒ€ν•œ 식별 체계 ν‘œν˜„ 기술(DOI, URL)
  • μ €μž‘κΆŒ ν‘œν˜„
  • μ •μ±… 관리
  • ν¬λž™ λ°©μ§€
  • 인증 

 

+ Recent posts