1.软件定义:
是一系列按照特定顺序组织的计算机数据和指令的集合
2.软件开发模式
瀑布模型:需求分析--系统设计--程序设计--编码--运行与维护
快速原型模式:快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足客户的要求,开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品。
螺旋模式:制定计划--风险分析--客户评估--螺旋模型强调风险分析
如果执行风险分析将大大影响项目的利润,那么进行风险分析毫无意义,因此,螺旋模型只适合于大规模软件项目。
软件开发人员应该擅长寻找可能的风险,准确地分析风险,否则将会带来更大的风险
迭代模型:
1.降低了在一个增量上的开支风险。如果开发人员重复某个迭代,那么损失只是这一个开发有误的迭代的花费。
2.降低了产品无法按照既定进度进入市场的风险。通过在开发早期就确定风险,可以尽早来解决而不至于在开发后期匆匆忙忙。
3.加快了整个开发工作的进度。因为开发人员清楚问题的焦点所在,他们的工作会更有效率。
4.由于用户的需求并不能在一开始就作出完全的界定,它们通常是在后续阶段中不断细化的。因此,迭代过程这种模式使适应需求的变化会更容易些。因此复用性更高
3.软件质量
功能性 可靠性 易用性 效率 维护性 可移植性
4.影响软件质量的因素
1.理解性
2.必需性
3.可修改
4.四沉余
5.简洁性
6.可测性
7.跟踪行
8..范围定义
4.软件分类
4.1
根据应用场景分类
工具分类,游戏型软件分类,媒体型分类,电商型软件等
4.2根据软件结构分类:
单机版软件,分布式软件
4.3单机版软件
office,弘景等
4.4c/s架构软件
客户端需要安装专门软件,如QQ 微信等
b/s架构软件
客户端为浏览器,如百度,hao123等