2016년 6월 28일 화요일

CMMI 절차와 적용사례 [하]

더보기

소프트웨어공학 전문조직 구성을 통한 소프트웨어 개발 효율성 향상

최근 다양한 소프트웨어 공학 기법 및 도구의 도입을 통한 긍정적인 효과와 생산성 향상 등의 이슈가 각광받고 있어 보다 적극적으로 소프트웨어 공학을 적용하기 위한 움직임도 늘어나고 있다. 기존의 기법이나 도구에 따라가는 수동적인 소프트웨어 공학 기법의 적용이 아닌, 소프트웨어 공학 전문 조직을 사내에 구성하여 기업에 가장 알맞은 소프트웨어 공학 기법을 적용하려는 움직임으로 보인다. 이러한 소프트웨어 공학의 도입의 성과와 효율성 및 주의사항 등에 대하여 웹케시 피트의 박해윤 과장을 만나 이야기를 들어보도록 한다.

Q: 소프트웨어공학 전문조직이 구성된 배경에 대해서 말씀해 주세요.
우선 어떠한 회사에 이러한 조직이 구성되었는지부터 말씀드려야 할 것 같습니다. 웹케시 피트는 금융권에서 SI를 수행하는 업체입니다. SI는 고객이 원하는 소프트웨어를 수주 받아 구축하는 일을 하는 것인데, 큰 틀에서 본다면 전반적으로 유사한 일이 반복되는 구성을 갖게 됩니다. 고객의 요구를 인지하고, 해결 방안을 모색한 뒤, 사업을 제안하고, 그리고 제안이 성사된다면 사업을 수행하고, 사업 종료 후 해당 사업 진행의 노하우를 내재화하는 일입니다.
저희 회사가 소프트웨어공학 전문조직을 구성한 이유는 이러한 사업의 사이클을 지난 10여년간 수행하면서 해결되지 않은 많은 문제들을 해결하기 위함이었습니다.
첫 번째 문제는, SI 사업은 외부에서 고립되어 사업을 수행함에 따라 문제 발생 시 이를 해결하기 위한 지원 방법 또는 관리 방법이 부족하다는 점이었습니다.
두 번째는 사업을 수행하는 인력에 대한 관리 문제로 인한 우수 인력의 쏠림 현상과 초급 인력의 역량 강화가 부족하다는 점이었습니다.
세 번째는 폐쇄적인 프로젝트 운용에 따른 프로젝트 실패의 위험성이 매우 크다는 점입니다.
네 번째는 지속적으로 유사한 오류가 다수의 프로젝트에서 공통적으로 발견되며, 이의 개선이 이루어지지 않아 비효율적인 작업에 지속적으로 시간을 할애하고 있다는 것과 이를 개선하면서 얻을 수 있는 발전 가능성이 위축되고 있다는 점입니다.
마지막으로 다섯 번째는 불투명한 프로젝트 관리에 따른 관리적 문제와 개발 상의 문제점의 모호한 구분입니다. 이러한 모호한 구분에 따라 명확한 문제점의 파악이 되지 않아 해결책을 도출하기가 어려운 문제입니다.
이러한 문제점을 해결하기 위하여 소프트웨어공학 전문 조직을 구성하였으며, 전사적 조직의 배치부터 프로젝트 수행 프로세스 까지 다방면의 효율성과 발전하는 기업과 인력의 토대를 구축하는 것에 목표가 있었습니다.
즉, 저희는 거시적으로는 효율성이 높은 조직의 구성을 위해서 구성원들에 대한 역량 분석과 각 조직들 간의 유연한 연계를 위한 업무의 정의 등을 포함한 기업 전체의 업무 프로세스에 대한 재 정의부터, 미시적으로는 단위 프로젝트의 효율적 수행을 위한 프로젝트 관리까지 전체 업무의 규칙을 수립하고, 이를 설득하고, 구성원들이 이러한 규칙에 따라 업무를 수행할 수 있도록 지속적으로 가이드를 했다고 보시면 됩니다.

핀테크 사례 연구 - 보안 품질 편

기존 금융 서비스는 일관된 서비스만 제공하였지만, 다양한 디바이스나 시스템과 연계되는 핀테크가 성공하기 위해서는 신뢰(Trust), 보안 (Security), 사용자경험(User experience)을 고려해야 하고, 이를 고려하여 비즈니스에 따라 소프트웨어를 맞춤형으로 다르게 구성해야 한다.

신뢰와 사용자경험의 경우, 비즈니스와 연결하기 쉽지만 보안은 표준화된 것을 적용하여 비즈니스는 고려하지 않는 것이 일반적이었다. 핀테크는 비즈니스에 따라 이용자나 사용법이 다양해지기 때문에 보안도 비즈니스 관점으로 접근하여 시스템의 효율성을 높일 필요가 있다.
이번 회에서는 핀테크 서비스에 적용된 보안 사례를 보면서 특징을 살펴보고, 핀테크의 품질을 확보하기 위한 요소가 무엇이 있는지 정리해본다.

사례 연구 전 확인 사항

핀테크의 보안은 비즈니스 관점을 필요로 한다.
 모든 시스템에서 완벽한 보안은 없다. 보안이 약해지면 새로운 보안을 만들어내고, 이 보안을 뚫기 위해 새로운 해킹 기법이 나타나는 반복성을 띄기 때문이다. 따라서, 쉽게 뚫을 수 없다는 생각이 들게 하거나 정보의 가치보다 정보를 해킹하는 비용이 더 들어가도록 보안을 구성해야 한다. 일반적인 보안의 3요소는 기밀성, 가용성, 무결성이다(그림1). 3가지의 요소가 상호 보완적으로 구성되어 있어 가장 효율적으로 배분하는 것이 보안 설계의 목표였다.


핀테크 보안에서 고려해야 요소는 효율성, 편의성, 안정성이다(공학트렌드의 핀테크-보안 편 참조). 핀테크 보안은 비즈니스 관점을 반영해 서비스 효율성을 높여야 하고, 이를 위해 편의성을 높일 필요가 있다. 그리고, 이 두 가지를 보완하기 위해 안정성을 고려해야 한다. 핀테크는 독립된 서비스가 아니라 기존 금융 서비스를 활용하는 서비스 방법이기 때문에 비즈니스를 고려한 보안 설계가 반드시 필요하다.