A. 需求分析、制定计划、软件设计、程序编写、软件测试、运行维护 B. 制定计划、需求分析、软件设计、程序编写、软件测试、运行维护 C. 软件设计、程序编写、软件测试、运行维护、需求分析、制定计划 D. 程序编写、软件测试、运行维护、需求分析、制定计划、软件设计