루체벨라
455
2018-08-06 11:33:07 작성 2018-08-06 11:38:41 수정됨
27
10800

개발 노하우..


제가 겪어온 개발 노하우를 알려드리려 합니다.


1. 코딩 하기전 업무를 70~80%이해 하라.

- 업무를 이해하지 못하고 설계를 하거나 코딩을할 경우 프로젝트가 망하거나 고객과의 마찰로 인하여 개발공수를 넘김으로 인한 손실을 입히는 행위가 발생됨.

고로 설계전 업무는 70%이상 알아야하며 설계단에서도 70~80%이상 알고 들어가야 함.


2. 문서관리

- 문서관리를 통해 고객이 나중에 다른말 못하게 미팅 때 마다 WBS(요구사항추적및일정계획) 작성

놋북으로 녹취까지 떠놓으면 좋음.

한 프로젝트에서도 업무성격이 나뉘고 복잡한 업무가 있는 경우가 빈번함.

그럴땐  해당 업무를 도식화 해서 서로 논의한 후 문서에 Sign을 받아서 개발 착수

DW성 같은 프로젝트의 경우 계산식이 굉장히 많고 업무도 복잡하여

따로 계산정리 엑셀 파일을 만들어서 관리.


3. 철저한 메타 관리.

네이밍

  • Project명(회사 + 업무 + 용도 + 옵션)             OK_CM_WEB_01 : 오키커뮤니티웹01
  • Server명(회사+서버종류+운영체제+옵션)
  • Database명(회사+DB용도+업무+밴더+옵션)
  • Table명(table종류+업무+테이블성격+옵션)
  • Interface ID등등..

단어관리


도메인관리


코드관리


컬럼관리



자체적으로 만든 메타관리 툴을 이용해 프로젝트를 진행함.


4. DB정규화

3정규화 까지는 기본으로 가야함.

2번 메타관리를 통해 DB를 설계하거나 테이블을 만들때 단어,컬럼명,도메인 규칙등을 통해서

테이블의 컬럼및 도메인이 쉽고 편리하게 관리됨.


5. 스케줄 관리.

프로그램 계획서를 통한 개발자별 스케줄관리

프로젝트마다 스케줄관리를 통해서 개발자의 역량을 측정 할 수 있음.

개발자의 특성에 맞게 적재적소에 잘 배치하는것 또한 PM의 역량

보통 별다른 이슈 없는 게시판 같은경우 8시간 하루의 시간을 줌 왜냐하면 화면도 다듬어야 하기 때문.

화면이 없는 비즈같은 경우 1~2시간을줌 업무의 복잡성에 따라 시간을 +


6. 업무관리

업무를 효율적으로 관리하기 위해 구글 스프레드 시트를 이용하거나 Trello 사용 추천




7. 이슈트레킹 문서 작성

개발만 하고 끝이 아닌듯이 개발된 화면을 고객에게 보여주고 고객의 요구사항에 맞게 반영이 됐는지 확인하는 절차가 필요함. 이때 필요한 문서가 이슈트레킹 문서

고객에게 오픈하고 수정사항이나 추가 요구사항이 올때 각 항목 별로 ID를 따서 엑셀로 따로 관리.

이것을 근거로 과도한 요구사항이나 개발건 같은경우 추가 개발비를 받거나 업무를 조율 할 수 있음.

앞서 말한대로 요구사항추적서나 이슈트레킹이 없을경우 한도 끝도 없이 추가 개발비도 못 받고 고객의 요구사항및 수정사항을 받아야할 경우가 생김.


마지막으로 ...

프레임워크및 SVN은 각 회사마다 다르기 때문에 어떤 언어와 어떤 프레임워크를 쓰느냐도 물론 중요하지만 위와 같이 기본에 충실하면 어떤 프로젝트가 망할 확률이 현저히 줄어듬.


메타의 중요성을 다시 한번 설명 하자면 철저한 메타관리를 통해 나중에 제출할 프로젝트 문서를

메타툴을 이용해 한방에 뽑아 낼 수 있음.


보통 한 프로젝트를 하면서 코딩은 30%라면 문서작성이 70%

메뉴얼및 셋팅문서를 통해 인수인계 받으려는 개발자에게 당혹스러움과 혼란스러움을 전해주면 안됨.


이것 말고도 운영체제및 데이터베이스 관리 까지 들어가면 너무 깊어지니까 이번 글은 여기서..이만

