본문 바로가기
소프트웨어 공학

릴리즈 노트 작성 시 고려사항과 작성 순서

by iwuooh 2021. 11. 18.

릴리즈 노트 작성 시 고려사항

릴리즈 노트는 제품 소프트웨어의 사용자와 잘 정리된 릴리즈 정보를 공유하는 문서이다. 특히 제품 소프트웨어 패키징에서의 릴리즈 노트는 소프트웨어 제품이 개발 또는 테스트 단계이거나 베타 버전 등의 상태일 경우, 업데이트가 해제될 때 등 다양한 상황에 대해서 실무현장에서 작성되어 왔다. 상세 서비스를 포함하여 회사가 제공하는 제품에 관한 수정, 개선하는 작업으로, 릴리즈 정보들이 이 문서를 통해 제공된다. 이 정보들은 꼼꼼하게 테스트를 진행하고 개발팀에서 제공하는 사양에 대해 최종 승인된 후 문서를 통해 배포된다. 이렇게 릴리즈 노트의 작성이 중요한 여러 이유가 있는데, 릴리즈 노트에는 테스트의 정보와 결과가 포함되므로 사용자에게 테스트의 진행 과정이나 개발팀의 제공사항을 얼마나 준수했는지에 대해 확인할 수 있는 기회를 마련한다. 이로써 사용자에게 더욱더 확실한 정보를 제공하고 기본적으로 소프트웨어에 포함된 전체적인 기능, 서비스의 세부사항, 개선 사항 등을 공유할 수 있다. 또한 자동화 개념을 더해서 적용하면 전체적인 버전 관리 및 릴리즈 정보를 체계적으로 관리할 수 있다. 릴리즈 노트를 작성할 때는 고려해야 할 사항들이 있는데, 정확한 정보를 바탕으로 개발팀에서 현재시제로 직접 작성해야 하고 개발팀과 테스터가 협업하여 신규 소스뿐만 아니라 변경, 개선된 항목에 대한 이력들도 작성해야 한다. 릴리즈 노트 작성에 대한 표준은 없지만, 일반적으로 포함되어야 하는 항목은 Header(머리말), 개요, 목적, 문제 요약, 재현 항목, 수정/개선 내용, 사용자 영향도, 소프트웨어 지원 영향도, 노트, 면책 조항, 연락 정보 등이 있다. 통상적으로 배포되는 정보의 유형과 사용자의 요구사항에 기초하여 위의 공통 항목이 서식으로 정립되었다. 소프트웨어의 테스트 과정을 통해 예외 상황이 발생하여 추가 및 개선 항목이 생기면 릴리즈 노트도 추가 작성한다. 중대한 오류가 발생하여 긴급하게 수정하는 경우는 릴리즈 버전을 출시하고 반드시 버그 번호를 포함한 모든 수정사항을 포함하여 릴리즈 노트를 작성한다. 제품 소프트웨어의 차기 또는 신규 버전의 정보를 확인하여 자체적으로 기준을 수립하여 현 베타 버전을 신규소스로 하여 릴리즈할지 예외사항으로 베타 버전에 대한 릴리즈 노트를 따로 만들지 정해야 한다. 자체적으로 기능 개선을 완료했을 때는 정식으로 릴리즈 버전을 추가하고 신규 릴리즈 노트를 작성한다. 사용자의 요청에 따라 수정사항이 발생했을 경우에는 개발팀 내에서 허용하는 범위 내에서 자체 기능 향상과는 별도의 버전으로 새로 추가하려 릴리즈 노트를 추가 작성할 수 있다.

릴리즈 노트 작성 순서

릴리즈 노트의 작성은 우선 신규 패키징 제품의 모듈, 빌드 내용을 식별하는 것에서부터 시작한다. 모듈 및 빌드 수행 후 릴리즈 노트의 항목 순서대로 정리하고 전체적인 기능 정의 및 데이터의 흐름에서는 소스 기능을 통해 처리되는 int, char 등의 데이터형을 정리한다. 또, 메인 함수와 호출 함수를 정의하고 각각에 대한 출력값을 식별한다. 이 과정이 완료되면 패키징된 릴리즈 정보를 확인하는데 문서명, 제품명 등 릴리즈의 가장 기본 정보부터 버전번호, 릴리즈 날짜, 패키징 수행 진행날짜 및 갱신 버전을 확인한다. 앞선 빌드 내용에 따라 이제 릴리즈 노트의 개요를 작성하는데 제품 및 수정에 대한 전반적인 내용은 간략하게 정리하고 개발 소스 빌드 이후의 패키징 본에 대한 결과를 기록한다. 이슈나 버그 등 제품에 영향을 줄 수 있는 추가사항도 확인하여 기술한다. 버그 발견을 위한 재현 시험 및 재현 환경을 기록하고, 소프트웨어 입장뿐만 아니라 사용자 입장에서의 영향도까지 파악한다. 학습한 항목을 토대로 하여 정식 릴리즈 노트를 작성할 때는 릴리즈 정보 및 Header, 개요 등 기본 사항은 반드시 포함하고, 정식 버전을 기준으로 작성한다. 초기 작성을 마친 후 추가 개선에 따른 추가사항은 각 상황에 맞추어서 릴리즈 노트를 작성한다. 각 상황으로는 베타 버전 발생을 가정한 테스트 단계, 긴급 버그 수정, 추가 기능 향상, 사용자 요청에 따른 추가 개선 등이 있는데 이에 따른 릴리즈 노트 작성은 서로 다르므로 요구사항에 걸맞게 작성해야 한다.

댓글