单项选择题

软件生存周期的正确顺序是______。

A.软件设计、系统与软件需求定义、制定计划、编码和单元测试、集成和系统测试、运行和维护
B.系统与软件需求定义、软件设计、制定计划、编码和单元测试、集成和系统测试、运行和维护
C.制定计划、软件设计、系统与软件需求定义、编码和单元测试、集成和系统测试、运行和维护
D.制定计划、系统与软件需求定义、软件设计、编码和单元测试、集成和系统测试、运行和维护