루비 업무 시스템의 확장과 핫스팟 시마네

[29M06] The spread of enterprise Ruby at hot spot SHIMANE (ja)

작성자
RubyKaigi
발행일
2025년 10월 05일

핵심 요약

  • 1 시마네현은 마츠모토 유키히로의 영향력과 적극적인 행정 지원을 바탕으로 루비 온 레일즈 기반 업무 시스템 개발의 중심지(핫스팟)로 성공적으로 자리매김했습니다.
  • 2 엔터프라이즈 시스템의 요구사항(대량 데이터 처리, 유지보수성, 배치 처리 등)을 충족하기 위한 루비 온 레일즈 개발의 기본 패턴과 방법론이 제시되었습니다.
  • 3 베테랑 코볼(COBOL) 엔지니어의 풍부한 업무 노하우와 젊은 루비 엔지니어의 기술력을 융합하여 인력 양성 및 효율적인 시스템 개발을 도모하는 전략이 강조되었습니다.

도입

본 발표는 테크노 프로젝트의 요시오카 히로시가 '루비 업무 시스템의 확장과 핫스팟 시마네'라는 주제로 진행되었습니다. 1976년부터 소프트웨어 개발에 종사하며 메인프레임, 클라이언트-서버 시스템, 그리고 루비 온 레일즈에 이르기까지 폭넓은 경험을 쌓은 발표자는 시마네현에서 루비 기반 업무 시스템이 확산된 현황과 이에 필요한 개발 패턴, 인력 양성 전략을 소개합니다. 특히, 기술적인 내용보다는 애플리케이션 엔지니어 관점에서 비즈니스 시스템 개발에 필요한 실질적인 접근 방식을 다루고 있습니다.

핫스팟 시마네: 루비 업무 시스템 확산 현황시마네현은 루비 언어 창시자인 마츠모토 유키히로(Matsumoto-san)의 고향이라는 이점을 활용하여 루비 온 레일즈 개발의 중심지로 성장했습니다. 지방 정부의 적극적인 지원과 언론의 관심 덕분에 루비는 시민들에게도 널리 알려졌습니다. 2007년 IPA(정보처리추진기구) 실증 사업으로 마츠에 시와 협력하여 개발된 ‘의료·개호 공학 가산 시스템’은 배치 처리를 포함한 핵심 업무 전반에 루비를 사용한 일본 최초의 사례로, 약 50명의 개발자가 참여하여 성공적으로 완료되었습니다. 이후 시마네현은 소규모 개발 사례를 확대하고, 행정 주도의 루비 교육 과정을 개설했으며, 2009년부터는 루비 개발에 대한 보조금을 지원하는 등 산업 진흥을 위한 노력을 지속하고 있습니다. 현재 시마네현의 SI 기업들은 신규 업무 및 기존 시스템 웹화에 루비를 기본으로 채택하고 있으며, 지방자치단체의 시스템 조달에서도 루비 사용에 가점을 부여하는 등 루비 도입이 가속화되고 있습니다.

업무 시스템 개발을 위한 루비 온 레일즈 기본 패턴발표자는 엔터프라이즈 시스템 개발 시 루비 온 레일즈의 기본 패턴을 다음과 같이 제시합니다.

  • 대량 데이터 응답: 액티브 레코드(ActiveRecord)의 블랙박스 특성을 고려하여, 응답 속도 향상을 위해 SQL 직접 작성을 적극 활용합니다.
  • 유지보수성: 10~20년간 운영되는 업무 시스템의 특성을 고려하여 코딩 규약 준수, 소스 리뷰, DB 항목명에 일본어 사용 등을 통해 가독성과 기술 계승을 용이하게 합니다.
  • 지원: 안정적인 시스템 운영을 위해 디스트리뷰터 역할을 수행하는 전문 기관(네트워크 응용통신연구소)의 지원이 필수적입니다.
  • 배치 처리: 업무 시스템에 필수적인 배치 처리 역시 레일즈를 활용하여 온라인 및 배치 개발의 공통화 및 부품 공통화를 실현합니다.
  • 개발 방식: 객체 지향 언어임에도 불구하고, 업무 시스템 개발에는 구조화 설계(업무 흐름, 화면 전환 설계)를 통해 고객과의 요구사항 일치를 확인하는 것이 중요합니다. 레일즈의 MVC 구조에서는 컨트롤러에 업무 로직을 집중시키는 방식을 채택합니다. 이는 메인프레임 및 클라이언트-서버 시스템의 3계층 개발 구조와 유사하여 업무 처리에 집중할 수 있는 효율적인 구조로 평가됩니다.
  • 프로젝트 관리 및 개발 도구: Redmine을 통한 안건 관리(기능 추가, 버그), Subversion을 통한 소스 관리, Redmine과의 연계를 통해 누락을 방지합니다.
  • 보고서(Report) 처리: 대량 보고서 출력 및 스풀 기능이 필수적이며, JasperReports, iReport 등 기존 도구와 함께 자체 개발한 ‘Shin Reports’를 활용합니다.

