软件工程课程设计_第1页
软件工程课程设计_第2页
软件工程课程设计_第3页
软件工程课程设计_第4页
软件工程课程设计_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件工程课程设计 教学提示:以案例为基础介绍软件开发技术;内容可以穿插到其它章节中讲述 教学目标:了解软件开发过程,掌握软件开发各个阶段的任务几文档。软件工程课程设计的主要内容为以下几个方面:通过开发一个具体软件的过程,掌握现代软件工程中的部分管理和开发方法;开发一个基于Web的分布式应用软件;使用UML对软件进行需求和设计建模;遵循软件项目管理的相关原则。 课程简介 1. 课程设计目的与要求课程设计是使学生融会贯通本课程所学专业理论知识,完成一个较完整的程序设计与计算和程序调试过程,以加深学生对所学理论的理解与应用,进一步认识和熟悉程序设计中的语句的应用和用途,了解解决实际问题的一般过程,培

2、养学生综合运用基础理论知识和专业知识去解决实际应用设计问题的能力。通过综合性课程设计训练,使学生达到以下的目的和要求:(1) 结合该课程中所学的理论知识,按要求独立设计方案,培养学生独立分析与解决问题的能力;(2) 学会查阅相关手册和资料,通过查阅手册和资料,进一步熟悉常用方法的用途和技巧,并掌握这些方法的具体含义和如何使用这些方法解决实际问题;(3) 掌握综合性程序设计的基本过程;(4) 掌握综合性程序的调试技术,熟悉常用调试方法的使用;(5) 认真撰写总结报告,培养严谨的作风和科学的态度.。2. 课程设计的内容开发一个小的系统,利用所学的软件工程知识,写出所开发软件的可行性报告、需求规格说

3、明书、概要设计说明书、详细设计说明书,并利用有关开发语言进行代码实现。相关文档模版可参考各章相应的内容。提交的文档的要求:(1)设计方法自选;(2)以每人为单位交课程设计报告(电子版、打印稿各一份);(3)电子版文件以学号命名,上传至指定地址。3. 项目实习课程设计实行分组实践的方法,首先组成3-5人的开发小组,然后选择项目题目,选择的方式有以下两种:1) 指定题目开发小组可以选择指导教师制定的的题目。2) 自选项目题目开发小组也可在指导教师的批准下可以自选题目。选择后包指导教师批准方可开始下一个阶段的工作。4. 前导实践性知识各开发小组必须具有以下知识结构:(1) 软件工程相关知识;(2)

4、程序设计技能;(3) 计算机网络知识;(4) 数据库实用技术。5. 开发小组人员组成各开发小组由3-5人组成,分别担任以下角色:分析员、开发人员、测试人员、管理者和其它角色(课程开发员、图形设计员、系统管理员、技术文档编写员、工具专家等)。在一周内由课代表把分组名单和分组编号交上。6. 作业形式(1)需求分析报告、用户手册、设计文档、测试文档等主要文档。(2)提交UML需求和设计模型。包括用例图、顺序图、类图、状态图、活动图、组件图、配置图。(3)提交程序代码:编程语言和工具自选。7. 考核依据(1)所要求的文档是否齐全及其质量。(2)UML模型。(3)软件功能、界面和质量。(4)是否按时完成

5、。10. 要求(1)在规定时间内上交;(2)作业均以电子文档的形式提交,所有代码、文档放在一个压缩文件中,文件名是“专业+第x组”;(3)压缩文件中要包括一个文本文件,内容是本组成员名单和学号;(4)代码、文档各放一个目录下;(5)上机检查。11. 参考资料软件工程相关资料;UML、Rational Rose相关资料;JavaScript动态网页设计相关资料;JSP高级编程相关资料;Microsoft Project相关工具指南。12. 实习环境可以在实验室实习或提前和指导教师预约自选实习时间和地点。14.2 课程设计参考案例音像社信息管理系统为了加深读者对前面章节所介绍知识的理解,本节通过两

6、个实际的系统来说明使用结构化开发方法和面向对象技术开发方法的过程。首先选取的实例是音像社信息管理系统开发过程,具体介绍如何使用结构化方法;然后选择汽车租赁系统的开发过程作为实例具体讲解如何使用面向对象软件工程过程。14.2.1 开发前的准备1分组工作完成一个软件工程项目最具挑战性的任务之一是分组工作。不管在什么环境中,人员之间的有效协作往往具有挑战性。以下是我们应该记住的相互协作的一些因素。在软件工程组成员认真研究了最初问题的陈述之后,这个问题被分成更小的几块并交给每个小组成员负责。除非软件工程小组足够大,否则不可能有冗余的任务分工。因此整个小组依赖于每个小组成员严格守时地提交他所负责的部分。

