编制程序时一般以什么作为编程依据