Needs for composing a program work: structure, content and formatting