티스토리 뷰

개발자 관점에서 필요한 프로젝트 문서

프로젝트 산출물 관련 검색을 해보면 어마어마한 내용들이 쏟아 집니다. 

사업관리, 개발관리, 비용관리, 인력관리, 리스트 관리 등등... 

그런데 작은 회사에서 또 작은 프로젝트를 수행하는 경우 기획 문서 하나없이 사장님 지시로 시작될 때가 많습니다. 

개발자 관점에서 프로젝트를 수행하는 데 꼭 필요한 문서들이 있습니다. 

또 외주 업체로부터 프로젝트를 인수/인계 받는 경우 요청해야할 기본 문서들이 있습니다.

프로젝트 문서 작업

분석/설계 단계

1. 기획 문서 

기획 문서는 프로젝트 시작 전에 반드시 정의 해야할 사항을 작성합니다. 
  1. 개발범위 및 전체 일정 : 무엇을 왜, 언제까지 개발해야 하는지 정의합니다. 개발 중에 수정 요청 또는 추가시 이를 기반으로 협의해야 합니다. 

  2. 시스템 구성도 : 시스템 구성도를 통해 추가 장비나 예산 등을 정할 수 있습니다. 개발, QA 관련 인스턴스 테스트 DB 정보 등을 식별합니다.  
  3. 이해관계자 : 커뮤니케이션할 담당자를 지정하는 겁니다. 이때 담당자를 지정하지 않으면 판단하고 책임질 사람이 없어집니다. 
  4. R&R 정의 : 몇 명이 뭘 할지를 결정하는 내용입니다. 이 인력을 기반으로 프로젝트가 진행 될 것이기 때문에 확실하게 결정하고 시작해야합니다. 

2. 시스템 흐름도

PPT 한 장에 전체적인 흐름을 정의해 놓으면 됩니다. 

기획자와 또 개발자간에 원활한 소통을 위해 필요합니다. 

외부 연동 및 필요한 리소스를 한눈에 볼 수 있어야 합니다.

3. 화면 정의서

화면 정의서는 반드시 FIX 하고 진행해야 합니다. 

기획자와 개발자는 서로 자기 상상 속에 얘기할 수 있습니다. 

화면 정의서를 기반으로 DB 설계와 프로세스를 정의할 수 있습니다. 

4. 프로세스 정의서 

화면에서 데이터가 어떻게 처리되는 지 어떤 이벤트가 발생하는지 식별

화면 이외 처리 과정(저장/수정/삭제 등)에서 어떤 데이터들이 처리 되는지 정의해야 합니다.  

5. 용어사전

용어사전을 기반으로 DB 테이블명과 칼럼명을 생성해야 합니다. 

이 이름을 기반으로 클래스명, 변수명 등이 함께 결정이 되기때문에 용어 사전은 필수입니다. 

용어사전을 어떻게 만들지 잘 모르겠다면 관련 DB 테이블과 칼럼을 기준으로 하면 됩니다.

(실제 적용예) 

1. 엑셀로 DB TABLE 정의서(한글 필드명, 타입, 커멘트, NOT NULL, PK 정의)를 만듭니다. 

2. 엑셀을 기반으로 용어사전(한글, 영문, 영문약어, 타입, 길이)을 만듭니다. 

3. DB 제너레이터로 테이블 생성 : 엑셀을 읽고 용어사전을 이용하여 DB 테이블을 자동 생성하게 만듭니다. 

4. 코드 제너레이터로 모듈 생성 : sql, repository, service, controller, js, html을 생성합니다. 

생성 시 DB TABLE의 칼럼과 타입, 사이즈, 커멘트, NOT NULL 정보를 이용합니다. 

이렇게 되면 명명규칙을 별도로 만들지 않아도 자동으로 적용이 됩니다. 

6. ERD 

ERD는 전체 시스템 분석 및 업무를 파악하기 위해 필요합니다.  

7. 공통 코드 정의 

공통 코드를 미리 정의하지않고 개발하면 나중에 소스가 엉망이 될 수 있습니다. 

쿼리에서 공통 코드를 조인해서 가져오기도 하고 하드 코딩하기도 하고 상수로 정의해서 쓸 수도 있습니다. 

공통 코드를 기반으로 DROP DOWN, CHECK BOX 등을 구현하기도 하고 보여 주는 화면에서 코드를 이름으로 전환해서 보여 줄 수도 있습니다. 

(적용예)

필요한 공통코드 정보를 API에서 제공하고 공통 화면에서 AJAX를 통해 가져다 쓰게 정의를 하여 사용. 

8. CODE CONVENTION

네이밍 규칙 및 변수 생성 등은 사전에 정의하고 공유해야합니다. 

한글 변수명, 대문자 변수명, 소문자 클래스 등 개발자마다 제각각으로 개발하는 것을 방지해야 합니다.  

9. WBS

모든 사장님, 관리자는 WBS를 원합니다. 

누가 언제까지 무슨 일을 하고 있고 현재 얼마큼 진행 되고 있는지 수치로 알고 싶어합니다. 


QA 단계 필요 문서 

1. 테스트 시나리오

2. 체크 리스트

오픈 전에 기본적인 체크 리스트를 준비해야합니다.  

배포 및 운영에서 필요한 문서

1. 시스템 정보

시스템 정보(개발/QA/운영) 문서

2. 배치시스템정보

배치 시스템 정보, 배치 주기, 로그 파일 정보

3. 운영 매뉴얼 




'프로젝트' 카테고리의 다른 글

개발자 관점에서 필요한 프로젝트 문서  (1) 2019.01.03
댓글
댓글쓰기 폼