Problems and solutions in developing scientific software. (A) Typical statements indicating a unsystematic development approach. (B) User stories are paper cards that help to chop a programming project into smaller manageable tasks. (C) Use cases are a formal way of describing a step-by-step solution to a difficult problem. (D) A frequent release cycle provides users with incrementally improved versions of a program, allowing to react on user feedback quickly.