아름프로의 Agile, DevOps, 그리고 일상 이야기

The Eclipse Way란? 본문

추억의 책장/IBM Rational

The Eclipse Way란?

아름프로 2008. 1. 23. 15:08

현재의 eclipse가 개발되어 버젼이되어온 시간이 어느덧 7여년이란 시간이 흐렀다.
그동안 eclipse 자체의 발전은 눈부실 정도이며, 사용자 또한 모든 개발 툴을 통틀어 명실공히
가장 많이 사용하는 툴이라해도 틀리지 않을 정도로 대중화까지도 성공(!)하였다.

이러한 eclipse의 성공 비결은 뭐니뭐니해도 오픈소스 제품(무료)이면서도 안정적이며 기능 또한 훌륭하기 때문이겠지만, 이면에 숨겨진 중요한 사실이 한가지 더 숨어 있다는 것을 알아야 할 것이다.

"릴리즈 하기로 했던 날에 정확하게 릴리즈가 되고, 그 퀄리티 또한 우수하다" 는 것이 그 핵심이다.
초기를 제외한 약 6여년간의 릴리즈된 eclipse를 보게 되면, 릴리즈 형태로 배포가 된 버젼의 경우
정시에 배포를 하면서도 그 버젼에 대한 안정성과 퀄리티가 사용자 관점에서 봤을 때.. 너무도 완벽에
가깝다는 사실이다. (소프트웨어를 버그가 존재할 수 밖에 없다고 누군가가 말한 것이 무색할 정도로... )


이러한 것이 가능한 것에는 우수한 개발자들이 공을 들여 개발하는 것도 중요한 부분이겠지만, 더 중요한 것을 이들 개발자들(뛰어난 개발자 그룹)이 잘 만들 수 있도록의 환경과 방법을 제공해주고 있었다는 점이다.

다시 말해, "The Eclipse Way"라 불리우는 Eclipse를 개발을 제대로 할 수 있도록 7여년간에 걸쳐서 정립된 뛰어난 개발 방법론을 가지고 있었기 때문이다.

내용을 간략히 들여다보면,

  • milestones first : Eclipse 사용자라면 흔히 알고 있는 M1, M2 과 같은 milestone 버젼을 먼저 만나 볼 수 있었을 것이다.
  • 지속적이 통합 : 빌드 프로세스를 자동화하여 개발과 빌드를 주기적으로 관리하여 퀄리티 향상
  • 커뮤니티 참여 : 커뮤니티의 인원들을 참여시켜, 개발의 투명성과 문제의 빠른 발견 및 개선 향상
    ~ 2001년 중순까지 : Closed Development, 2001년 중순 이후 ~ : Open Development
  • 지속적 테스팅 : 2만여개의 JUnit 테스트가 지속적으로 테스트 : 이에 따른 테스트 레포트
  • 이른시점의 계획 : 차후 개발내역을 이른 이점(닥처서가 아닌)에 사전에 계획을 작성 (지속적으로 관리)
  • 오너쉽 관리 : 개발자 각자의 개발 현황, 계획, 크로스 컴포넌트 체크등을 함께 공유하며 관리

    등등

 

사용자 삽입 이미지

요약

  • Continuous iterative and adaptive planning
  • Continuous design/refactoring
  • Continuous integration/testing
  • Continuous delivering/demos
  • Continuous feedback
  • Continuous learning
  • => Continuous health