多项选择题

A.重新编写程序
B.反向工程
C.修正设计和程序说明
D.正向工程