2004년 5월 19일 수요일

실용적인 프로그램의 제작

top down 방식
1. requirement를 분석한다.
2. README file을 작성하여 input, output, environment, 가정 등을
   기술한다.
3. 코딩한다.
4. test tool을 작성한다.
   4.1 functional test
       각 기능의 동작 유무 검사 - test driven development
   4.2 stress test
       load를 많이 줄 때 프로그램이 죽는 지 검사
       (memory leak 등 check) - valgrind, efence
   4.3 performance test
       수행시간, 메모리 사용량 등 검사 - time, getrusage
   4.4 profiling
       hot shot, bottle neck을 찾는 다. - gprof

5. library로 묶을 수 있을 만한 것들을 찾는 다.
6. refactoriing 한다.
7. TODO list를 작성한다.
8. CVS로 source 관리를 한다.
9. Bug tracking tool을 사용한다.

bottom up 방식
1. I/O, malloc 등의 wrapper function, class를 제작한다.
2. log를 남기는 법을 생각해본다. (log level별로 분류)
3. 상속관계(class hierarchy, inheritance, virtual function)
4. error handling mechanism을 구상한다.
   - fprintf, try - catch,

댓글 없음:

댓글 쓰기