DevOps

[DevOps] 개발 λ°©λ²•λ‘ μ˜ λ³€ν™” WaterFall VS Agile VS DevOps

λΉ…μ½œνŒ 2023. 5. 20. 20:00
728x90
λ°˜μ‘ν˜•

 

🌀️ 전톡적인 개발 방법둠 WaterFall VS Agile


WaterFall(폭포수) λͺ¨λΈ


- μ›Œν„°ν΄ 방법둠은 μ„ ν˜•μ μ΄κ³  순차적인 μ ‘κ·Ό 방식이닀.
- ν”„λ‘œμ νŠΈλŠ” μš”κ΅¬ 사항 μˆ˜μ§‘, λ””μžμΈ, κ΅¬ν˜„, ν…ŒμŠ€νŒ…, 배포, μœ μ§€ 보수의 μˆœμ„œλŒ€λ‘œ μ§„ν–‰λœλ‹€.
- 각 λ‹¨κ³„λŠ” 이전 단계가 μ™„λ£Œλ˜μ–΄μ•Όλ§Œ μ‹œμž‘ν•  수 μžˆλ‹€.
- λ‹¨μˆœν•˜κ³  예츑 κ°€λŠ₯ν•œ ν”„λ‘œμ νŠΈμ— 잘 λ§žμ§€λ§Œ μš”κ΅¬ 사항이 λ³€ν•  경우 μœ μ—°μ„±μ΄ λΆ€μ‘±ν•˜λ‹€λŠ” 단점이 μžˆλ‹€.

 

Agile λͺ¨λΈ

 
- μ• μžμΌ 방법둠은 반볡적이고 점진적인 μ ‘κ·Ό 방식이닀.
- ν”„λ‘œμ νŠΈλŠ” μŠ€ν”„λ¦°νŠΈ λ˜λŠ” 반볡 μž‘μ—… λ‹¨μœ„λ‘œ λ‚˜λ‰˜λ©°, 각 μŠ€ν”„λ¦°νŠΈλŠ” 자체적으둜 κ³„νš, 뢄석, λ””μžμΈ, μ½”λ”©, ν…ŒμŠ€νŒ…, λ¬Έμ„œν™”λ₯Ό ν¬ν•¨ν•œλ‹€.
- λΉ λ₯΄κ²Œ λ³€ν™”ν•˜λŠ” μš”κ΅¬ 사항에 μœ μ—°ν•˜κ²Œ λŒ€μ‘ν•  수 μžˆλ‹€.
 
 
μš”μ•½ν•˜λ©΄, ν”„λ‘œμ νŠΈμ˜ μš”κ΅¬μ‚¬ν•­μ΄ λͺ…ν™•ν•˜κ³  μ€‘μš”ν•œ λ³€κ²½ 사항이 μ˜ˆμƒλ˜μ§€ μ•ŠλŠ” 경우 μ›Œν„°ν΄ μ ‘κ·Ό 방식이 적합할 수 μžˆλ‹€.
κ·ΈλŸ¬λ‚˜ ν”„λ‘œμ νŠΈμ˜ μš”κ΅¬ 사항이 변경될 κ°€λŠ₯성이 μžˆκ±°λ‚˜, μœ μ—°μ„±μ΄ ν•„μš”ν•˜κ³  변화에 λΉ λ₯΄κ²Œ 적응할 수 μžˆμ–΄μ•Ό ν•˜λŠ” 경우, μ• μžμΌ 방법둠이 더 쒋은 선택일 수 μžˆλ‹€.
 
 

We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:
 
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
 
That is, while there is value in the items on
the right, we value the items on the left more.
 

http://agilemanifesto.org/iso/en/manifesto.html μ• μžμΌ μ„ μ–Έλ¬Έ

 
 
μš°λ¦¬λŠ” μ†Œν”„νŠΈμ›¨μ–΄ κ°œλ°œμ— μžˆμ–΄μ„œ 더 λ‚˜μ€ 방법을 μ°Ύμ•„λ‚΄κΈ° μœ„ν•΄ 이λ₯Ό μ‹€ν–‰ν•˜κ³ , λ‹€λ₯Έ μ‚¬λžŒλ“€μ΄ 이λ₯Ό μ‹€ν–‰ν•  수 μžˆλ„λ‘ 돕고 μžˆλ‹€. μ΄λŸ¬ν•œ μž‘μ—…μ„ 톡해 μš°λ¦¬λŠ” λ‹€μŒμ˜ κ°€μΉ˜λ₯Ό μ€‘μš”μ‹œν•˜κ²Œ λ˜μ—ˆλ‹€. :
 
