软件=程序+软件工程之间的关系
软件=程序+软件工程
程序=算法+数据结构
个人结论:算法和数据结构固然重要,如果一直执着于竞赛,是没办法做出软件的。
软件工程的核心部分:构建管理、源代码管理、软件设计、软件测试、项目管理
由此推论
软件企业 = 软件+商业模式
程序(算法、数据结构)是基本功,但是在算法和数据结构之上,软件工程决定了软件的质量;商业模式决定了一个企业的成败。
软件开发的不同阶段
玩具阶段
业余爱好者阶段
成熟阶段
熟的产业阶段
软件工程是什么?
软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上的过程
软件与人类制造出来的其他产品相比,有许多共性——他们都是解决某种需求的——所以说需求这件事,还是很重要的
软件开发的难点:
复杂性
不可见性
易变性
服从性
非连续性
用户满意度
可靠性
软件流程的质量
可维护性