세레나소프트웨어 글로벌 사용자 컨퍼런스 2016



올해 세레나소프트웨어 글로벌 사용자 컨퍼런스가 미국 시카고에서 열립니다.


Global User Conference

September 19 - 22, 2016 | Training Sessions September 18

Renaissance Chicago Downtown Hotel


차세대 IT 트랜스포매이션, 정형화된 엔터프라이즈를 위한 애자일 인프라스트럭처 그리고 왜 엔터프라이즈 DevOps는 다른가 등 Vision 2020와 같은 토픽을 주로 다룰 예정이며, 이외 고객에게 전달된 다양한 기능 및 세레나 제품에 대한 쇼케이스 그리고 활용도 높은 팁 등을 제공하여 사용자 컨퍼런스 컨텐츠를 보다 풍부하게 채울 예정입니다.


현재 얼리 버드 프로모션이 진행 중이며 등록은 다음 페이지에서 가능합니다. http://www.serena.com/xchange


저작자 표시

DevOps 그리고 엔터프라이즈 Bimodal IT의 대두




엔터프라이즈 IT가 DevOps 사례를 도입함에 따라 다음과 같은 질문과 이슈들이 떠오릅니다. 어떻게 하면 기업문화, 프로세스 그리고 도구를 운영하여 적은 비용으로 보다 빠른 비즈니스의 혁신을 이룰까요? 어떻게 하면 보다 효과적으로 변화할 수 있을까요?


기업의 IT환경은 복잡하고, 정교하고, 역동적이며, 때론 혼란스럽기까지 합니다. 인터넷 스타트업 기업과 달리, 규모가 큰 기업들은 매우 다양한 이기종 인프라 환경을 대하고 있으며, 여러 위치에서 많은 팀들이 개발 또는 소프트웨어를 배포하기 위해 매우 다양한 툴과 프로세스를 사용하고 있습니다. 이런 기업들은 애플리케이션과 테크놀로지를 여러 세대에 걸쳐 발전시키면서 자연적으로 진화한 그들만의 고유의 DNA를 가지고 있습니다. 수많은 팀, 프로세스 그리고 시스템이 내재되어 존재합니다. 이러한 축적된 것을 그저 없애 버릴 수는 없습니다.


가트너(Gartner)는 기업들에게 바이모달(Bi-modal) IT 접근 방식을 권장하는데 이는 CIO가 "IT 속도"를 위해 Mode1, Mode2 모두를 위한 전략을 세워야 한다고 말합니다. Mode1은 일반적인 IT 중심 모델로써, 안정성과 효율성에 초점을 둡니다. Mode2는 민첩한 IT, 비즈니스 중심으로 Time-to-Market에 초점을 두고 있으며 빠른 애플리케이션 배포를 지원합니다. 각 Mode는 사람, 툴, 기업문화, 방법론, 거버넌스, 평가기준 그리고 가치와 위험에 대처하는 다양한 그들만의 고유의 것을 갖고 있습니다.


사실 Mode 1 시스템은 지난 수년동안 존재했으며, 무작정 이를 비난할 수는 없습니다. 물론 보다 효율적이고 탄력적으로 바꿀 수는 있습니다. DevOps의 원칙인 문화(Culture), 자동화(Automation), 측정(Measurement) 그리고 공유(Sharing) aka CAMS 는 일반적으로 Mode 2에서 구현되는 것이지만, 이건 DevOps가 무너뜨리려는 사일로를 또 다른 사일로를 형성하여 되려 유지시키려는 경향이 없지않아 있습니다. 물론, DevOps의 원리를 Mode 1 시스템에도 적용할 수 있습니다. Mode 2와 마찬가지로 Mode 1에서 비난없는 사후분석(blameless post-mortems)과 같은 사례를 공유하며 생산적이고, 퍼포먼스 지향적인 문화를 소유할 수 있습니다 .


