ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 소프트웨어 형상 관리
    Topcit/소프트웨어 개발 2018. 6. 11. 23:02
      1. 소프트웨어 형상관리의 개요
        1. 형상 관리의 정의
          1. 소프트웨어 개발 과정에서 소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동
          2. 소프트웨어 변경의 원인을 찾아 컨트롤하며 적절히 변경되고 있는지 확인하여 관련 담당자에게 통보
          3. 소프트웨어 개발의 전체 비용을 감소시키고 리스크 요인들을 최소화 하는 것을 목표로 한다.
          4. 형상
            1. 소프트웨어 개발 단계의 과정에서 만들어지는 프로그램, 프로그램을 설명하는 문서, 데이터
          5. 형상관리 필요 배경
            1. 가시성 미흡 : 소프트웨어는 무형의 산출물이므로 가시성이 없음
            2. 컨트롤 어려움 : 눈에 보이지 않는 소프트웨어 개발에 대한 컨트롤이 현실적으로 어려움
            3. 추적성 미흡 : 소프트웨어 개발 전체 과정에 대한 추적의 어려움
            4. 감시의 미비 : 가시성 미흡, 추적의 어려움으로 프로젝트 관리를 지속적으로 하기 어려움
            5. 끊임없는 변경 : 끊임없는 사용자의 요구사항
      2. 형상관리의 개념도
        1. 형상관리 개념
        1. 형상 관리의 구성요소
          1. 기준선
            1. 형상 학목들의 기술적 통제 시점, 모든 변화를 통제하는 시점의 기준
          2. 형상항목
            1. 소프트웨어 생명주기 공식적으로 정의되어 기술 되어지는 기본 대상
          3. 형상물
            1. 소프트웨어 개발 생명주기 공식적으로 구현되어 지는 형체가 있는 실현된 형상관리의 대상
            2. 기술 문서, 하드웨어 제품, 소프트웨어 제품
          4. 형상 정보
            1. 형상항목 + 형상물
      1. 형상관리 활동
        1. 형상관리 활동
          1. 형상 식별
            1. 형상 관리 대상 구분, 관리 항목에 대한 번호 부여
            2. 형상 항목 식별 목표 : 문서 구조를 명료하고 예측 가능한 모습으로 정의, 정보 기록에 의해 추적, 관리를 용이하게
            3. 형상 항목 식별 내용 : 제품, 각종 문서, 형상 항목 번호
          2. 형상 컨트롤
            1. 소프트웨어 형상 변경 요청을 검토, 승인하여 정의된 베이스라인에 반영할 있도록 컨트롤
            2. 변경 요구 관리, 변경 제어, 형상 관리 조직의 운영, 개발 업체, 외주업체에 대한 형상 통계 지원
          3. 형상 감사
            1. 소프트웨어 베이스라인의 무결성 판단 수단
            2. 성공적인 형상 감사는 소프트웨어 베이스라인을 성공적으로 설정
            3. 베이스라인 변경 요구사항과 일치 여부 검토
            4. 검증, 확인
          4. 형상 기록
            1. 소프트웨어 형상, 변경 관리에 대해 각종 현황, 수행 결과를 기록하고 데이터베이스에 의한 관리를 하여 보고서를 작성하는 기능
        2. 형상관리의 효과
          1. 관리자 측면
            1. 프로젝트의 체계적이고 효과적인 관리 기준 제공
            2. 프로젝트의 통제 용이
            3. 프로젝트의 가시성 확보와 추적성 보장
            4. 품질 보증을 위한 베이스라인 제시
          2. 개발자 측면
            1. 소프트웨어 변경에 따른 영향 최소화, 관리의 용이
            2. 소프트웨어 품질보증 기법
            3. 소프트웨어의 적절한 변경 관리 기능
            4. 유지보수성 향상
        3. 형상관리 고려사항
          1. 적절한 운영 조직 구성, 관리 전문 도구의 활용
          2. 지속적인 관리와 관리 기준, 문제 해결 방안
          3. 소규모 프로젝트 일수록 형상 관리 정도를 적절히 테일러링
          4. 형상 관리 항목을 정하고 모든 변경 사항은 공식적인 합의에 의해 실시
          5. 운영중인 소프트웨어의 변경은 신중하게 진행
      2. 형상관리 도구
        1. 형상관리 도구
          1. Folder 공유
            1. RCS, SCCS
          2. Cilent/Server
            1. SVN, CVS, Perforce, ClearCase, TFS
          3. 분산 저장소
            1. Git, Mercurial, Bitkeeper, SVK, Darcs
        2. 서브버전
          1. SVN 오픈 소프트웨어 버전 관리 시스템이다.
          2. 코드가 서버 곳에만 저장된다.
          3. 버전 관리 서버가 곳으로 집중되어 있어야 하며, 서버의 계정에 전적으로 의존한다.
        3. 분산형 저장소
          1. 분산형 저장소 시스템은 클라이언트가 저장소 전부를 복제한다.
          2. 서버에 문제가 생기면 클라이언트의 카피본으로 서버를 복원할 있다.
          3. , 기능 단위로 저장소를 분리해서 개발할 있다.
          4. 서버 장애로 저장소가 손상된다 해도 다른 서버, PC에서 소스코드와 히스토리들을 모두 저장하고 있다.
          5. 중앙 서버 방식에 비해 복구가 쉽다.
        4. TFS
          1. 여러가지 프로젝트 관리 기능을 지원하는 마이크로소프트의 제품
          2. 기능
            1. 버전 컨트롤 : 버전 관리가 필요한 소스코드, 실행파일 관리
            2. Work item 계획, 관리 : 결함, 이슈, 요구사항, 태스크, 시나리오와 같은 항목에 대한 지속적인 수정
            3. 프로젝트 관리 : 사용자가 테일러링 있는 소프트웨어 프로세스에 따라 프로젝트를 구성
            4. 빌드 : 실행 가능한 제품으로 빌드할 있도록 프로세스, 워크플로우 제공
            5. 데이터 수집 보고 : TFS에서 얻은 다양한 정보를 기반으로 프로젝트의 상태를 평가하고 의사결정 있도록 지원
            6. 프로젝트 포털 : 프로젝트의 원활한 커뮤니케이션이 가능하도록 협업 워크 플레이스 제공
            7. 파운데이션 공유 서비스 : 최종 사용자는 없지만 도구 개발자, 확장 공급자에게 중요한 공용 인프라 서비스 제공

    'Topcit > 소프트웨어 개발' 카테고리의 다른 글

    애자일 개발  (0) 2018.06.11
    소프트웨어 품질 관리  (0) 2018.06.11
    소프트웨어의 요구사항 관리  (0) 2018.06.11
    소프트웨어 유지보수, 역공학, 재공학  (0) 2018.06.11
    소프트웨어 테스팅  (0) 2018.06.11

    댓글