2016년 1월 28일 목요일

SW프로세스개선 컨설팅 모델

SW프로세스 개선을 위한 컨설팅 모델은 주로 CMMI, SPICE, PRINCE2 등이 있다. 또한 SP인증모델을 기준으로 프로세스 컨설팅을 추진하기도 한다. SW프로세스 개선 컨설팅을 받는 이유는 해당조직이 보다 이상적인 모습으로 발전하고 보다 안정적인 조직운영과 성공적인 SW개발을 하기 위해서이기 때문이다.

국내에서 가장 활발히 컨설팅을 추진하는 모델은 CMMI로 대기업을 중심으로 컨설팅이 추진·운영되고 있다. SW개발에 있어서 여타의 컨설팅보다도 가장 효율적이고 효과적인 컨설팅은 바로 프로세스 개선 컨설팅이다. SW와 관련된 컨설팅 중 현장에서 선호하는 분야는 테스트, 아키텍쳐, 도구도입 등 직접지원 컨설팅으로 컨설팅 중 또는 직후 단기적인 효과를 누릴 수 있지만 장기적으로 전사적 내재화가 발생하기에는 어려움이 많다. 컨설턴트가 빠지고 나면 경우에 따라 원래 상태로 회복되기도 한다.

SW프로세스개선 컨설팅의 경우 도입 시 많은 이슈와 충돌이 발생하기도 하지만 장기적 이행관점에서 봤을 때 해당 조직의 발전가능성이 가장 높다. 또한, 주먹구구식 개발을 하던 SW기업들이 논리적이고 구조적인 프로세스를 통해 보다 체계적인 개발을 할 수 있게 만들어 주어 조직의 안정성과 발전 가능성을 확보할 수 있는 기반이 되는 것이다. SW프로세스와 관련된 모델들은 다양하지만 다른 모델 또는 표준간의 관계를 통해 유기적으로 연관관계를 맺고 있으며 다양하게 확장되고 있다.

< SW프로세스 표준간 관계도 >

자료 : Adapted from[S.A. Sheard, Evolution of the Frameworks Quagmire. IEEE (Computer, July 2001)


프로젝트 관점에서의 프로세스 컨설팅은 프로젝트를 진행할 때 필요한 방법론을 정의하고 그에 따른 WBS를 작성하고 관리하게 된다. 또한 방법론에서 정의한 각 단계(요구사항, 분석, 설계, 구현, 시험, 배포)에 대한 가이드라인을 제공하고 작성된 산출물에 대해 리뷰와 인스펙션을 주관하며 개발자와 관리자간의 조화로운 커뮤니케이션을 할 수 있도록 지원하기도 한다. 프로젝트의 이해당사자들이 합리적으로 일할 수 있는 기반을 제공하는 것이 바로 프로젝트 관점에서의 프로세스 컨설팅이다.

Sonarqube 가이드

소나큐브(Sonarqube)는 코드품질 검사를 위한 공개 소프트웨어 플랫폼이다.
  • JAVA , C/C++ , Objective-C , C# , PHP , COBOL 등을 지원한다 (일부 언어는 상업용).
  • 중복코드 , 코딩 스탠다드 , 유닛테스트 , 코드 커버리지, 코드 복잡도, 잠재적 버그, 주석, 설계, 아키텍처에 대한 보고서를 생성한다.
  • 수치 통계를 저장하고 그래프를 제공한다.



Jenkins 가이드

젠킨스 (Jenkins)는 지속 빌드 및 배포 공개 소프트웨어 시스템이다. 소프트웨어 프로젝트를 지속적으 로 빌드 및 테스트 하도록 해주는 자동화 도구이며, 배포에 필요한 프로세스를 통합하여 제공한다.


  • 빌드 프로젝트의 구성, 관리
  • 프로젝트의 구축, 테스트, 배포 및 자동화를 지원하는 다양한 플러그인과 연동 제공
  • Linux , Windows OS 지원
  • war 파일로 간단하게 배포 및 간편한 Web GUI 제공

Jenkins 가이드를 목차를 확인하고 관련 자료를 다운받을 수 있다.
  1. 설치
  2. 기본 설정
  3. 플러그인 설정: gcov , cppcheck , xUnit, NSIQ , Sonarqube