2017-2018学年第一学期第四次作业专业:计算机科学与技术班级:17级3班学号:1701110140姓名:任亚磊作业内容:简述软件、软件工程的基本概念和特点软件:软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。其中,程序是按事先设计的功能和性能要求执行的指令序列;数据是使程序能正常操作信息的数据结构;文档是与程序开发,维护和使用有关的图文资料。软件的特点:1.软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性2.软件的生产和硬件不同,在它的开发过程中没有明显的制造过程、没有磨损3.在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题。4.软件的开发和运行常受到计算机系统的限制,对计算机系统有着不同的依懒性5.软件的开发至今尚未完成摆脱手工艺的开发方式,没有实现自动化6.软件本身是复杂的、实际问题的复杂性、程序逻辑结构的复杂性7.软件的成本相当昂贵。8.相当多的软件工作涉及社会因素。软件的分类:1.系统软件:操作系统、数据库管理系统、设备驱动程序、通信处理程序2.应用软件:商业数据处理软件、工程和科学计算软件、系统仿真软件软件的其他角度分类:a.按规模划分:微型软件、小型、中型、大型、甚大型、极大型b.按工作方式划分:实时处理软件、分时软件、交互式软件、批处理软件c.按软件服务对象的范围划分:项目软件、产品软件软件生产的发展:1程序设计时代:这个阶段生产方式是个体劳动,生产工具是机器语言,汇编语言。(1946-1956年)2程序系统时代:这个阶段生产方式是小集团合作生产,生产工具是高级语言,开发方法仍依靠个人技巧,但开始提出结构化方法。(1956-1968年)3软件工程时代:这个阶段生产方式是工程化的生产,使用数据库,开发工具,开发环境,网络,分布式面向对象技术来开发软件。(1968年至今)软件工程:软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。主要包括三个方面的内容:软件开发方法,软件过程和软件工具。软件工程的原则:1.抽象2.信息隐蔽3.模块化4.局部化5.确定性6.一致性7.完备性8.可验证性。软件开发模型:1,瀑布模型2.快速原型模型3.螺旋模型4.渐增模型5.快速原型法模型软件工程的目标是:在给定成本、进度的前提下,开发出具有适用性、有效性、可修改性、可靠性、可理解性、可维护性、可重用性、可移植性、可追踪性、可互操作性和满足用户需求的软件产品。