欢迎来到天天文库
浏览记录
ID:35627213
大小:458.00 KB
页数:23页
时间:2019-04-03
《软件工程课程设计-软件工程开发方法》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、软件工程课程设计数计学院刘福明目的与要求目的:通过本课程设计实践,能进一步掌握软件工程的基本概念、原理、技术和方法;通过开发一个完整的小型系统(或程序),初步掌握开发软件所需的需求分析能力、功能分解能力、程序设计能力、代码测试及调试技能;学习编写软件开发文档,为未来的软件开发打下良好的基础。要求:通过布置具有一定难度(或规模)的软件开发、设计题目,要求学生利用学到的软件工程知识和相关方法、技术,根据题目的难易程度,分组或独立完成系统分析、设计、编程及测试,最后按格式和要求写出并打印课程设计报告。软件工程
2、开发方法生命周期方法学:从时间角度对软件开发和维护的复杂问题进行分解,把软件生命的漫长周期依次划分为若干个阶段,每个阶段有相对独立的任务,然后逐步完成每个阶段的任务。前一个阶段任务的完成是开始进行后一个阶段工作的前提和基础,而后一阶段任务的完成通常是使前一阶段提出的解法更进一步具体化,加进了更多的实现细节。软件工程开发方法生命周期方法学软件生命周期每个阶段及其解决的关键问题软件工程开发方法瀑布模型生命周期方法学软件工程开发方法三种描述设计的图形工具:层次图——用来描述软件层次结构程序流程图——是历史最悠
3、久、使用最广泛的描述软件设计的方法盒图——是一种很好的支持结构化程序设计思想的图形工具软件工程开发方法描述设计的图形工具应用实例正文加工系统的层次图软件工程开发方法描述设计的图形工具应用实例程序流程图相应的盒图软件工程开发方法编码时注意的问题:全局变量——应该“有限制地使用全局变量”。使用全局变量过多,会降低程序的清晰性;降低函数的通用性;滥用全局变量会造成程序的混乱函数——“工欲善其事,必先利其器”。我们在编写大型程序时,要善于利用已有的函数,以减少重复编写程序段的工作量软件工程开发方法编码时注意的问
4、题:风格——全局变量使用具有说明性的名字,局部变量用短名字——表达式和语句采用一致的缩进风格、使用表达式的自然形式、分解复杂的表达式、当心具有副作用的运算符——神秘的数最好要命名,利用语言去计算对象的大小——除了定义符号常量外,最好避免使用宏——注释时要注意不要大谈明显的东西,要给函数和全局数据加注释软件工程开发方法测试和调试方法:测试是在认为程序能工作的情况下,为发现其问题而进行的一整套确定的系统化的实验——白盒测试相当于把程序看成装在一个透明的白盒子里,也就是完全了解程序的结构和处理方法。它根据程序
5、内部的逻辑来设计测试用例,检查程序中的逻辑路径是否都按预定的要求正确地工作。常用的技术包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖等。软件工程开发方法测试和调试方法:测试是在认为程序能工作的情况下,为发现其问题而进行的一整套确定的系统化的实验——黑盒测试相当于把程序看成一个黑盒子,不考虑内部结构和处理过程。它根据规定的功能来设计测试用例,检查程序的功能是否符合要求。常用的技术包括等价类划分和边界值分析等。软件工程开发方法测试和调试方法:调试(即排错)是在已知程序有问题时要做的
6、事情——寻找熟悉的模式——检查最近的改动——不要两次犯同样的错误——现在排除,而不是以后——把你的代码解释给别人——分而治之,搜索局部化实践要求课程设计不仅是对程序设计能力的综合锻炼,更是对团队合作、软件开发与项目管理过程的训练。要求以团队合作形式,根据选题的难度,每组2-3人。在确定题目后,确定小组长及每个人的分工,并制定项目开发进度表;课程设计按照软件项目的开发过程进行。分以下几个阶段进行:开题、系统分析、系统设计、系统编码实现、系统测试、系统评价与验收。实践要求1.开题确定课程设计题目,并制定开发
7、进度表。题目可来自指定的参考题目,也可自由选题。根据题目的难度,分为若干小组,每小组2-3人,在确定题目后,确定小组长及每个人的分工,并制定项目开发进度表,包括系统分析、设计、实现、测试等的时间段。实践要求2.系统分析对所确定的题目,分析用户的综合要求、数据要求,导出系统的逻辑模型。分析完成后,给出系统需求分析规格说明书。实践要求3.系统设计对所确定的题目从问题需求、数据结构、难点及关键技术等方面进行分析,形成初步的系统设计方案。系统设计完成后要提交系统设计说明书(模板见下页)。系统设计说明书模板系统设
8、计说明书选题名称:任课教师:小组长姓名(学号):小组成员姓名(学号):一、题目(问题)描述二、问题分析三、系统设计1.软件(程序)总体结构2.界面设计3.重要数据的数据结构设计4.函数设计四、难点及关键技术分析五、初步测试计划六、初步进度安排七、分工实践要求4.系统实现根据初步的系统设计与分析结果,对系统编程实现。这期间,成员之间的沟通与讨论是非常必要的。讨论的内容主要有:编程规范与约定(如变量名的命名法则)、接口约定、问题及系统设计的变更
此文档下载收益归作者所有