애플리케이션 릴리즈 자동화 또한 Mode 1과 Mode 2에 의해 활용될 수 있습니다. Mode 1 시스템을 기반으로 자동화의 신뢰성을 증가시킬 수 있으며 그러는 동안 Mode 2 시스템을 통해 비즈니스 혁신을 가속화할 수 있습니다. Mode 1과 Mode 2 사이에 종속관계(Dependencies)가 있을 수 있으며 이런 종속성을 정형화된 컴플라이언스의 가시성과 추적성을 제공하면서 관리하고 조직해야 합니다. 이를 위해서는 이런 두 가지의 시스템을 지탱할 올바른 기업문화, 프로세스 그리고 도구가 필요합니다.


세레나소프트웨어는 매우 정형화된 엔터프라이즈의 Mode 1과 Mode 2 시스템을 지원하는 제품과 솔루션을 제공할 수 있습니다. 이런 엔터프라이즈는 세레나소프트웨어의 애플리케이션 개발과 배포 솔루션을 매일 필요로 하고 있으며 아무것도 망치지 않고 보다 빠르게 비즈니스를 운영할 수 있도록 돕고 있습니다. 세레나소프트웨어는 Waterfall, Agile 그리고 DevOps 모든 엔터프라이즈 방법론을 지원하고, 모든 테크놀로지와 모든 플랫폼을 지원합니다.



저작자 표시

모든 소스를 한 곳에? 달걀에 좋지 않듯 코드에도 좋지 않습니다.



하나의 리파지토리(Repository)? 아니면 많은 리파지토리? 대답은 둘 다 아닙니다.

다음은 요즘 가장 많이 질문받는 것 중에 하나입니다.


"모든 소스코드를 꼭 하나의 리파지토리에 관리해야 하나요?"

이는 복잡한 질문입니다. 먼저 답을 찾기 전에 우선 왜 고객들이 이런 질문을 하는지 이해하도록 노력해 볼까요.


IT는 주로 중앙 집중화(Centralization), 최적화(Optimization) 이런 단어를 좋아합니다. 한 곳에 모든 코드를 모아 두는 것은 중앙 집중화 및 최적화를 위한 분산 데이터의 차세대 관리 방법처럼 보입니다. 모든 것을 한 곳에 두는 것은 더 나은 액세스 관리를, 더 나은 백업 및 복구를 관리하고, 모든 사람이 코드의 재사용을 극대화 할 수 있음을 의미합니다.


하지만, 이는 오늘날의 개발자의 행동에 직접적인 영향을 끼칩니다. 크고 작은 IT 조직의 개발자들이 자신을 위해 또는 팀을 위해 오픈소스, 오픈코드 관리시스템을 다운로드하는 것을 흔히 볼 수 있습니다. 특정 위치에 하나의 리파지토리를 구성하는 것 대신에 광대한 리파지토리의 디지털 열도(Archipelago)를 만드는 처럼 모든 서버 그리고 개발자들의 하드 드라이브에 구성된 리파지토리 또한 볼 수 있습니다. 이는 마치 다윈에 의해 기록된 핀치새처럼 팀과 팀사이의 프로세스와 표준의 근간이 진화되고 있는 것 같습니다.


이는 딜레마입니다. 회사들은 단일 리파지토리 전략을 추진하지만, 개발자들은 코드의 로컬 컨트롤과 소유권을 원한다는 것입니다.


회사가 원하는 것은 무엇일까요?

하나의 리파지토리를 원한다고 얘기할 때, 진정 회사가 원하는 것은 무엇일까요? 늘 그렇듯 회사는 여러 문제를 해결하기 위해 노력하며, 일반적으로 다음과 같을 것 입니다.


  • 리파지토리에있는 모든 Artifacts에 대한 가시성
  • 중앙 액세스 제어관리
  • 거버넌스 지침과 감사보고 요구사항에 대한 적합성
  • 업무 구분에 맞는 Artifacts의 세그먼트화
  • 코드 공유 및 리팩토링 활동 지원
  • 엔터프라이즈 대상의 광범위한 영향 분석
  • 오용, 남용 그리고 악의적인 활동에 대한 통제
  • 지속적인 리파지토리 백업


위에 나열된 것들은 자연스레 Architectural 한 것은 아니며, 모두 기능적인(Functional) 요구사항들입니다. 하나의 리파지토리 구성으로는 이런 요구사항들을 만족하기 쉽지만, 팀 기반으로 분산된 리파지토리 구성으로는 달성하기에 매우 어렵고 어떤 경우에는 불가능합니다.


