今天继续《构建之法》!
软件的特殊性
(1)复杂性:大型软件完全不是一个人能完全统合得过来得
(2)不可见性:代码的实际运行并不是完全可见,只能通过一些事件判断,错误难以排查更难以重现
(3)易变性:人们对软件期待过高,认为软件可以轻易修改,但正因为软件的复杂性,正确修改它其实是超级麻烦的事
(4)服从性:软件要服从于硬件和用户的各种需求,有时候问题并非出现在软件上
(5)非连续性:软件系统的特性需要人为规定,但这会使得其他人难以理解
软件工程的目标
创造让用户满意的软件
今天继续《构建之法》!
软件的特殊性
(1)复杂性:大型软件完全不是一个人能完全统合得过来得
(2)不可见性:代码的实际运行并不是完全可见,只能通过一些事件判断,错误难以排查更难以重现
(3)易变性:人们对软件期待过高,认为软件可以轻易修改,但正因为软件的复杂性,正确修改它其实是超级麻烦的事
(4)服从性:软件要服从于硬件和用户的各种需求,有时候问题并非出现在软件上
(5)非连续性:软件系统的特性需要人为规定,但这会使得其他人难以理解
软件工程的目标
创造让用户满意的软件