본문 바로가기

좋아하는 것_매직IT/5.agile

1.Agile, 애자일관련 소프트웨어의 열두가지 개발원칙에 대해서 알아보자.

반응형

우선, 애자일관련 전문가 17명에 대해서 알아보자.

  • Kent Beck
  • Mike Beedle
  • Arie van Bennekum
  • Alistair Cockburn
  • Ward Cunningham
  • Martin Fowler
  • James Grenning
  • Jim Highsmith
  • Andrew Hunt
  • Ron Jeffries
  • Jon Kern
  • Brian Marick
  • Robert C. Martin
  • Steve Mellor
  • Ken Schwaber
  • Jeff Sutherland
  • Dave Thomas

애자일관련 소프트웨어의 열두가지 개발원칙에 대해서 알아보자.

  • 원문
    • 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
    • 2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
    • 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
    • 4. Business people and developers must work together daily throughout the project.
    • 5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
    • 6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
    • 7. Working software is the primary measure of progress.
    • 8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
    • 9. Continuous attention to technical excellence and good design enhances agility.
    • 10. Simplicity--the art of maximizing the amount of work not done--is essential.
    • 11. The best architectures, requirements, and designs emerge from self-organizing teams.
    • 12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
    • 출처
  • 번역

그럼, 주관적인 요약을 한번 해보자. 과연 내가해야 할것은 무엇인가?

  • 첫번째, 점진적, 반복적으로 개발하고, 요구사항을 준 고객에게 지속적으로 가치를 주어 만족시키자.
  • 두번째, 요구사항의 변경을 손들어(?) 환영하고, 변경을 유연하게 수용할 수 있는 프로세스를 가지자.
  • 세번째, 개발하고 동작하는 소프트웨어를 짦은 간격으로 고객에게 자주 전달해서, 요구사항에 부합하는 소프트웨어 인지 피드백을 받자.
  • 네번째, 고객과 자주 소통하고 같이 일해서 고객이 진정 원하는 소프트웨어를 만들자.
  • 다섯반째, 관리자가 되었을때, 개발자에게 필요한 환경과 자원을 제공하고 일을 잘 끝낼 수 있도록 신뢰하자.
  • 여섯반째, 요구사항 문서의 정보보다는 직접 고객과 얼굴을 마주 보며서 대화하고, 문서에 드러나지 않는 의도를 파악하자.
  • 일곱반째, 고객관점에서 생각을 해서, 문서 산출물보다는 시스템의 완성도를 더욱 높이자.
  • 여덞번째, 관리자가 된다면, 개발자가 지속 가능한 개발과 일정한 개발 속도를 계속유지 할 수 있도록 일과 인생의 균형을 유지할 수 있는 환경을 만들어 주자.
  • 아홉번째, 관리자가 된다면, 개발자에게 좋은교육과 세미나를 참석하게 하여, 좋은 설계나 탁월한 기술 역량을 향상하도록 도와주자.
  • 열번째, 개발을 할때는, 요구사항이 분명하고 명확할때 착수하자.
  • 열한번째, 자기주도적으로 업무를 수행하고 유기적으로 협력하여, 최고의 아키텍처와 요구사항 그리고 설계가 나올 수 있도록 하자.
  • 열두번째, 프로젝트 중간에 개발 참여자들과 주기적으로 모여서, 잘한점/잘못한점을 토론해서 수행 중에 교훈을 얻자.

결론

  • 애자일관련 소프트웨어의 열두가지 개발원칙을 체화시키자.
  • 그리고, 열두가지 개발원칙을 통해서 나만의 느낀점과 배움을 더욱 발전시키자
  • 오늘도, 애자일관련 소프트웨어의 열두가지 개발원칙에 대한 지식에 대한 마술(?) 한가지 획득완료! 감사합니다. ^^
728x90
300x250