개발자가 원하는 것은 무엇일까요?


개발자들은 보다 속도있게 개발하기 위해 최소한의 테크놀로지와 최소한의 프로세스만을 필요로 합니다. 일전에 페이스북 창업자이자 CEO인 마크 주커버그는 "Move fast and break things"이라고 얘기했는데 이 의미는 다음과도 같습니다.


  • 예산 승인없이 획득할 수 있는 솔루션
  • 자신의 요구에 맞게 사용하기 쉽고 유연한 리파지토리
  • 최소한의 프로세스, 통제 및 제어
  • 쉬운 관리 (또는 없거나)
  • 단순한 라이선스 (또는 없거나)
  • LAN 및 WAN을 통해 빠른 체크 아웃과 체크인 (특히 최신버전 내려받기)


다시 한번 얘기하자면, 이 또한 Architectural 한 것이 아니며, 단지 요구사항 리스트입니다. 마치 회사의 가버넌스 요구와 상충된것처럼 보이지만 공통점이 있고 모두의 요구사항을 충족시킬 수 있는 적절한 테크니컬 솔루션이 존재합니다.


놓친 부분들...


개발자들은 본인이 개발한 코드가 개발에 사용됐던 플랫폼이 아닌 다른 곳에서 서비스되는 것을 꺼려합니다. 메인프레임 개발자는 COBOL 코드를 윈도우에서 구동하는 것을 절대 원치 않을 것이고, 유닉스 개발자 또한 마찬가지일 것 입니다. 중국 베이징에 있는 개발자들은 자신의 코드가 불가리아에서 호스팅되는 것을 원치 않을 것이고, 미국 보스턴에서 관리되는 것 또한 원치 않을 것 입니다. 그외 또, 수 많은 코드 페이지와 어쩌면 ASCII에서 EBCDIC으로의 컨버전 문제가 잇따라 나타날 것 입니다.


오늘 날 대부분의 개발자들은 그들이 사용중인 개발용 플랫폼에 디자인된 코드 분석 도구를 사용합니다. 이 얘기는 코드를 계속 그 플랫폼에 놓고 사용한다는 얘기이며, 다른 의미로는 하나의 리파지토리에서 다시 분산된 플랫폼으로 코드를 중복하여 이용한다는 의미도 됩니다.


하나의 리파지토리 vs. 여러 분산된 리파지토리? 이런 관점보다는 소스 코드 리파지토리가 회사의 지적 재산이라는 것을 고려해야 합니다. 이는 회사가 제공하는 제품이나 서비스보다 더 가치있고 중요한 자산이기 때문에, 적대적인 외국 정부, 파렴치한 경쟁자, 불만을 품은 직원 그리고 조직적인 범죄의 타겟 및 초점이 되고 있습니다.


안전하고 견고한 SDLC: 차세대 표준 리파지토리


SDLC는 Software Development Life Cycle의 약어입니다.

미래의 리파지토리는 안전한 데이터 관리에 중점이 된 Best practice의 형태로 설계되어야 합니다. 리파지토리의 보호가 가장 중요하며, 다음 조건을 꼭 충족해야 합니다.


  • 단일 포인트 액세스 제어
  • 강력한 감사기능
  • Artifacts 암호화
  • Artificats, 로그, 감사 추적, 보고서 및 소프트웨어 자체 임의 변경에 대한 탐지


이상적인 리파지토리 아키텍처


이상적인 리파지토리 아키텍처를 만드는 것은 리파지토리가 하나 또는 여러개? 이런 문제가 아닙니다.

여기 모든 기업과 모든 개발자의 요구를 충족할 핵심 요소들이 있습니다.


  • 코드의 침투 및 노출에 대한 방어가 된 안전한 리파지토리
  • 프로세스 중심의 플랫폼에 상관없이 적용되는 하나 이상의 개발 프로세스 그리고 모든 개발 방법론을 지원
  • 견고하고 변경할 수 없는 로깅 및 감사 추적
  • 사용자 및 툴 관리의 단일 포인트
  • 개발자가 선택한 플랫폼에 저장되는 Artifacts
  • 해당 플랫폼에 최적화 된 본래의 유틸리티에 의한 백업
  • LAN과 WAN을 통한 고속 성능
  • 사용자 부하, 리파지토리 크기, 관리되고 추적되는 버전과 변경의 양에 상관없는 고속 성능
  • 코드중복을 줄이고 오용을 제한하면서 필요에 따른 코드의 최소한의 캐싱


