软件工程导论(整理)
发布时间:1714549584 来源:文档文库
小
中
大
字号:
。
一、软件危机与软件工程 1、软件危机
软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。(正常、不正常运行软件都具有这种问题)
2、软件危机的原因
1)软件本身特点造成; 程序规模庞大;
程序复杂性随着程序规模的增加而呈指数上升。 2)软件开发与维护的方法不正确。 主要表现:
(a)忽视软件需求分析;
(b)认为软件开发就是写程序并使之运行; (c)轻视软件维护;
3、解决软件危机的途径:
1、组织管理:软件开发不是某种个体劳动的神秘技巧,软件开发应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。
2、方法:应该推广使用在实践中总结出来的开发软件的成功的技术和方法,并且研究探索更好更有效的技术和方法,尽快消除在计算机系统早期发展阶段形成的一些错误概念和做法。
3、工具:应该开发和使用更好的软件工具。在软件开发的每个阶段都有许多繁琐重复的工作需要做,在适当的软件工具辅助下,开发人员可以把这类工作做得既快又好。
4、软件工程包括哪7条基本原理?
-可编辑修改-
。
1. 用分阶段的生命周期计划严格管理; 2. 坚持进行阶段评审; 3. 实行严格的产品控制; 4. 采用现代程序设计技术; 5. 结果能清楚地审查; 6. 开发小组的人员应该少而精; 7. 承认不断改进软件工程实践的必要性。
5、软件开发流程?
1)、问题定义2)、可行性研究3)、需求分析4)、总体设计5)、详细设计6)、编码和单元测试7)、综合测试8)、软件维护
6、软件开发模型
瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型、rational统一过程、敏捷过程与极限编程、微软过程
二、可行性研究 1.系统流程图
系统流程图是概括地描绘物理系统的传统工具,它的基本思想是用图形符号以黑盒子形式描绘系统里面的每个部件(程序、文件、数据库、表格、人工过程等),表达信息在各个部件之间流动的情况。
2.数据流图
数据流图描绘系统的逻辑模型,图中没有任何具体的物理元素,只是描绘信息在系统-可编辑修改-
。
中流动和处理的情况。
3.数据字典
数据字典:对数据流图中包含的所有元素的定义的集合;
三、需求分析
1、需求分析目的及作用
需求分析是软件分析时期的最后一个阶段,它的基本任务是准确地回答“系统必须做什么?”这个问题。需求分析的作用是对目标系统提出完整、准确、清晰、具体的要求。
2、需求分析的过程
1)、 访谈
正式访谈:系统分析员提出事先准备好的问题。
非正式访谈:提出一些用户可以自由回答的开放性问题,鼓励被访者说出 自己的想法。
需要访问大量人员时,利用调查表访问较佳。 2)、面向数据流自顶向下求精
借助数据流图、数据字典、IPO图等,细化、完善详细的数据流图,等到各处理环节对应的功能。
3)、简易的应用规格说明技术
面向团队的需求收集法: (用户与开发者配合) 初步访谈;
开发者和用户分别写出“产品需求”; 开会讨论,各自展示需求列表;
得出一致意见,为需求列表制定小型规格说明;
-可编辑修改-
。
根据会议成果,起草完整的软件需求规格说明。 4)、快速建立软件原型
快速建立能演示目标系统主要功能的程序。 (1)第四代技术
包括:数据库查询和报表语言、程序和应用系统生成器以及其他非常高级的非过程语言,其可以快速生成可执行代码 (2)可重用的软件构件
使用一组已有的软件构件来装配原型