建模能否解决软件工程的短板?
1. 软件工程现状与挑战
在当今软件领域,软件开发现状令人担忧。软件开发者群体普遍意识到,当前的软件开发更像是一门艺术而非工程过程。高质量软件如同手工制品,价格昂贵且难以批量生产,但现代用户期望获得高质量且价格合理的软件,这就要求软件开发必须迈向真正的软件工程。
软件工程面临着诸多挑战,导致其发展道路漫长。从理论层面看,软件开发缺乏被广泛接受的理论基础;从开发者角度而言,为了在市场竞争中快速推出软件,他们不愿采用复杂的理论,尤其是数学理论,因为理论的运用可能会延缓软件交付;而客户方面,他们不愿为仅以文本形式存在、难以衡量和评估的“智力成果”支付高额费用,且在软件集成前无法全面了解产品,难以评估开发投入。
2. 软件工程的有效性与质量问题
Capers Jones的研究指出,软件构建方式依旧十分原始。以下是具体表现:
| 问题类型 | 具体表现 |
| — | — |
| 预算和进度超支 | 2008年,多数软件项目面临取消、预算超支和进度延误的问题,且发布时质量堪忧。随着时间推移,维护老旧软件的程序员比例不断上升,成为软件行业的主要活动。 |
| 产品和过程创新 | 外部产品创新(新产品或改进产品)和内部过程创新(减少开发资源的新方法)的成熟度参差不齐。即使在2008年,复杂软件仍采用大量人工方式构建,质量和生产率自1977年以来几乎没有变化。 |
| 正负创新 | 敏捷技术等积极创新在小项目中有效,但在大系统中可能成为消极创新,且积极创新随时间推移可能转变为消极创新。 |
此外,软件开发还存在30年来未解决的问题,如需求规格说明初期不完整、测试效率低和测试
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