우리는 이것을 '단일 가상 리파지토리(Single Virtual Repository)'라고 부릅니다.


관리와 운영 관점에서 보면 하나의 리파지토리처럼 보이지만, 내부를 들여다보면 SCCM 소프트웨어는 각각의 플랫폼, 각자의 위치에서 모든 Artifacts를 관리하고 있습니다.


개발자 관점에서 보면, 자신의 코드는 팀과 함께 배치되어 빠른 접근이 가능합니다. 또한 코드 분석 도구가 코드 복제를 따로 하지 않고 바로 실행할 수 있다는 것을 의미합니다. 각 팀은 그들이 갖고 있는 또는 위임 가능한 프로세스를 가질 수 있기에, 프로세스와 액세스 규칙이 특정 프로젝트 또는 Artifacts 레벨에 정의될 수 있습니다.


중앙 제어를 하지만, 분산된 데이터를 유지하는 것 입니다.


Why Serena


세레나는 세계적으로 가장 진보하고 성공적인 소프트웨어 변경 및 구성 관리(SCCM) 솔루션을 제공합니다.


메인프레임 개발자를 위한 전설적인 ChangeMan ZMF 솔루션이 있으며, "어디에서나 개발하고, 어디에든 배포한다"라는 접근 방식으로 메인프레임에서 개발할 수 있음은 물론이거니와 Eclipse 기반의 IDE를 이용하여 z/OS부터 z/Linux, Unix 시스템 서비스 그리고 Websphere 애플리케이션 서버까지 어떠한 메인프레임 플랫폼이라도 배포와 실행을 수행할 수 있습니다.


분산 환경의 경우, 타의 추종을 불허하는 테크놀로지, Dimensions CM  솔루션이 있습니다. 이는 전 세계적으로 국방, 정보, 금융, 보험, 제약 분야와 같은 가장 진보적으로 알려진 조직에 의해 사용중입니다. 그 뛰어난 기능은 개발자에게 매우 세련된 도구를 제공하여 코드 품질을 유지하면서 속도있는 개발을 돕습니다.


ChangeMan ZMF와 Dimensions CM은 '단일 가상 리파지토리(Single Virtual Repository)' 중심으로 설계되었고 개발자와 회사 거버넌스 팀에게 바로 그들이 원하는 것을 제공합니다.


그리고, 개발 영역이 메인프레임과 분산환경에 걸쳐 점점 확장되는 엔터프라이즈를 위해 Serena Release Control 솔루션은 개발 및 배포활동에 관련된 여러 플랫폼에 걸친 싱글 포인트 관점의 단일 가상 리파지토리를 제공하며, ChangeMan ZMF, Dimensions CM 뿐만 아니라 다른 제 3의 리파지토리들 또한 제어할 수 있도록 합니다.


세레나는 30년 이상 SCCM 시장을 리드하고 있습니다. 전 세계적으로 가장 정형화된 대기업들(Highly Regulated Large Enterprises, HRLEs)의 매우 복잡한 개발 업무를 뒷받침하는 경험을 토대로 소스 코드 리파지토리의 설계 및 구현에 있어서 압도적인 우위를 지키고 있습니다.


빛 좋은 개살구 같은 시간이 갈수록 성능이 저하되는 저렴해 보이는 솔루션에 속지 마시고, 단일 리파지토리의 단순함이 전부가 아님을 유의하시기 바랍니다.


단일 가상 리파지토리는 개발자와 IT 거버넌스의 요구를 충족하는 유일한 솔루션이며, 세레나는 견고한 SDLC 환경을 위해 이 솔루션을 당장이라도 제공할 수 있는 준비되어있는 유일한 존재입니다.


References: http://www.serena.com/blog/2015/08/source-in-one-basket/

저작자 표시
« Newer posts Older posts »