ν”„λ‘œμ„ΈμŠ€μ™€ λ„κ΅¬λ³΄λ‹€λŠ” 개인과 μƒν˜Έμž‘μš©μ„,
κ΄‘λ²”μœ„ν•œ λ¬Έμ„œλ³΄λ‹€λŠ” μž‘λ™ν•˜λŠ” μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό,
계약 ν˜‘μƒλ³΄λ‹€λŠ” 고객과의 ν˜‘μ—…μ„,
κ³„νšμ„ λ”°λ₯΄λŠ” κ²ƒλ³΄λ‹€λŠ” 변화에 λŒ€μ‘ν•˜λŠ” 것을 더 κ°€μΉ˜ 있게 μ—¬κΈ΄λ‹€.
 
즉, 였λ₯Έμͺ½ ν•­λͺ©μ— κ°€μΉ˜κ°€ μžˆλ‹€λŠ” 것을 μΈμ •ν•˜λ©΄μ„œλ„, μš°λ¦¬λŠ” μ™Όμͺ½ ν•­λͺ©λ“€μ„ 더 μ€‘μš”ν•˜κ²Œ μƒκ°ν•œλ‹€.
 
 
 
 

❄️ WaterFall VS Agile VS DevOps


https://www.oracle.com/kr/cloud/cloud-native/what-is-cloud-native/

 
기쑴의 λ¬Έμ„œν™”μ™€ 절차λ₯Ό μ€‘μ‹¬μœΌλ‘œ ν–ˆλ˜ 개발 방법에 μ˜ν•΄μ„œ μ‹€μ‹œκ°„μœΌλ‘œ 고객의 μš”κ΅¬μ‚¬ν•­κ³Ό λ‹ˆμ¦ˆμ— λŒ€μ‘ν•  수 μžˆλŠ” ν˜•μ‹μœΌλ‘œ 개발 방법둠이 μ§„ν™”λ˜μ—ˆλ‹€.
 
DevOpsλŠ” 개발(Dev)κ³Ό 운영(Ops) νŒ€ κ°„μ˜ ν˜‘μ—…κ³Ό μ˜μ‚¬μ†Œν†΅μ„ κ°•μ‘°ν•˜λŠ” λ¬Έν™”, μš΄λ™, ν˜Ήμ€ 방법둠이닀.
DevOps의 λͺ©ν‘œλŠ” 개발과 운영의 사이클을 더 λΉ λ₯΄κ²Œ, 효율적으둜 λ§Œλ“€μ–΄ μ†Œν”„νŠΈμ›¨μ–΄μ˜ 배포 및 μ—…λ°μ΄νŠΈλ₯Ό 더 μžμ£Όν•˜κ³  μ‹ λ’°μ„±μžˆκ²Œ ν•  수 μžˆλ„λ‘ ν•˜λŠ” 것이닀. DevOpsλŠ” CI/CD(지속적 톡합/지속적 배포)와 같은 μžλ™ν™”λœ νŒŒμ΄ν”„λΌμΈ, 인프라 μ½”λ“œ, λͺ¨λ‹ˆν„°λ§ 및 λ‘œκΉ…, 그리고 ν”Όλ“œλ°± 루프와 같은 방법과 도ꡬλ₯Ό ν¬ν•¨ν•œλ‹€.
 
μ„Έ 가지 λͺ¨λ‘ μ„œλ‘œ 배타적인 것이 μ•„λ‹ˆλΌ, νŠΉμ • 상황에 따라 μ„œλ‘œ λ³΄μ™„μ μœΌλ‘œ μ‚¬μš©λ  수 μžˆλ‹€. μ˜ˆλ₯Ό λ“€μ–΄, μ• μžμΌ 방법둠을 μ‚¬μš©ν•˜λ©΄μ„œ DevOps λ¬Έν™”λ₯Ό λ„μž…ν•˜μ—¬ 개발과 운영 μ‚¬μ΄μ˜ 간극을 μ€„μ΄λŠ” 것이 κ°€λŠ₯ν•˜λ‹€.
 
