-
요구사항 명세서,테이블 정의서, 화면설계 작성 후기카테고리 없음 2023. 11. 26. 23:20
프로젝트 전에, 어떤 기능을 가진 코드를 작성할 것인지 미리 설계하는 작업을 처음으로 거쳐봤다.
첫 프로젝트의 요구사항 분석서를 작성해 봤는데, 문서 작성에 이렇게 시간이 오래 걸릴 줄은 몰랐다. 약 7일정도의 시간이 있었는데, 문서들을 검수하고 재작성 하는데 시간이 2일정도 걸린 것 같다. 최종 작성된 글도 마냥 완벽해 보이지는 않는다.
이렇게 시간 기한을 정해두고 프로젝트를 하게되니 막상 마음이 많이 급했던 것 같다. 7일 모두 코딩을 해도 내가 모든 기능을 만들 수 있을까 걱정인데, 괜히 문서들은 빨리 끝내고 넘어가야 할 것 같은 느낌이 많이 들었다.
하지만 실제로 요구사항 명세서를 개발자와 비개발자 모두가 이해할 수 있도록 최대한 프로그래밍 언어를 제한하되, 자세하게 작성해야 한다는 것도 익히 들어 알고 있었다.
그래서인지 빨리 끝내고 싶은 마음과 최대한 신경써서 만들고 싶은 마음이 많이 충돌했다.

*요구사항 명세서 막상 만들고 나서 좀더 시간을 들여 단어 정리를 좀 하고 싶었으나, 한정된 시간을 골고루 배분해서 써야한다는 것을 알았기에 다음 작업으로 넘어갔다.

*테이블 정의서 일부 테이블 정의서를 작성할 때는 직접 코딩 개발에 이용할 데이터 스키마를 구상하는 단계여서, 어떤 부분이 필요할까 좀더 고민하면서 천천히 작성하게 되었던 것 같다.
처음 가격기능을 구상했을 때는 이전 가격을 다른 종류의 컬럼에다가 저장하려고 했는데, 곧 이는 한정된 수의 데이터만 다룰 수 있겠다는 생각이 들었다.
물론, 지금 아는 선을 벗어나면 해결이 가능한 수준의 문제일 수도 있었다. ALTER 명령어를 쓰면 되지 않을까 생각했지만 자주 사용하는것은 데이터 테이블 관리에서 지양해야한다고 교육을 받았다.
과거의 가격들은 각기 다른 행에 저장하면 된다는 생각이 들었는데, 그렇게 나온 테이블이 아래와 같았다.

가격 테이블 원래는 Price 1, old1price,old2price, 이런식의 컬럼을 여러개 만드는걸 생각했는데. 매우 비효율적인 테이블에서 좀 나아진 것 같았다.
구상이 바뀌면서 테이블을 여러번 바뀌다 보니, 이것도 꽤나시간이 들었던 것 같다. 코딩을 한다고 해서 타이핑만 많이 치는게 아니라, 생각을 하는데 시간을 많이 쏟아야 한다는 것을 꽤나 크게 체감했다.
부디 이번 경험으로 다음 프로젝트에서는 더 빠른 시간 안에 정교한 문서작업들을 완료하고 싶다.