0%

Programming cycle

Summary of my experience of developing an tools/code.

Request analysis

Know your expected objective and motivation:

  • Why do you want this tool?
  • Aims and functions you want.
  • Benefits of the tool.

Research plan

Plan your work in detail:

  • Literature review
  • Software developing/modification: split the task into smaller functions, design before coding, make sure add unit test for each individual functions
  • Verification using numerical experiments
  • Validation (benchmarking) and demonstraction of benefit
  • Analysis performance improvements (CPU and memory usage)

Final Report

Documentation:

  • theory of the tool
  • specific details regarding the implementation
  • evidence of its correct implementation and validation