코볼 엔지니어의 부활과 젊은 루비 엔지니어 육성웹 애플리케이션 시대로 접어들면서 40~50대 코볼 엔지니어들이 개발 현장에서 멀어졌지만, 그들은 풍부한 비즈니스 스킬을 보유하고 있습니다. 발표자는 이들 베테랑 엔지니어와 젊은 루비 엔지니어를 효과적으로 융합하는 전략을 제안합니다.

  • 베테랑 엔지니어 참여 환경: SQL 직접 작성, 일본어 DB 항목명, 워터폴 개발 방식, 배치 처리의 동일 언어 사용, 구조화 설계, 메인프레임과 유사한 온라인 구조 등을 통해 베테랑 엔지니어들이 설계 단계에서 기존 노하우를 활용할 수 있도록 지원합니다. 테크노 프로젝트에서는 코볼 엔지니어를 위한 루비 온 레일즈 교육(시퀀셜 파일 처리, DB 검색, 보고서 출력 등 코볼의 기본 교육을 레일즈로 재현)을 진행하고 있습니다.
  • 설계 중시: 업무 노하우와 고객과의 커뮤니케이션, 스마트한 데이터베이스 설계(복잡한 업무를 단순한 로직으로 처리), 풍부한 경험(입력/처리 오류 예상, 대량 데이터 처리)을 통해 시스템 품질을 확보합니다.
  • 젊은 루비 엔지니어 육성: 단기 개발 환경에서 업무 노하우 습득의 어려움을 해결하기 위해 베테랑 SE와 젊은 엔지니어의 융합을 통한 업무 노하우 전수가 중요합니다. 이는 업계의 암묵지, 전문 용어 이해, 에러 처리 방식 등을 포함합니다. 테스트 주도 개발(TDD)을 통해 고객 요구사항을 만족하는 시스템을 구축하고 품질을 확보하는 것도 강조됩니다.

결론

루비의 확장은 미국으로부터의 역수입, 경쟁 심화에 따른 비용 절감 요구, 일본 정부(IPA)의 적극적인 오픈소스 지원, 기존 클라이언트-서버 시스템의 웹 전환 시기 도래, 그리고 중소 IT 벤더의 자립 가능성 등 여러 요인에 의해 가속화될 것입니다. 특히, 루비 온 레일즈는 모든 요소를 오픈소스로 충당할 수 있어 대형 벤더의 제품에 의존하지 않고도 개발이 가능하며, 이는 중소기업의 자립을 촉진합니다. 2006년 총무성의 오픈 표준 제품 사용 가이드라인과 정부 조달 기본 방침은 루비의 확산에 긍정적인 영향을 미치고 있습니다. 시마네현을 넘어 중국 지방 전체로 루비 교육이 확산되고 있으며, 루비의 국제 표준화(ISO) 노력은 일본 기술이 세계 표준이 될 수 있는 중요한 기회로 평가됩니다. 발표자는 가까운 미래에 루비가 정부 조달 시스템에 포함되어 핵심 업무 처리 분야에서 상당한 점유율을 확보하고, 많은 개발자들이 루비로 시스템을 개발하는 시대가 오기를 희망하며 발표를 마무리했습니다.

댓글 0

댓글 작성

0/1000
정중하고 건설적인 댓글을 작성해 주세요.

아직 댓글이 없습니다

첫 번째 댓글을 작성해보세요!