소스 코드 핸드 오버 계획 준비 [닫기]


12

우리 회사는 거대한 제품의 소스 코드를 얻으려고합니다.

핸드 오버가 시작될 때 고려해야 할 사항은 무엇이며 향후 모든 제품을 보유하고 해당 제품을 유지할 수 있는지 확인하십시오.


1
가능하면 프로젝트를 진행하는 일부 엔지니어에게 인수를 요청하십시오. 리소스 연속성 문제를 해결하는 데 도움이됩니다.
tehnyit

우리는 충분히 운이 좋지 않습니다. 우리가 할 수있는 최대치는 3-4 주 동안 일부 엔지니어를 이용할 수있게하는 것입니다.
Ahmed Aswani 2019

관련 답변을 찾았습니다. 대부분 아래 답변을 완성합니다.
Ahmed Aswani 2019

답변:


8

먼저 행운을 빕니다.

다음은 아마도 요청하거나 제공해야 할 것들입니다.

  • 알려진 결함 목록.
  • 사건 및 문제 기록 목록.
  • 마지막 두 릴리스에 대한 세부 사항은 다음과 같습니다. 구현하는 데 시간이 얼마나 걸 렸는지, 출시 이후에 사고가 증가한 기간 등이있었습니다.
  • 주요 주제 전문가는 누구입니까?
  • 운영 시간과 기본 지원은 무엇입니까?
  • 제품이 존재 한 기간과 코드 기반은 얼마나 안정적입니까?
  • 제품 로드맵은 무엇입니까?
  • 기술 스택은 무엇입니까?
  • 통합 지점은 무엇이며 누가 통합 시스템을 지원합니까?
  • DR 구성 요소가 있습니까
  • DR 호출을 담당하는 사람
  • 응용 프로그램 SLA 또는 서비스 대상은 무엇입니까?
  • 파일 시스템 / 데이터베이스 / 메시지 큐의 예상 증가량은 얼마입니까?
  • 시스템 백업은 언제 수행되며 누가 책임이 있으며 복원 전략은 무엇입니까?
  • 제품 백 로그 관리 책임자
  • 어떤 공급 업체 SLA 및 연락처 정보가 있는지
  • 배치 일정이나 오래 실행되는 프로세스가 있습니까?
  • 시스템이 완전히 트랜잭션되고 동시성이 어떻게 관리됩니까?
  • 애플리케이션의 주요 사건 관리 프로세스는 무엇입니까?
  • 이해 관계자는 언제, 누가, 어떻게 변화와 중단을 알 수 있습니까?
  • 합의 된 중단 기간 / 시간은 얼마입니까?
  • 소스 코드는 어디에 보관되어 있습니까?
  • 소스 코드 백업, 복원 및 변경 로그 관리 방법
  • 솔루션 아키텍처의 위치, 대상 및 소유자
  • 배포 대상은 무엇입니까 (DEV, ST, UAT, Pre PROD, PROD, DR).
  • 타사 라이센스는 언제 갱신됩니까?
  • RACI 차트가 있습니까
  • 사용자가 몇 명이고 어디에 있습니까?
  • 일반적인 문제 해결 문제 또는 불만 사항은 무엇입니까?
  • 시스템 액세스 권한 부여 담당자.
  • 펜트 테스트 / 보안 감사는 언제 수행됩니까?
  • CI 및 자동화 된 빌드 프로세스는 어디에 있습니까?
  • 소스 제어 및 빌드 서버 관리 책임자
  • 설치 안내서는 어디에 있습니까?
  • 대상 인프라 및 네트워크에 대한 설명서가 있습니까?
  • 최근 사건의 심각성 및 영향 유형은 무엇입니까?
  • 개발자 워크 스테이션 설정 지시 사항이 있습니까?
    • 어떤 개발 보조 자료 및 프레임 워크가 사용되며 팀에 라이센스가 부여됩니다.

그것은 내가 지금 생각할 수있는 모든 것에 관한 것입니다.


8
"DR", "DEV, ST, UAT, Pre PROD, PROD, DR"및 "RACI"를 정의하십시오. 이 중 일부는 소스 코드와 관련이 없습니다 (즉, RACI 차트는 코드와 전혀 관련이없는 조직적입니다)
S.Lott

소스 코드의 현재 버전뿐만 아니라 whoel 소스 코드 저장소에 액세스하고 싶지 않습니다. 이 주석은 종종 코드가 특정한 방식으로 변경된 이유를 알려줍니다. 그것은 그것을 유지하는 데 중요합니다.
HLGEM