7、因此,为方便你的小组同事,认真对待项目截止日期是很关键的。 另一个应该注意的问题是,人类在兴趣、技能和职业道德上有着巨大的差异,可能某个小组成员对项目开发充满热情,而另一个小组成员对软件工作的兴趣不大。这种差别可能导致小组中产生冲突,这时指导教师应该介入以公平地解决问题。理想情况下,每个工作伙伴应从事并完成项目等量的任务分工。另外一个挑战是人员间的交流。定期地与你的小组成员会面,做出关于项目的协作决定,推动有效的对象间通信,这是非常重要的。为了尊重每个小组同事的时间,举行高效率的小组会议是很重要的。2. 创建项目小组软件小组的构成对项目的成功非常重要,为了有效地工作,小组成员要做到以下几点:(

8、1)为了整个小组的利益每个小组成员应按期交付每个成品。(2) 如果你没有足够的能力和兴趣来干这个项目,应该立即向你的小组说明这种情况。(3)定期与小组成员会面。(4)每次小组会议都应创建一个议程。(5)轮流负责主持小组会议。每个开发小组应建立一个每周会议时间表,如果指导教师允许的话,会议应安排在课堂上进行。如果可能,每个小组应至少有4名学生。应当根据专长安排学生到每个小组,以保证每个小组有多种技能的成员。 14.2.2 描述企业概图1. 背景描述目的是要确定建立新系统的必要性和可行性。 目前由于人们生活水平的不断提高,对文化娱乐的要求也不断提高,音像租赁的生意越 来越好。原先的人工管理方式越来

9、越不能满足要求。为了适应这一变化,有必要建立一个音像租赁管理系统,由于音像社的管理人员一般都具备操作计算机的能力,而且音像社的经济效益也不错,另外,此系统是一个小型信息管理系统,花费不大。所以建立新系统是可行的,可以立项的。立项以后就可以开始系统调研了。 2. 系统调研 系统调研分两步进行。第一步是初步调研,主要调查租赁店的规模,即租赁的音像商品 数目、音像制品编码方式、职工的文化水平、租赁店的主要业务、顾客流量、顾客的租盘凭证等。第二步是详细调研。包括组织结构调研和业务流程调研。业务流程调研时对组织现行的业务进行调研,包括所有部门的处理业务、具体任务和完成顺序,并用管理业务流程图表示出来。经

10、过系统调研,得到音像商店的租赁音像制品业务流程图如图14-1所示。 可以看出,音像社信息管理系统主要有以下几项功能。 (1)音像制品库的录入与维护:记账员负责根据采购员的入库单进行音像制品的录入,并且对于过期或损毁的音像制品进行注销处理,即从库存音像制品台账上删除它的记录。 (2)音像制品租还功能:租盘时,记帐员根据租盘单进行租盘,并给顾客开押金单,让顾客交押金,然后付盘和押金单给顾客。还盘时,顾客将盘和押金单(还盘单)给记账员,记账员根据还盘单进行还盘,并计算出应退押金,给顾客开出应退押金单,退给顾客押金。 (3)查询功能:音像店经理根据库存音像制品台账和租赁音像制品台账,查询音像制品库存和

11、租盘情况。 (4)统计功能:可以盘点库存音像制品和租出音像制品情况,还可进行资金统计,以得到购买音像制品的费用、押金总数和租金总数等。 3. 可行性研究 在调研的基础上,进行可行性研究,编写出可行性研究报告。14.2.3 系统分析 1 数据流图 (1)顶层数据流程图 如图14-2所示,该图的外部实体有三个,分别是租赁店管理人员、顾客和系统时间,外部实体用矩形框表示,框中标出的是数据流名称。箭头表示数据流,其指向是数据流的流向,箭头上方标出的是数据流名称,例如,音像制品管理要求数据流,是从租赁店管理人员流向音像制品租赁系统。内部带有横线的矩形框表示对数据流的加工,框内标有加工名称,例如音像制品租

12、赁系统。顶层图将系统抽象为一个加工。 音像制品和租赁系统从租赁店管理人员接受音像制品管理要求或查询要求或盘点要求,从系统时间接受当前日期(因为租盘、还盘、盘点的需要),经过处理后,将应付押金单或应退押金单返回给顾客,将盘点表、租赁盘点表、音像制品情况、租盘情况和资金统计表返回给租赁店管理人员。 (2)0层数据流图 顶层数据流图绘制完成后,对于顶层图的加工进行分解,得到 0层数据流图如图14-3所示。0层数据流图有4个加工,分别是检查有效性、处理要求、查询处理和盘点处理,编号依次为1、2、3和4。检查数据有效性接受数据流音像制品管理要求、查询要求和统计要求,经过处理后分别输出数据流有效的音像制品

