프로그래밍 조언(잔소리) - 1
대개 신입개발자들은 업무요청을 받자마자 바로 키보드를 타이핑하며 개발하기 시작합니다.
그러고 한시간정도 후 이런저런 이유로 도움을 요청합니다.
요청을 도와주면서 업무요청에 대한 정보들을 물어보면 정확하게 모르는 경우가 많습니다.
업무 요청을 받으면 업무요청에 대한 정의 확인하고, 업무요청에 따른 사전정보 파악한 후 , 업무요청에 따른 작업가이드 등을 생각하시기 바랍니다.
바로 시작하는 방법은 대리급 이상 2~3년차이상 개발자이면 몰라도 신입(1년미만) 개발자이면 지양해야할 방법입니다.
왜냐하면 머리속에 요청사항이 정리되지 않고 작업을 하다보면 여러 조건들을 두루 파악하기 힘들고 그로 인해 주먹구구식 업무처리가 될 수 있습니다. 즉 요청한대로는 작업이 되지만 다른 부분에 영향을 주어 잘 작동했던 기능들이 작동하지 않을 수도 있고, 여러 조건에 따라 작업사항이 다를 수 있는데 그런 점들을 고려하지 못 할 수 있습니다.
담당자, 기획자, 선배 개발자들에게 업무요청을 받으면 다음과 같이 진행해주시기 바랍니다.
이 방법은 제가 신입개발자들에게 권유하는 방법이므로 정답은 아닐 수 있습니다.
본인의 상황에 따라 받아들일 수 있는 점은 받아주시기 바랍니다.
제가 알려드린 방법대로 한다면 의미없는 작업이 줄어 개발시간이 줄어들게 된다는 점은 제가 보장합니다.
첫번째, 업무 요청에 대한 정의를 합시다. 업무요청에 대한 정확한 이해 없이는 작업이 될수 없습니다.
예를 들면 중국집 알바생이 메뉴를 주문 받고 나서 주방에 주문받은 내용을 이야기 할 때, 주문이 생각나지 않는다면 어떻게 해야할까요?
맞습니다. 다시 주문하신 분에게 가서 주문내용을 확인해야합니다. 개발도 마찬가지입니다. 본인이 업무요청에 대한 이해를 하지 못했다면 업무요청자[담당자, 기획자, 선배개발자]에게 다시 설명을 부탁드립니다.
만약 업무요청자에게 물어보지 않고 자기 마음대로 해석해서 개발을 진행한다면 어떻게 될까요? 짜장면을 주문받고 짬뽕을 가져다 주는것과 같은 상황이 될 수 있습니다. 다시 짜장면을 만들어 가져다 주어야합니다.
항상 업무 요청의 기준은 본인이 아닌 요청자라는 사실 잘 기억해주세요
두번째, 업무 요청에 대한 정의가 끝났다면 , 업무요청에 필요한 정보를 파악하시기 바랍니다.
업무요청이 "검색기능이 있는 게시판을 만들어주세요"라고 가정해봅시다. 해당 업무요청에 필요한 정보는 무엇일까요? 먼저 게시판을 보여주는 리스트, 뷰, 등록페이지에 대한 정의가 필요합니다. 리스트인 경우 검색기능이 제목만 되는지, 내용도 되는지, 제목 + 내용이 되는지, 분류별로 검색이 되는지 등 다양한 속성값에 기준이 있을 수 있습니다. 또한 리스트에 어떤 속성값들을 보여줘야할지도 정해야합니다. 번호를 보여줄지, 제목을 보여줄지, 등록자를 보여줄지, 등록일을 보여줄지, 조회수를 보여줄지 등등을 말입니다. 또한 등록을 할때는 속성값에 대한 정의가 필요합니다. 제목이 등록가능한지, 내용을 어떻게 저장할지 , 내용은 에디터를 붙여야할지, 등록일은 입력받을지, 분류는 어떻게 등록할 것인지, 분류를 공통코드로 등록할 것인지 등 개발 작업 전에 정해야할 것들이 있습니다. 이부분을 정의하지 않고 한다면 , 다 만들고 나서 하나하나 지적받고 추가 작업을 계쏙 하게 됩니다.
세번째, 업무요청에 따른 정의와 , 정보 수집이 끝났다면 이제 대략적인 요청작업을 할 방법을 적어봅시다. 게시판을 만드는 경우
디비테이블생성, 리스트페이지, 뷰페이지, 등록페이지가 필요합니다.
디비테이블 생성은 DB에 따라 테이블생성명령어가 다를수 있으며, 등록페이지에 필요한 속성에 맞게 컬럼을 생성하여야합니다.
리스트페이지는 검색과 리스트내용들과 페이징처리를 해야하고 버튼으로는 등록버튼이 있습니다.
뷰페이지에서는 리스트에서 선택한 번호의 내용이 나오며 삭제버튼과 수정버튼과 목록버튼의 기능이 필요하고 상황에 따라서는 이전글, 다음글도 필요합니다.
등록페이지에서는 디비 저장과 수정, 그리고 필수값 체크 그리고 목록, 취소, 수정, 등록 등의 버튼의 기능이 필요합니다.
이렇게 전체적인 큰틀에 맞게 적고 나서 각각 세부적으로 적어 나가시면 됩니다.
다시 정리해봅니다.
첫째, 업무요청에 대한 정의를 확인합니다.
둘째, 업무요청에 필요한 정보를 파악합니다.
셋째, 업무요청에 대한 가이드를 만들어봅니다.
'컴퓨터 > 프로그래밍' 카테고리의 다른 글
프로그래밍 조언(잔소리) - 3 (0) | 2017.08.05 |
---|---|
프로그래밍 조언(잔소리) - 2 (0) | 2017.08.02 |
프로그램밍 기초 - 배열, 리스트 (0) | 2017.07.29 |
프로그래밍 기초 - 변수 (0) | 2017.07.21 |
게시판에 대하여 [간단한 이해, 설명 그리고 종류] (0) | 2017.07.10 |