@HLGEM은 소스 코드의 현재 버전에 대한 내 진술을 모든 구성 요소에 대한 전체 소스 코드를 암시합니다.
Kane

@ S.Lott DR은 "재해 복구"를 설명하는 데 사용됩니다. 개발은 환경에 맞게 구성되는 "개발 환경"의 일반적인 용어입니다. ST는 시스템 테스트 환경의 약어입니다. RACI는 책임, 책임, 정보 및 자문을받는 사람을 설명하는 데 사용되는 조직 도구라는 데 동의하지 않습니다. 코드가 커밋되면 누가 책임이 있습니까? 동료 검토의 일부로 누가 상담합니까? 빌드 성공 / 실패 사실을 누가 알 수 있습니까? 등등
케인

@ kame : 정의로 답변을 업데이트 하십시오. 답변에 댓글을 더 추가하지 마십시오. 제발 업데이트 답을.
S.Lott

6

핸드 오버가 시작될 때 고려해야 할 사항은 무엇이며 향후 모든 제품을 보유하고 해당 제품을 유지할 수 있는지 확인하십시오.

확인해야 할 사항은 다음과 같습니다.

  • 당신은 그들이 성공적으로 코드를 구축 참조
  • 당신은 그들이 단위 테스트를 구축하고 모든 패스를 확인
  • 다른 테스트를 성공적으로 수행하고 모든 합격 (수락, 통합 등)을 볼 수 있습니다.
  • 공개 이슈 데이터베이스를 얻습니다 (버그질라 등을 사용하면 쉽게 구할 수 있습니다)
  • 제품이 실행됩니다 (설치 지시 사항).

다른 모든 것은 현재 관리자에게 맡겨야합니다.


2
나는 "당신이 그것들을보아야한다 ..."와 같은 단어를 갖도록 수정 될 것을 제안한다.
S.Lott

@ S.Lott 문서를 보여 주든 글로 쓰든 상관 없습니다. Ahmed Aswani와 그의 팀은 응용 프로그램을 유지 관리 할 것이며 위의 모든 단계를 스스로 수행 할 수 있어야합니다. 나는 대답을 약간 수정했지만 그것이 당신이 제안한 것인지 확실하지 않습니다.
BЈовић

1
코드가 작성되었다는 주장은 실제로 코드가 작성되는 것을 보는 것과 다릅니다. 거기에 있었다. 했어요 문서가 모호하거나 혼동되거나 불완전 할 수 있습니다. 오래된 "신뢰하지만 확인"원칙입니다. 당신이 그것을 볼 때까지 그것을 믿지 마십시오.
S.Lott

1
@ S.Lott Ok는 의미가 있습니다. 이제는 비슷한 상황에 처해있어서 깨진 HW 보드에 무언가를 구현하게되었습니다. 우리는 정말로 무엇이 잘못되었는지 알아 내기 전에 4 개월을 보냈습니다.
BЈовић

5

팀이 코드를 넘겨 줄 수 있도록 일정 기간 동안 지원을 제공해야합니다. 계약서에 서명하십시오!

나중에 질문을해야한다는 것을 몰랐다는 질문이 생길 것입니다. 따라서 코드, 문서 및 프로젝트에있는 모든 것을 제공하는 것이 아니라 물건을 설명하기 위해 "고착"해야합니다.

프로젝트 양도시 중요한 팀 경험 중 하나를 잃게됩니다.

때로는 기대하지 않은 무언가, 적대감도 얻습니다.

핸드 오버를하는 회사가 핸드 오버를 잘 처리하고 있습니까? 그들이 프로젝트를 당신에게 돌려 주어서 사업을 잃어버린 경우, 코드를 만든 (자랑스러운) 개발자는 그들의 "아기"가 사라 졌다는 사실을 원망할 수 있습니다. "아직 가지고있는 문서에 있습니다"와 같은 응답을 얻을 수 있습니다.

기술적 인 측면을 다루는 것이 좋지만 인간의 측면도 고려하십시오.

YMMV!


0

코드에 테스트 스위트가 포함되어 있습니까? 시험 복의 모든 시험에 합격합니까? 스위트 룸의 커버리지 범위는 얼마입니까?

테스트 슈트를 놓치면 테스트 슈트 및 관련 프레임 워크를 최우선으로하는 것이 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.