13、管理要求、有效的查询要求和有效的统计要求给处理要求、查询处理和盘点处理3个加工。再经处理后,输出6个数据流。 (3) 1层数据流图 将0层的各个加工再进行进一步分解,得到1层数据流图。例如0层图的2号加工分解后得到1层数据流图,如图14-4所示。 2号加工分解成5个子加工,编号分别为2.1、2.2、2.3、2.4和2.5。进行加工时有时要把数据存储到文件中或数据库的表中,图中用扁平的带竖线的右开口表示数据存储。流向数据存储的数据流可理解为写入文件或查询文件,从数据存储流出的数据流可理解为从文件读数据或得到查询结果。另外,与数据存储之间的数据流不用命名。例如,租盘加工从音像制品文件中查询音像制品

14、是否已租出,如果未租出,将租盘记录写入到租盘文件中。2. 数据字典 数据流描述 数据流编号:D01 数据流名称:音像制品管理要求 简述:音像制品的入库、注销、租还情况 数据流来源:租赁店管理人员 数据流去向:处理类型选择模块 数据项组成:入库单租盘单还盘单注销单 数据流量:高峰流量: 说明:入库单租盘单还盘单注销单表示可以选择入库单、租盘单、还盘单和注销单中的一项。 数据流名称:租盘单简述:顾客每次租盘情况 数据流来源:处理类型选择模块 数据流去向:租盘模块 数据项组成:音像制品流水号 + 音像制品编号顾客姓名租出日期租出期限押金 数据流量:600 次 / 月 高峰流量:10000 次 / 月

15、 数据存储的描述数据流编号:D04 数据存储编号:F01 数据存储名称:音像制品表 简述:记录入库音像制品的数据 数据存储组成:音像制品编号 + 音像制品名称音像制品类别价格进货日前日租金押金租出否关键字:音像制品编号 相关联的处理:P2-2 、 P2-3 、 P2-4 、 P2-5 、 P3-2 、 P4-2 说明:关键字是惟一确定文件中建立的数据项或数据项的组合。 数据存储编号:F02 数据存储名称:租赁表 简述:记录音像制品的租赁数据 数据存储组成:音像制品流水号音像制品编号顾客姓名租出日期租出期限归还日期已收押金退还押金应收租金 关键字:音像制品流水号 相关联的处理:P2-4、P2-5

16、 说明:由于其他数据项或数据项的组合不能作为关键字,所以增加音像制品流水号作为关键字,音像制品流水号就是音像制品租出的顺序号。 加工逻辑的描述 加工编号:P2-1 加工名称:处理类型选择 加工逻辑:根据音像制品管理要求选择处理类型 CASE OF CASE(1)新盘入库,输入入库单 CASE(2)注销音像制品,输出注销单 CASE(3)租盘,输出租盘单 CASE(4)还盘,输出还盘单 ENDCASE 说明:在此采用结构化语言来表示数据流图中的“加工”中较为复杂的逻辑判断功能。 意思是如果情况为(1),则新音像制品入库,输出入库单 ; 入库情况为(2),则注销音像制品,输出注销单;如果情况为(3

17、),则租盘,输出租盘单;情况为(4),则还盘,输出还盘单。 外部实体的描述 外部实体的编号:S01 外部实体名称:租赁店管理人员 简述:管理要求的输出、查询、盘点和统计结果的输入 输入的数据流:音像制品情况,租盘情况,音像制品入库点表,租赁盘点表,资金统计表 输出的数据流:音像制品管理要求,查询要求,统计要求 外部实体的编号:S02 外部实体名称:顾客 简述:押金单,应退押金单的输入 输入的数据流:押金单,应退押金单 输出的数据流: 加工编号:P 2-4-1 加工名称:检查音像制品库存 出加工逻辑:根据租盘单上的音像制品编号,与音像制品文件中的记录进行比较,查询该盘是否未借,如果未借出,则填写

18、租盘记录加工编号:P 2-4-2 加工名称:办理租盘 加工逻辑:根据还盘单,对于音像制品文件该音像制品的相应记录的租出否数据项的值置为 “ False ”。从租盘文件中取出该盘记录,根据归还日期和租出日期计算出租出天数,计算应退还押金。 14.2.4 系统设计 在系统分析的基础上就可以进行系统设计了。系统设计就是将系统需求转换为系统的总体结构,得到系统的功能结构图,然后再进行系统的详细设计,即模块处理过程设计、数据库设计、代码设计、系统运行环境设计和输入 /输出设计。 1.系统的总体设计 功能结构图(层次图)是用来描述系统模块功能分解的一种图形工具。功能结构图的每个矩形框表示一个功能模块。矩形框间的连线可以看作调用关系。 由音像制品租赁管理系统的系统分析,可以画出其功能结构图,如图14-5所示。 新系统的功能划分为录入、租还、查询和统计等 4项功能。相对应有如下4个模块。(1)录入模块用于录入入库单和修改纪录,它根据采购员送来的入库单,纪录每次购买音像制品的入库数据。对于

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论