高级软件工程课程报告.doc
《高级软件工程课程报告.doc》由会员分享,可在线阅读,更多相关《高级软件工程课程报告.doc(11页珍藏版)》请在课桌文档上搜索。
1、-大学研究生课程论文题目 高级软件工程课程报告 成绩专业 软件工程 课程名称、代码 高级软件工程 06 年级 级 学 号 时间 任课教师大学研究生答题纸专业 软件工程 成绩课程名称、代码 年级 2013级 学 号 时间 2014 年 7 月高级软件工程课程报告摘 要:本门课程的前几次课是由剑飞老师代课,他主要讲了软件项目的开发流程,重点讲述了软件测试的必要性和重要性。本门课程的后半部分课时都是由黄哲学老师代课,教学的主要容是数据挖掘相关的知识。关键词:软件项目;软件测试;数据挖掘1软件工程部分. z.-本门课程的前几次课是由剑飞老师代课,他主要讲了软件项目的开发流程,重点讲述了软件测试的必要性
2、和重要性。1.1软件项目开发流程软件项目的开发流程包括以下几个部分:1需求分析2概要设计3详细设计4编码5测试6软件交付7验收8维护。在需求分析阶段,系统分析员向用户了解需求,并将细化后的需求转化为相对应的功能模块,接着开发者需要对软件系统进行概要设计,即系统设计。概要设计需要对软件系统的设计进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。在概要设计的基础上,开发者需要进行软件系统的详细设计。在详细设计中,需要描述实现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,说明软件系统各个层
3、次中的每一个程序,每个模块或子程序的设计考虑,以便进行编码和测试。在详细设计之后,编程人员就开始进行编码工作,着手实现软件项目。在进行各项测试之后,软件项目就到了交付给用户的阶段,之后就由用户进行项目验收。用户验收完毕并不是软件开发周期的终点,后续还有维护的过程,在这个阶段里,编程人员根据用户需求的变化或环境的变化,对应用程序进行全部或部分的修改。1.2软件测试方法随着软件市场的逐渐成熟,人们对软件作用的期望值也越来越高,对软件质量的要求也相应提升,软件测试的目的即是保证软件质量,因此,软件测试这一之前会被忽略的过程现在越来越受到人们的重视。软件测试领域主要有两种类型的测试方法,白盒测试和黑盒
4、测试。软件的白盒测试是对软件的过程性细节做细致的检查。它要求全面了解程序部逻辑结构、对所有逻辑路径进行测试,它是一种穷举路径测试。在使用这一方案时,测试者必须检查程序部结构,从检查程序的逻辑着手,得出测试数据。软件人员使用白盒测试方法,主要想对程序模块进行如下的检查:1对程序模块的所有独立的执行路径至少测试1次;2对所有的逻辑判定,取真”与取假”的两种情况都至少测试1次;3在循环的边界和运行界限执行循环体;4测试部数据结构的有效性。不过即使每条路径都测试了仍然可能有错误:穷举路径测试决不能查出程序是否违反了设计规,即程序本身可能是个错误的程序;穷举路径测试不可能查出程序中因遗漏路径而出错;穷举
5、路径测试可能发现不了一些与数据相关的错误。 所以白盒测试虽然深入程序部、更具有技术特征但并不是万能的,有些错误反而利用黑盒测试更容易检查出来。 黑盒测试主要是测试功能部分是否符合要求。它是一种根据软件需求,设计文档,模拟客户场景随系统进行的实际测试。这种测试技术涵盖了测试的方方面面,它主要是为了发现以下几类错误:是否有不正确或遗漏的功能;在接口上输入是否能正确的接受及能否输出正确的结果;是否有数据结构错误或外部信息访问方面的错误;性能上是否能够满足要求;是否有初始化或终止性错误。黑盒测试实际上是检查以下几点是否满足要求:1计算结果,命名等方面的正确性;2可用性,即程序是否可以满足软件的需求说明
6、;3边界条件,输入部分的边界值,试试最大最小和非法数据等等;4性能问题,如果在测试过程中发现性能问题,修复起来是非常艰难的,因为这常常意味着程序的算法不好或结构不好,因此在产品开发的开始阶段,就要考虑到软件的性能问题;5压力测试,多用户情况可以考虑使用压力测试工具;6错误恢复能力,错误处理,页面数据验证,包括突然间断电、输入脏数据等;7安全性测试,例如防火墙、补丁包、杀毒软件等;8兼容性,不同浏览器,不同应用程序版本在实现功能时,希望有着理想的兼容性。1.3软件工程课程心得 通过老师的课程,我了解了软件项目开发的完整流程,在学习之前我错误的认为软件项目开发完成交付给用户之后就算得上是软件项目的
7、结束了,学习之后才知道,后续还有维护这一重要的过程,另外老师的课程也让我认识到了软件测试这一过程在软件开发整个环节中的重要作用,它是软件质量的保证,是我们从软件开发刚开始就需要重视的环节。2数据挖掘部分 本门课程的后半部分课时都是由黄哲学老师代课,教学的主要容是数据挖掘相关的知识。2.1数据挖掘简介我们生活在一个被称作是大数据”的时代,随着计算机网络的迅速发展,手机等移动设备的快速普及,使得信息的传播速度越来越快,信息数据的量呈现出爆炸式的增长,面对海量的信息,我们可以通过分布式的并行运算,来实现快速的检索,查询与统计等常见的数据处理功能,但却很难发现海量数据相互之间存在着的关系,无法根据现在
8、有的数据来预测未来的发展趋势。在这样的背景下,数据挖掘技术便应运而生了。所谓数据挖掘,就是从大量无序的数据中发现隐含的,有效的,有价值的,可理解的模式,进而发现有用的知识,并得出时间上的趋向和关联,为用户提供问题求解层次的决策支持能力。数据挖掘研究出现于20世纪80年代后期,是数据库研究中一个很有应用价值的新领域,是一门交叉性学科,融合了人工智能,数据库技术,模式识别,机器学习,统计学和数据可视化等多个领域的理论和技术。2.2关联模式关联模式是反映一个事件和其他事件之间依赖或关联的知识,其目的是为了生成部分数据的概要,寻找数据子集之间的关联关系与数据之间的派生关系,即在同一事件中出现的不同项之
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高级 软件工程 课程 报告
链接地址:https://www.desk33.com/p-8842.html