小编正在快马加鞭的赶来~ 结束了第一遍机房收费系统,算是结束了VB学习阶段,进入下一个软件工程与C/S的学习。怀着激动的心,小编开始了第一个项目——软工视频及文档,小编觉得这个项目进行的还不错,没有拖拖拉拉的,至少每天都有计划的在进行着。学习已经步入正轨啦~好了,话不多说,咱们来认识一下新朋友——软件工程吧!
今天我们主要认识一下软件以及软件危机的内容:
一、软件:
1.软件的概念:
软件是计算机系统中与硬件相互依存的另一部分,包括程序,数据以及其他相关文档的完整集合。
(1)程序是实现设计的功能和性能要求执行的指令序列。
(2)数据:是使程序能正常操纵信息的数据结构
(3)文档:与程序开发,维护和使用有关的图文材料
2. 软件的特点:
-
逻辑实体,抽象性
-
没有明显的制造过程
-
没有老化现象
-
开发和运行受计算机系统限制,对系统有依赖性
-
开发未完全摆脱手工艺开发方式
-
复杂:实际问题复杂性,程序逻辑结构复杂性
-
成本相当昂贵
-
涉及到 会因素(如:版权问题)
3.软件的分类:
(1)按功能分:三类:
1>系统软件:
-
操作系统
-
数据库管理系统
-
设备驱动程序
-
通信处理程序等
2> 支撑软件:
-
文件格式化程序
-
磁盘向磁带向数据传输的程序
-
程序库系统
-
支持需求分析、设计、实现、测试和支持管理的软件
3> 应用软件:各种应用软件(各行各业的)
(2) 按规模划分:微型,小型,中型,大型,甚大型,极大型
类别 | 参加人员 | 研制期限 | 源程序行数 |
微型 | 1 | 1-4周 | 0.5k |
小型 | 1 | 1-6月 | 1k-2k |
中型 | 2-5 | 1-2年 | 5k-50k |
大型 | 5-20 | 2-3年 | 50k-100k |
甚大型 | 100-1000 | 4-5年 | 1M(=1000k) |
极大型 | 2000-5000 | 5-10年 | 1M-10M |
(3)按工作方式分:
-
实时处理软件(立即处理和响应)
-
分时软件(多用户,时间片)
-
交互式软件(人机)
-
批处理软件(任务排好序,轮流执行)
(4)按软件服务对象分:
-
项目软件(应需要)
-
产品软件(盈利目的,推向市场,服务大众)
(5)按使用的频度:
-
一次使用
-
频繁使用
(6) 按软件失效的影响划分:
-
高可靠性软件
-
一般可靠性软件
4. 软件发展阶段:
-
程序设计阶段 ——50-60年代
-
程序系统阶段 ——60-70年代
-
软件工程阶段 ——70年代以后(主要解决软件危机)
二、软件危机:
1.软件危机:指的是软件开发和维护过程中遇到的一系列严重问题。
2.软件危机的表现:
-
产品不符合用户实际需要
-
生产率低下
-
质量差
-
成本和进度预估不准确
-
可维护性差
-
文档资料不完整
-
价格昂贵
3.软件危机产生的原因:
-
软件是逻辑部件且规模庞大,难以检验开发的正确性
-
开发的管理困难
-
忽视需求分析的重要性以及轻视软件维护
-
无统一的软件质量管理规范
-
开发和维护费用上升
-
开发技术和工具落后
-
生产方式落后
4.解决软件危机:工程化思想
(1)用分阶段的生存周期计划严格管理
(2)坚持进行阶段评审
(3)实行严格的产品控制
(4)采用现代程序设计技术
(5) 结果应能清楚地审查
(6)合理安排软件开发小组的人
(7)承认不断改进软件工程实践的必要性
—————————————————————–精彩继续,敬请期待~
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!