作业一
1.1 软件=程序+软件工程
⑴程序=数据结构+算法
⑵从需求出发,到开发需要的时间,程序、工程、软件服务、
⑶软件架构(Sottware Architecture)、软件设计与实现(Software Design,Implementation and debug)、源代码管理(Source CodeControl)、配置管理(Software Configuration Managerment)、质量保障(Quality Assurance)、软件测试(Test)、需求分析(Requirement Analysis)、程序理解(program Comprehension)、软件维护(Software Maintenance)、服务运营(Service Operation)、软件生命周期(Software life Cycle)、软件项目管理(Program Management)、用户体验(User Experience)、国际化和本地化(Globalization&Localization)
⑷软件=程序+软件工程、软件企业=软件+商业模式
⑸软件开发的不同阶段:玩具阶段--业余爱好阶段--探索阶段--成熟的产业阶段
2.2 软件工程是什么
⑴SE software engineering
⑵复杂性(complexity)、不可见性(invisibility)、易变性(changeability)、服从性(conformity)、非连续性(discontinuity)
⑶计算机理论、信息和编码理论、算法和数据结构、形式化方法、程序设计语言、计算机体系结构、操作系统、人工智能(artificial intelligene)、人机交互、软件工程。
⑷生命周期、专门领域、理论基础。
⑸BUG:用户满意度、可靠性、软件流程的质量、可维护性。
作业二P18-2
1.在第一章中看到了BUG一词,通过资料的查询和了解,现在一般是指在电脑系统或程序中,隐藏着的一些未被发现的缺陷或问题,简称程序漏洞。另外bug还有一种引申意义,用来形容某事物厉害的超乎想象。
2.在第五章中介绍的开发流程,通过这一段介绍,我的理解是对于一款软件来说,一个程序的开发流程大大的影响带后续的使用和稳定性,可以先设置线性流程,也可以写大框再改,主要根据个人习惯而定。
3.第七章论述的重视商业价值。我不理解的是这个出发点是一定要以此为主还是后续都会达到一个商业化的程度。我认为还是应该在道德基础上来出发,不能一概而论。
4.第八章中说“探询数值背后的假设”,一定要遵循用户的需求而定,不能天马行,可以通过修改和谈论来达到更完美的程度。
5.开发软件的重要性,对于前期的小型创业有多大的影响。
作业三P18-3
1.学习软件和工具软件,是通过自己搜索下载的,主观的需要,这样能更好的提高自己的工作生活效率。
2.日常使用时的BUG问题,会通过更新和反馈解决,如果有实在紧急或大问题,会考虑换一款其他类似的软件使用。
3、同款软件之间,会通过推荐的程度、适合自己的方式和是否收费来选择。
4.软件相比硬件,使用的领域有很大区别,个人认为还是得根据实际问题来选择合适的工具。