μ΅œκ·Όμ—λŠ” DevOps, MSA, μ»¨ν…Œμ΄λ„ˆ 가상화, CloudλΌλŠ” νŠΉμ§•μ„ λͺ¨μ•„ κ΅¬μ„±λœ μ•„ν‚€ν…μ²˜μΈ Cloud Native ArchitectureλΌλŠ” κ°œλ…μ„ λ§Œλ“€μ–΄ λƒˆκ³ , 졜근 ITμ‚°μ—… λΆ„μ•Όμ—μ„œ νŠΉμ§•κ³Ό νŠΈλ Œλ“œκ°€ λ˜μ—ˆλ‹€. 
 
 
 

πŸš€ Cloud Natice Architecture


 

ν΄λΌμš°λ“œ λ„€μ΄ν‹°λΈŒ μ•„ν‚€ν…μ²˜ 및 κΈ°μˆ μ€ ν΄λΌμš°λ“œμ—μ„œ λΉŒλ“œλœ μ›Œν¬λ‘œλ“œλ₯Ό λ””μžμΈ, 생성 및 μš΄μ˜ν•˜λŠ” μ ‘κ·Ό λ°©μ‹μœΌλ‘œ, ν΄λΌμš°λ“œ μ»΄ν“¨νŒ… λͺ¨λΈμ„ μ΅œλŒ€ν•œ ν™œμš©ν•©λ‹ˆλ‹€.
ν΄λΌμš°λ“œ λ„€μ΄ν‹°λΈŒ κΈ°μˆ μ„ 톡해 쑰직은 퍼블릭, 프라이빗 및 ν•˜μ΄λΈŒλ¦¬λ“œ ν΄λΌμš°λ“œμ™€ 같은 μ΅œμ‹  동적 ν™˜κ²½μ—μ„œ μŠ€μΌ€μΌλ§ κ°€λŠ₯ν•œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ λΉŒλ“œν•˜κ³  μ‹€ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이 λ°©λ²•μ˜ 예둜 μ»¨ν…Œμ΄λ„ˆ, μ„œλΉ„μŠ€ λ©”μ‹œ, 마이크둜 μ„œλΉ„μŠ€, λ³€κ²½ν•  수 μ—†λŠ” 인프라 및 선언적 APIλ₯Ό λ“€ 수 μžˆμŠ΅λ‹ˆλ‹€.
μ΄λŸ¬ν•œ κΈ°μˆ μ„ 톡해 볡원λ ₯ 있고 관리 κ°€λŠ₯ν•˜λ©° κ΄€μ°° κ°€λŠ₯ν•œ λŠμŠ¨ν•˜κ²Œ κ²°ν•©λœ μ‹œμŠ€ν…œμ„ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. κ°•λ ₯ν•œ μžλ™ν™”μ™€ κ²°ν•©λ˜λ―€λ‘œ μ—”μ§€λ‹ˆμ–΄λŠ” μ΅œμ†Œν•œμ˜ 수고둜 자주 λ°œμƒν•˜λ©° 예츑 κ°€λŠ₯ν•œ λ°©μ‹μœΌλ‘œ 높은 영ν–₯을 λ―ΈμΉ˜λŠ” 변경을 μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

https://learn.microsoft.com/ko-kr/dotnet/architecture/cloud-native/definition

 
 
μš”μ•½ν•˜μžλ©΄ μ†Œν”„νŠΈμ›¨μ–΄μ˜ λ””μžμΈ μ ‘κ·Ό λ°©μ‹μœΌλ‘œ λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€ μ‚¬μš©, DevOps μ‹€μ²œ, Docker와 Kubernetes 같은 μ»¨ν…Œμ΄λ„ˆν™” 및 μ˜€μΌ€μŠ€νŠΈλ ˆμ΄μ…˜ 도ꡬ ν™œμš©, CI/CD νŒŒμ΄ν”„λΌμΈ μ‚¬μš© 등을 ν¬ν•¨ν•œλ‹€. μ΄λŠ” ν™•μž₯μ„±, 볡원λ ₯, 그리고 기민성을 κ°•μ‘°ν•˜λ©°, λΉ λ₯Έ 변화와 지속적인 배포λ₯Ό ν—ˆμš©ν•œλ‹€.

728x90
λ°˜μ‘ν˜•

'DevOps' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[DevOps] Cloud Native Application Architecture  (0) 2023.05.20