43
71
  • 댓글 27

  • 더미
    10k
    2018-08-06 11:38:27

    오 놋북으로 녹취는 신선한 발상인거 같습니다.

    0
  • 협이
    785
    2018-08-06 11:39:56

    좋은 글입니다~~

    0
  • 루체벨라
    455
    2018-08-06 11:42:00 작성 2018-08-06 11:42:14 수정됨

    놋북으로 녹취및 요즘은 아이패드 어플 같은거 설치하셔서

    녹취및 필기를 동시에 진행 할 수 있고 중요한 말은 메모해두면 그 시간까지 기록이되서 나중에 찾아보기가 더 편리함.

    0
  • 아야로
    1k
    2018-08-06 11:46:39

    자체 메타 관리툴에 관심이 가네요.

    문서로 뽑아내는 것까지 설계하신건가요?

    깊이 감명받고 갑니다.

    0
  • 루체벨라
    455
    2018-08-06 11:54:13 작성 2018-08-06 11:54:33 수정됨

    메타툴의 핵심은 소스를 젠 하기 위함이죠..

    프로젝트마다 화면성격이 다르듯 기본적으로 스탠다드 페이지를 만들어 놓고 한방에 소스를 떨구죠.

    CRUD화면을 제공 하며 화면에서 바로 컬럼을 조회할수도 있고 

    쿼리문 CRUD를 떨굴수도 있고 테이블별로 JOIN을 맺을수도 있고 



    0
  • 도라도로떠납니다
    301
    2018-08-06 13:22:10

    와 부럽습니다

    저의 팀장님이 되어주세요

    1
  • 닉닉
    264
    2018-08-06 13:23:11

    이런게 일따봉!!

    0
  • crazygun22
    136
    2018-08-06 22:44:25

    DB  설계시 제 3정규화... 매우 중요

    저 개념 모르면... 개발 비용은 급수로 늘어나고, 성능은 급수로 느려져요

    0
  • 24_26
    466
    2018-08-06 22:58:27

    이 시리즈 좀더 보고싶네영.. 말씀하신 운영체제 및 데이터베이스 관리 등등

    0
  • Mr Kim
    64
    2018-08-07 11:11:33
    이분 현장 생존 프로젝트 전문가 이시네...
    0
  • lllllllllllllll
    6k
    2018-08-07 11:22:32

    베어 그릴스

    1
  • 쏘지마여
    805
    2018-08-07 12:30:49

    어디서 퍼오신건가...

    글 이력보면 어제 jsp 처음하셨다고 글 냄기셧던데..

    0
  • 루체벨라
    455
    2018-08-07 13:28:39

    jsp는 다뤄본적이 없어서 예전에 올렸던글 수정해서 그럴꺼에요

    0
  • 쏘지마여
    805
    2018-08-07 13:56:19

    루체벨라 아아 예전에 남기셨던 글이군요 ~ 좋은 글 감사함다

    0
  • 마쓰시타
    471
    2018-08-07 14:29:35

    @루체벨라 많이 배우고 갑니다. 좋은 글 감사합니다.

    작성하신 메타툴이 혹시 공유되는 소스신지요. 저도 한번 활용해보고 싶네요

    0
  • 하두
    7k
    2018-08-07 14:47:58 작성 2018-08-07 14:48:36 수정됨

    1번은 공감합니다.

    생각하지 않는 코딩.


    0
  • 명란마요
    46
    2018-08-08 01:50:50

    너무좋아요!! 이런팁 참고하겠습니다!

    0
  • 2
    2018-08-08 17:25:11

    좋은글 감사합니다!! 메타데이터툴 제작하는데 얼마나 걸리셨나요 ....?

    0
  • 루체벨라
    455
    2018-08-08 17:34:25

    회사소유라 공유는 안되는점 죄송합니다.

    하지만 이런툴은 이미 상용화된 것도 많고 직접 만드셔도 됩니다.

    메타에대해서만 숙지하시고 하나씩 만들어가는것도 나쁘지 않습니다.

    사실 별거 없거든요 디비에 등록된것을 끌고와서 뿌려주는 단순 CRUD 입니다.

    메타툴은 프로젝트하면서 계속 업버전 시킨거라 개발공수로 따지면 두달정도되지만

    업 버전을 몇년동안 계속 해온거라 ..

    0
  • 롤플레이어원
    379
    2018-08-09 09:31:07

    일 잘하시네요.

    멋지십니당

    0
  • 라모네기사
    37
    2018-08-09 12:49:52

    꿀팁인거 같습니다. 감사합니다. 잘 봤습니다.

    0
  • 정보정보
    55
    2018-08-09 21:34:40

    대단하십니다.. 이렇게 일해야하는데 ㅠㅠ

    0
  • markman
    86
    2018-08-10 12:26:03

    좋은 글 감사합니다.

    메타데이터까지는 아니더라도 네이밍규칙은 항상 고민거리입니다.

    0
  • unclebab
    2018-08-10 17:39:45

    녹취보다는 그날 회의록을 작성해서 모두의 동의를 얻는 방식을 추천합니다... 상대방 동의 없는 녹취는 불법인데다가 사람은 기본적으로 녹취에 대한 반감이 있습니다. 고객을 설득하기 위한 것이지 고객과 싸울 필요까지는 없으니까요.

    0
  • ramisiel
    2k
    2018-08-10 17:46:16

    저도 1번은 극공감

    업무 또는 화면 기능 생각하고 코딩좀...

    진짜 남을 위해 보기편하게 개발좀!!!

    배려하는 입장좀 가집시자ㅎㅎ

    0
  • 우루부루구루
    472
    2018-08-11 16:48:42

    좋은 글 감사합니다.

    아직 개발자 중 1인이지만 겪은 프로젝트를 떠올려 보면 좋은 조언이라 생각합니다.

    0
  • 라인하르트
    142
    2018-08-27 23:24:12

    아름답습니다... 배우고싶네요...

    0
  • 로그인을 하시면 댓글을 등록할 수 있습니다.