多项选择题

软件的开发工作包括()。

A.软件设计
B.调研并写出功能说明书
C.程序的编写与文档的编写
D.维护
E.软件测试