第一章:概论
开发过程:
一个简单的程序?一个满足各种功能的应用软件?一个能保证维修的软件服务。
软件=程序+软件工程
软件企业=软件+商业模式
软件开发的不同阶段:玩具阶段(纸飞机)?业余爱好阶段(氢气球)?探索阶段(实验飞机)?成熟的产业阶段(民用飞机、航空业)
????????????写程序练习数据结构/算法?用Javascript、ASP.NET、Ruby写网站?钻研新技术、应用新技术创新?银行软件系统,搜索引擎,操作系统
软件的特殊性:
- 复杂性Complexity 。代码、文件量巨大,模块之间有各种隐性或显性的依赖关系(且随程序规模的增长指数式增长),而软件工程师的阅读能力并不异于常人。
- 不可见性 Invisibility。 工程师无法知道程序即源代码是如何在具体的机器上运行的。即使商业软件在出错时会留下痕迹(错误代码,大致目标代码位置,错误信息),但无法完整重现。
- 易变性
- 服从性
- 非连续性
?
?
初步掌握软件工程的要求:
- 研发符合用户需求的软件。
- 通过一定的软件流程在预计的时间内发布足够好的软件。
- 并通过数据和其他方式展现所开发的软件是可以维护和继续发展的。
时间: 2024-10-09 21:46:16