软件工程--概论

什么是软件?

软件是计算机系统中与硬件相互依存的另一部分,包括程序,数据以及其相关文档的完整集合

什么是程序?

程序数按事先设计的功能和性能要求执行的指令序列
数据:是使程序能正常操纵信息的数据结构
文档:是与程序开发,维护和使用有关的图文材料

软件的特点?
1.软件是一种逻辑实体,不是具体的物理实体,具有抽象性
2.软件的生产与硬件不同,在他的开发过程中没有明显的制造过程
3.软件的运行和使用中,没有硬件那样的机械磨损,老化问题
4.软件的开发和运行常受到计算机系统的限制,对计算机系统有不同成读的依赖性
5.软件的开发至今尚未完全摆脱手工艺的开发方式
6.软件本身是复杂的
.实际问题的复杂性
.程序逻辑结构的复杂性
7.软件成本相当昂贵
8.社会因素(盗版)

软件的分类?

一、按功能
1.系统软件
。操作系统
。数据库管理系统
。设备驱动程序
。通信处理程序
2.支撑软件
。文本编辑程序
。文本格式化程序
。磁盘向磁带向数据传输的程序
。程序库系统
。支持需求分析,设计,实现,测试和支持管理的软件
3.应用软件
。商业数据处理软件
。系统仿真软件
。计算机辅助教学软件
。工程与产品科学软件
二、按规模

三、按工作方式
1.实时处理软件
2.分时软件
3.交互式软件
4.批处理软件
四、按服务对象的范围
1.项目软件:接受某个特定客户的委托,有一个或多个开发机构在特定要求下开发的软件
2.产品软件:有软件开发机构开发,直接提供给市场,为用户服务,以营利为目的
五、按使用频度
1.一次性使用(人口普查)
2.频发使用(产品)
六、按软件失效的影响
1.高可靠性软件(航空,金融)
2.一般可靠性软件
软件的发展阶段?
1.程序设计阶段(50至60年代)
2.程序系统阶段(60至70年代)
3.软件工程阶段(70年代以后到现在)

软件工程过程的特性?
1.易理解性
2.可见性
3.可支持行
4.可接受性
5.可靠性
6.健壮性
7.可维护性
8.速度

软件工程步骤?

1.制定计划
。确定要开发软件系统的总目标
。给出功能,性能,可靠性以及接口等方面的要求
。完成该软件任务的可行性研究
2.需求分析和定义
。对待开发软件提出的需求进行分析并给出详细的定义
。编写软件需求说明书
3.软件设计
。概要设计。把各项需求转换成软件的体系结构。
4.软件测试
。单元测试,查找各模块在功能和结构上存在的问题并加以纠正
。组装测试,讲已测试的模块按一定顺序组装起来

发布了38 篇原创文章 · 获赞 8 · 访问量 3806

猜你喜欢

转载自blog.csdn.net/dingmengwei/article/details/103145841