当前位置:文档之家› 软件工程课程设计报告-SafeHome项目报告

软件工程课程设计报告-SafeHome项目报告

软件工程课程设计报告-SafeHome项目报告
软件工程课程设计报告-SafeHome项目报告

SafeHome项目报告

组员:郑帅林郑晓东施凯凯夏跃谈小龙高凯峰

撰写人:全体组员

完成日期:2011年6月1日

+

一,需求分析

1.引言

编写目的

编写背景

参考资料

2. 任务概述

任务目标

系统及用户特点

3.假定和约束

4.需求规定

软件功能说明

对功能的一般性规定

对性能的一般性规定

故障处理要求

其他专门要求

5.运行环境规定

设备

1.引言

1.1目的

编写本文档,目的在于明确用户的需求。通过对用户需求的分析,以精确的软件架构设计,为需求建模和测试提供依据。在小组内合理分工,使小组的每一个成员能够明白项目最终的项目特点。

1.2背景

我们的研究表明,住宅管理系统市场以每年40%的速度增长。我们推向市场的首个SafeHome功能将是住宅安全功能,因为多数人都熟悉“报警系统”,所以这将更容易销售。

住宅安全检测功能应该为各种不希望出现的“情况”提供保护,如非法入侵、火灾、漏水、一氧化碳浓度超标等等。该功能将使用无线传感器监视各种情况的发生,其最主要的特色是用户远程监控住宅的情况同时户主可以编程控制住宅监控系统。系统具有一定程度的智能性,系统可以在异常情况时自动通过拨打设定的电话信息联系监控部门。

1.3参考资料

2.任务概述

2.1目标

通过设计软件工程的学习方法,主要使用visual C++技术,以Acess为数据库开发程序。全中文软件界面,操作简便明了;系统数据库初始数据的设置可支持表单格式数据输入;支持电子地图显示,能够在小区总平面图和住户房型图上实时反映系统的报警状态,可声光指示报警点地址,记录报警时间、警情类别、处警情况等;报警时能自动弹出报警对话框,具有报警语音提示和报警确认功能;具有多种记录存储:报警记录、报警确认记录、布

防记录、撤防记录、系统日志记录等;并可按住户、报警类型、报警时间、布、撤防记录、家居报警等进行分类查询等。

2.2系统(或用户)的特点

本软件主要有2个参与者,房主(用户),配置管理人员(类似房主,但扮演不同角色)。

本系统用户友好,界面简单易懂,房主可以直接进行使用,无需特殊培训。本系统适用于所有的用户,尤其适用于长期从事户外工作的用户。房主可以通过计算机或报警控制面板等多种方式同住宅安全功能系统进行交互。

一旦用户注册成功,用户只需要通过输入密码,就可已进入系统的界面,对住宅进行全程监控。本系统的远程监控系统功能强大,可以将住宅中最真实的情况动态的反应到系统界面中,满足此用户对住宅安全情况信息的需求。

配置人员主要负责对于系统参数及系统进行各项指标值的初始化配置。

(如反应时间、默认报警号、一氧化碳浓度底限值等等)。

系统的控制面板相当于用户与系统进行人机交互最主要的场所,用户可以在控制面板中输入用户设定的个人信息和需要的监控操作等等。系统中需要在用户家中配置若干烟雾检测器以检测家中是否有火灾发生,若干门窗检测器来检测是否有非法入侵的情况,若干房屋地基水位监测器用以检测住宅中是否有漏水情况的发生,同时需要具有一台可以自动连接网络计算机,它是系统与用户进行交互最主要的媒介,若干动态监测器、一个电话。

3.假定和约束

开发日期:2011-5至2011-6

本系统开发人员为6人

本系统适合市面上的所有产品

对于用户的安全以及保密方面要求较高,要求不能够被别人非法侵入本系统,窃取房主的密码破坏系统而给房主带来财产损失。

4.需求规定

4.1软件功能说明、

本系统主要有两大功能用户设置和检测报警功能

4.1.1用户设置

1、用户首次使用时需要对系统进行初始化,通过个人化的信息设置(如

密码、报警的电话号码,住宅房间基本情况)使得系统可以唯一识别

用户的住宅,为日后的检测工作提供原始数据

2、同时,系统需要支持用户在使用过成中对系统设置的修改。用户在使

用过程中可以对系统的设置进行修改,在此修改设置之后,系统可以按

照用户修改后的数据继续正常的工作。

3.倘若用户没有对系统进行初始化设置,则系统按照默认的信息依然可以

运作,但是不能对用户的住宅进行监测,由于没有将用户的住宅情况输

入系统,系统无法识别需要用户的监测操作信息。

4.1.2检测报警

1、检测是否有火灾发生,若有则向用户指定的号码发送信息或提示

2、检测是否有人非法入侵,若有则向用户指定的号码发送信息或提示

3、检测是否有一氧化碳超标的现象,若有则向用户指定的号码发送信息

或提示

4、检测是否有漏水现象,若有也给出用户提示

5、检测是否门窗已经关闭,若未关好则给出用户提示

4.2对功能的一般性规定

4.3对性能的一般性规定

4.3.1时间特性要求

检测报警功能:在检测到后立即进行反应,尽量减少用户的损失

故障处理要求

对于各种故障进行预设,设置只有用户知道的reset密码,防止系统出现异常而无法处理

其他专门要求

在进行网络连接时要注意网络的安全与加密

5.运行环境规定

5.1设备

烟雾检测器、流量检测器、传感器、电脑、网线、自动报警器、系统历史记录器(不做要求)、信号发射器

二,分析建模

1,系统功能模块

1.1登陆设置模块

1.2检测与监视模块

1.3报警模块

2,系统及各模块用例

系统总体

系统默认运作

非法入侵的用例

检测门窗是否关闭

一氧化碳气体检测处理

火灾监测--安全警报

1, SafeHome主要功能模块如下:

登录设置模块

用户只要通过控制面板和系统交互,通过输入密码登陆系统。在验证成功,登录到系统后,用户才有资格进行系统设置。

设想提供两种用户身份验证方式:

(1)通过登录窗口输入密码,系统进行判断,如果密码验证成功,则登录系统,若不成功,则提示密码错误,三次机会,若三次都错误,则发

出警报,并向主人设置的电话号码发送警报。

(2)指纹识别,在系统初次使用时,采集住人的指纹,进行设置,登录时用指纹判断,判断流程同(1)

:检测与监视模

检测模块与【信息处理单元】相互配合,各个检测器负责采集周围信息,以每秒一次的频率向【信息处理单元】发送数据,根据消息的发送先后顺序,信息被暂时存储于一个队列中,【信息处理单元】不断从队列中读取信息进行判断,每处理完一条,则从队列中删除一条消息,在消息处理过程中,一旦消息达到警情,则【信息处理单元】产生一个事件,向户主设置的电话发送警情,并发出警报,如果没有达到警报级别,则不做任何事情,【信息处理单元】继续处理下一条信息。

1、检测是否有人非法入侵

2、检测是否有火灾发生

3、检测是否有一氧化碳泄漏的现象

4、检测是否有漏水现象

5、检测是否门窗已经关闭

:报警模块

【信息处理单元】一旦检测到有警情发生,则向用户设置的号码发送警报,如果没有响应,则继续发送警报,并且发出报警声音,如果再没有响应,则需要马上报警,同时记录报警信息

用例: SafeHome总系统

如下所示,细节在设计阶段提供,总共有三个参与者,用户,数据库,各类检测器

用例:系统默认运作

主要参与者:SafeHome系统、房主

目标:在用户为进行初始化设置时依旧可以正常运作

前提条件:系统正常识别各种传感器

触发器:房主打开系统未进行设置却已离开

场景:1、房主:打开系统

2、系统:未接到任何初始化命令,进行默认操作

异常:

1、系统不能打开:房主检查相应设置是否就位

2、系统不能使用默认信息:房主通过控制面板对其进行自检

优先级:最高

何时可用:房主为设置任何信息时

使用频率:不常用,低

使用方式:通过控制面板接口

次要参与者:技术支持人员、传感器

次要参与者使用方式:技术支持人员;电话线;传感器;有线或无线接口

未解决的问题:1、默认信息如何设置

2、屋主未设置而离开则无法实现SafeHome功能,无

法提供安全保障,如何可以实现基本功能

3、此功能是否需要用户激活

4、此时SafeHome各传感器是否可以正常记录数据

5、当系统遇到异常启动等其他异常时,是否进行重启

6、当遇到停电时,是否启用备用电源

7、系统默认操作时,用户是否可以使用系统

用例图和活动图:

系统默认操作用例图

系统默认操作活动图用例:检测是否有人非法入侵

用例:检测是否有人非法入侵的检测

主要参与者:安全家居系统、房主

目标:系统通过窗户与门上传感器技术来检测是否有人非法入侵。若有,则向用户发送提示并且屋内发出提示声,以阻止非法入侵行为的继续发展。如果提示无效后,则报警。

前提条件:软件系统,各个附属传感器警报器网络通信硬件设施运行正常,以及房主的信息接收装置运转正常。

触发器:窗户与门上传感器检测到异常情况,则初步判定为非法入侵情况发生。

场景:

1,检测窗户与门上传感器检测到异常情况,并进行初步判断有人非法入侵成立。其他设备工作正常。

2,系统将会发出警报,提示非法入侵者离开,点亮危险指示灯,鸣响报警喇叭。

3,立即进行检测用户位置设置状态,立即向房主发送非法入侵的报警信号,如果房主在一定时间内没有回复,并且窗户与门上的传感器一直在发出异常信号,则直接拨打报警电话进行报警。如果房主做出了回复,则按照回复内容执行(房主可选消除警报或报警)

4,继续检测窗户与门上传感器,如果遇到相同的情况提醒用户时,当用户选择类似情况不进行警报,那么系统将进行记录,再遇到相同的情况则不进行警报。

异常:

1,用户关闭报警系统,或遇到停电等情况

2,系统附属硬件(传感器,警报器,通信设备)故障

3,软件工作异常。

4.设备之间的通信互相干扰

优先级:高优先级,优先处理。

何时有效:第一个增量。

使用频率:少。

主要参与者:安全家居系统、房主

次要参与者:安全部门、消防部门。

未解决的问题:

1,播报信息的

2,用户未反应的时间超过多少才进行自动报警

3, 如何对硬件故障进行自我检测以提高报警的准确率

4, 如何使门窗的传感器更加准确的判断是否有人入侵有没有什么判断标准

5,当房主取消报警了以后,在较短时间内遇到同样的情况,还要不要继续提醒房主

6,当系统出现故障时,要不要进行重启

用例图与活动图:

用例:检测门窗是否关闭

主要参与者:房主,门窗检测器

目标:在房主离开或者是睡觉或者是任意设置时,检测门窗是否关闭前提条件:系统已经打开,房主进行正确的设置,并且系统正常运行触发器:门窗检测器

场景:

房主:登录SAFEHOME产品的官方网站

房主:输入用户名及密码,进入系统

房主:设置报警情况,在门窗出现异常情况的时候及时向房主反馈情况房主:如果有异常情况(门窗没有关闭)房主收到报警信号

检测器:检测信号

检测器:向系统返回捕捉到的信号

异常:

房主操作失误,导致设置失误

检测器失灵

优先级:可以不实现

何时可用:房主离开房间或者房主睡觉时进行设置

使用频率:每天

使用方式:通过系统的硬件接口与系统连接

次要参与者:有关检测部门

次要参与者使用方式:电话或者电脑收到报警信号

未解决问题:

1..当房主在房内休息,且系统打开时,是否有必要进行报警检测

2.是否有必要进行报警级别的设置,比如门窗打开了一点点和门窗完全打开是否应该区分

3.当用户没有对警报做出反应的时候,系统等待多长时间进行报警

用例:一氧化碳气体检测处理:

用例:一氧化碳气体检测处理。

主要参与者:安全家居系统,房主。

目标:监控一氧化碳气体的浓度,如果气体的浓度超过系统的默认值,便认定为危险情况并发出警报,通知房主和医院或消防部门。

前提条件:软件系统,各附属传感器警报器网络通信硬件设施运行正常。

触发器:检测一氧化碳浓度超标,而其他设备无异常。

场景:1,系统检测一氧化碳浓度超标,而其他设备无异常报告。

2,系统发出警报,点亮危险指示灯,播放一氧化碳超标警告声音。

3,检测用户位置设置状态,如果显示“在家”,循环播放处理信息。若用户对警报无应答,或浓度不下降,则向消防部门以及医疗部门发送求救信息,报告危险情况。

5,检测用户位置状态,如果显示“不在家”,系统向用户移动终端打电话,发送警报信息。若没有应答,向消防部门发出求救信号,报告危险情况。

6,循环检测一氧化碳浓度正常,停止警报。

异常:

1,用户人为关闭警报系统。

2,系统附属硬件(传感器,警报器,通信设备)故障

3,软件设备工作异常。

4.报警系统工作异常

优先级:高优先级,优先处理。

何时有效:第一个增量。

使用频率:少。

主要参与者:安全家居系统。

次要参与者:户主,消防部门,医疗部门。

未解决的问题:

1,一氧化碳浓度为多少时发出相应警报

2,循环播报信息的周期应该为多少

3,从联系用户,到确定用户无应答,时间间隔为多少

4,如何对硬件故障进行自我检测以提高报警的准确率

5,当系统出现故障时,要不要进行重启如何判断是否发生故障

6,如报警发生,用户没有应答,此时应该怎么做

一氧化碳检测处理用例图

软件工程课程设计方案报告范例

西安科技大学 软件工程课程设计报告 题目:图书馆管理系统 班级:软件工程** 学号: ********** 姓名: ******* 2013年1月

目录 1绪论 (1) 2 可行性研究报告 (1) 3 需求规格说明书 (4) 4 总体设计说明书 (7) 5 数据库设计说明书 (8) 6 详细设计说明书 (9) 7 系统实现 (11) 8测试分析报告 (23) 参考文献

1.绪论 1.1 选题目的及意义 随着计算机技术的快速发展,人们对用计算机代替手工管理信息的需求越来越强烈,越来越多的计算机软件如雨后春笋般的应用于人们生产生活的各个领域,为人们提供各种各样的便利。本图书馆管理系统应用软件可以有效地解决高等院校、中小学图书馆由于藏书量增大而带来的管理问题,图书馆管理员可以更好地管理学校图书馆藏书信息,学生可以更方便地享受借书还书的服务,为更有效地学习知识提供有利的保证。 对于我来说,选择这个题目作为课程设计的题目有以下两个原因:一是因为自从上大学以来,每当在图书馆借书的时候,我都会留心观察一下图书馆管理员的那台计算机上显示的内容,久而久之,就对本系统的基本流程越来越了解,做好一个软件的前提是必须对这个软件的功能和原理非常熟悉,相比别的题目,我对这个题目更加了解;二是本学期通过学习Java程序设计和Oracle数据库课程,我觉得这个题目虽然没有那么难(涉及算法的内容很少),但也不是轻而易举就能完成的,所以我想挑战一下自己,看看自己的实现能力到底怎么样,因此决定用面向对象方法学的思想,前台用Java程序设计语言编写界面,访问Oracle数据库中的数据,完成本系统。 1.2 系统概述 本系统通过JDBC-ODBC桥实现前后台数据的联系,基本上实现了一个图书馆管理系统所具备的基本功能,本系统把使用者分为三类:超级管理员、普通管理员、读者,对三种用户分别设计了各自的主界面,以便更好的实现信息的隐藏性,超级管理员可以进行这个系统所有操作;管理员只能执行超级管理员的基本功能,查看自己的信息;读者只能查看自己的信息,对自己当前借书进行挂失和续借两种操作,查询图书馆的藏书。 2.可行性研究报告 2.1 编写目的 本报告编写目的在于研究图书馆管理系统应用软件是否可行,指出本软件开发所使用的方法和手段,并对该软件前景进行分析。 本报告的预期读者是:高等院校、中小学图书馆管理人员、程序设计人员、以及对图书馆管理系统感兴趣的爱好者。 2.2 相关背景 工程名称:图书馆管理应用软件 工程产品名称:高校图书馆管理系统应用软件 工程的组织者:西安科技大学计算机学院软件工程系 产品用户:高校图书馆、中小学图书馆; 产品的生产者:西安科技大学计算机学院软件工程062班袁震; 产品设计者:西安科技大学计算机学院软件工程062班袁震; 2.3 可行性研究的前提 本图书管理系统在功能上要求完成以下基本功能: a).读者、管理员登陆;

软件工程课程设计报告人事管理系统

软件工程课程设计报告人事管理系统

软件工程课程设计 题目人事管理系统 系计算机系 专业班级软件工程(动画方向)(2)班 学生姓名贾秋洪 学号 2358069 指导教师姜青山 年 6 月 18 日 1.课程题目 人事管理系统设计 2.概述 2.1本课题的来源 A公司是一家以寿险营销为目的的寿险公司,公司员工众多业务流量大,为了方便管理,我制作了一个人事管理系统。主要经

过员工基本信息录入、修改、查询、删除以及员工考勤等方面来对员工综合考评。以便对员工发放工资进行合理分配。这样能提高领导的人事管理水平还能提高员工的积极性。经过现代计算机技术与企业管理相结合,实现人事管理系统的科学化、信息化、现代化,而且适合一般人群使用。 企业人事管理是相对企业内部员工的管理。集人员、考勤、工资、员工培训、系统功能等于一体的大型管理系统,为公司在人事管理等方面提供极大的方便。本软件是以中小型企业为背景而设计开发的,界面美观、使用方便。本系统主要以人员管理、考勤管理、统计分析管理、工资核算等,是企业人事管理必不可缺的好帮手。 2.2本课题目的、实现功能与预期成果 2.2.1目的 当前市面上流行的人事管理系统不少。可是,对于A公司来说,不需要大型的数据库系统。只需要一个操作方便,功能实用,能满足本中心对数据的管理及需求的系统。我们的目标就是在于开发一个功能实用、操作方便,简单明了的人事管理系统。 2.2.2实现功能 能够录入人事的基本资料,在操作上能够完成诸如添加、修改、删除、按各种条件进行查询、新用户的设置及密码修改等方

面的工作,基本满足人事日常业务的需要。 2.2.3预期成果 所做出的人事管理系统能让A公司管理层在操作简单的前提下并有效的提高对该公司的人事管理,并经过该系统提高员工的能力。尽量使本系统做到是一个科学化、信息化、简单使用的人事管理系统。 3.系统分析 3.1系统调研 正式开发管理信息系统之前进行调研是非常必要的,必要对现行系统进行详细的调查,明确用户需求,保证开发的新系统的功能与用户的要求相吻合,避免耗费大量的人力、物力、财力,新系统的开发却失败的悲剧发生。 3.2可行性分析概述 可行性分析是在A公司的要求和系统调研的基础上进行的,对新系统的开发从社会、技术、经济、管理等方面进行分析,并得出新系统的开发工作可行、不可行、需要修改、追加投资、暂缓开发、分步实施等方案和结论,最后完成可行性分析。 可行性分析一般可定义为:可行性分析是在建设的前期对工程项目的一种考察和鉴定,对拟议中的项目进行全面与综合的技术、经济能力的调查,判断它是否可行。 可行性分析阶段的主要工作包括以下几个方面:

《移动应用开发》课程设计报告书

《移动应用开发》课程设计报告 { 学院名称:计算机与信息工程学院 班级名称:计科对口14 学生:胡闻璐 学号: 19 题目:基于《个人理财通》的计算器 任课教师 # 姓名:东良 起止日期:2017年04月18日至04月30日

目录 《移动应用开发》课程设计报告 (1) * 摘要 (3) 1 项目需求分析 (3) 需求分析 (3) 功能需求 (3) 2系统总体设计 (5) 系统架构设计 (5) 系统功能体系 (5) 3系统详细设计 (6) 》 数据库设计 (6) 系统界面设计 (7) 数据存储设计 (13) 信息统计设计 (14) 地图轨迹设计 (14) 服务应用设计 (24) 4系统编码实现 (25) 框架引用 (25) ~ 交互实现 (25) 单元测试 (28) 5 系统测试发布 (29) 手机环境的实测 (29) APP的发布实测 (29) 参考文献 (30) 成绩评定 (31) <

摘要 随着移动终端的迅速普及,Android系统平台引用软件的需求随之增大。伴随着Android 智能手机与平板电脑已经出现在我们生活的大量的使用,越来越多的基于Android开发平台也随之而出,为丰富人们使用Android智能产品的用途,使其可以帮人们记录一些事情。本设计开发通过研究Android体系结构和个人理财管理方面的知识,设计并实现了个人理财通系统。能够对理财信息进行获取、汇总、整理、计算等功能,从而实现随身随时随地地进行日常的理财活动。 1 项目需求分析 需求分析 物质和科技的飞速发展,人们的生活水平也不断的在提高,往往有很多人在快节奏的生活中迷失和迷茫,很多人觉得自己没钱,但每个月的工资也不是很低,却往往不知道钱花在哪,为什么每到月底自己的钱包会空空如也,正因为这样,人们才需要一款个人理财软件,简单的界面,易懂的操作,十分便携直观的理财方式,可以让人们更好的进行个人理财。以下是本软件的一些功能: ①登录界面:初始登陆时没有密码,为了方便用户保护隐私,可以自行设置密码 ②新增支出:添加支出金额、时间、类别和地点等信息 ③新增收入:添加收入金额、时间、类别和付款方等信息 ④数据管理:支出汇总,收入汇总,便签信息 ⑤便签功能:添加便签,设置提醒或事项 ⑥计算器:对数据进行计算,方便记录,长按结果可直接复制 ⑦移动课堂:泛雅平台中的安卓课程访问 ⑧帮助:对个人理财通各个功能部件的使用介绍 ⑨退出:退出该系统 功能需求 目前国外理财软件已有上百种之多,如美国的直觉公司QUICKEN软件为美国13个州及加拿大的客户提供金融管理和预算等财务问题。国在财务管理方面做的比较突出的当属金蝶公司。然而,在手机理财软件方面做的很突出的还没有,本软件是针对个人用户的一款Android 软件,主要对个人理财收入、支出做一个记录和统计,可以对用户的收入、支出记录做添加、删除、查询和修改的管理,本软件该具备以下功能: ①功能操作要方便、易懂、,不要有多余或复杂的操作。 ②对用户收入支出信息做添加、删除、查询和修改。 ③系统的功能复合本人的实际情况。

软件设计模式(JAVA)习题答案

软件设计模式(Java版)习题 第1章软件设计模式基础 1.1 软件设计模式概述 1.2 UML中的类图 1.3 面向对象的设计原则 一、名词解释 1.一个软件实体应当对扩展开放,对修改关闭,即在不修改源代码的基础上扩展 一个系统的行为。 2.一个对象应该只包含单一的职责,并且该职责被完整地封装在一个类中。 3.在软件中如果能够使用基类对象,那么一定能够使用其子类对象。 4.是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结, 使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 二、单选择题 1.( A ) 2.( A ) 3. ( A ) 4. ( D ) 5. ( D ) 6.( A ) 7. ( D ) 8.( D ) 9.( D ) 10.( E ) 11.( C ) 12.( C ) 13. ( A ) 三、多选择题 1.( A、B、C、D ) 2. ( A、B ) 3.( A、D ) 4.( A、B、C、D ) 四、填空题 1.依赖倒转、迪米特法则、单一职责 2.模式名字、目的、问题、解决方案、效果、实例代码 3.超类、子类 4.开闭 5.用户 6.依赖倒转 7.组合/聚合 8.结构型、行为型 9.依赖倒转 10.开闭 11.需求收集是否正确、体系结构的构建是否合理、测试是否完全 12.人与人之间的交流 13.接口 14.名称、目的、解决方案 15.对象组合、类继承

16.对象组合 17.对象组合、类继承 18.抽象类的指针 五、简答题 1.答:设计模式按类型分为以下三类: 1)创建型设计模式:以灵活的方式创建对象集合,用于管理对象的创建。 2)结构型设计模式:将己有的代码集成到新的面向对象设计中,用于处理类或对象的组合。 3)行为型设计模式:用于描述对类或对象怎样交互和怎样分配职责。 2.答:设计模式的主要优点如下: 1)设计模式融合了众多专家的经验,并以一种标准的形式供广大开发人员所用,它提供了一套通用的设计词汇和一种通用的语言以方便开发人员之间沟通和交 流,使得设计方案更加通俗易懂。 2)设计模式使人们可以更加简单方便地复用成功的设计和体系结构,将已证实的技术表述成设计模式也会使新系统开发者更加容易理解其设计思路。设计模式使得重用成功的设计更加容易,并避免那些导致不可重用的设计方案。 3)设计模式使得设计方案更加灵活,且易于修改。 4)设计模式的使用将提高软件系统的开发效率和软件质量,且在一定程度上节约设计成本。 5)设计模式有助于初学者更深入地理解面向对象思想,一方面可以帮助初学者更加方便地阅读和学习现有类库与其他系统中的源代码,另一方面还可以提高软件的设计水平和代码质量。 3.答:设计模式一般有如下几个基本要素:模式名称、问题、目的、解决方案、效 果、实例代码和相关设计模式,其中的关键元素包括模式名称、问题、解决方案和效果。 4.答:正确使用设计模式具有以下优点: ⑴可以提高程序员的思维能力、编程能力和设计能力。 ⑵使程序设计更加标准化、代码编制更加工程化,使软件开发效率大大提高,从 而缩短软件的开发周期。 ⑶使设计的代码可重用性高、可读性强、可靠性高、灵活性好、可维护性强。 5.答:根据类与类之间的耦合度从弱到强排列,UML中的类图有以下几种关系:依赖关 系、关联关系、聚合关系、组合关系、泛化关系和实现关系。其中泛化和实现的耦合度相等,它们是最强的。

软件课程设计需求分析

普通话考试报名及成绩查询系统 需求分析 项目名称:普通话考试报名及成绩查询系统撰写人: 专业: 指导老师: 2012年3月19日

摘要 网络技术的飞速发展正无时无刻影响着人们的工作、在教育体系中,网络的应用也成为现代教育发展的基础.网络教育逐渐发展起来,校园网建设逐步成熟,基于Web的也伴随着网络技术的发展应运而生.它即简化了传统的考试模式,节约人力物力,也可以有效利用校园网资源,辅助教学. 该系统采用了目前流行的B/S模式,即浏览器、应用服务器、数据库服务器三层体系结构,后台数据库采用SQL Server 2005,客户端采用IE浏览器和服务器连接,最终形成了基于 B/S模式的在线考试系统.该系统具备了以下功能:学生信息管理、成绩查询等功能. 论文以基于B/S模式的在线考试系统为研究对象,按照软件工程的开发思想,用UML来构建在线考试系统模,后台采用数据库相结合. 际需求出发,论述了开发普通话等级考试报名及成绩查询系统的背景、目的及意义,讨论了开发系统的关键技术,并通过UML分析对系统设计及实现。 设计思路和方法采用瀑布模型开发,用统一建模语言 UML进行描述,经历了文献检索,需求分析,分析模型设计,数据模型设计,构建级设计,系统部署,系统测试六个个环节。。实现了用户登录、注册功能,出题组卷功能,考试评卷功能以及用户信息查询功能。 关键词:普通话等级考试报名及成绩查询系统; SQL SERVER2005

目录 一.摘要 (2) 二.背景 (5) 三.简介 (5) 1.设计目的 (5) 2.开发环境 (5) 3.程序功能 (6) 4.系统实际需求特点 (6) 四.整体规划思路 (6) 五.整体性需求分析 (6) 六.功能需求 (9) 1.业务规则 (9) 2.普通话等级考试报名及成绩查询系统登录 (10) 七.数据库设计 (12) 1.概念模型设计 (12) 2.数据表结构 (12) 八.系统结构设计 (14) 九.对性能的规定 (15) 1.灵活性 (15)

《软件设计基础-VB》课程设计报告书

河北联合大学 2011-2012 第 2 学期
《 软 件 设 计 基 础 -VB》
课程设计报告
设计名称: 姓 名: 设计显示弹球的程序 学 号:
专业班级: 学 院:
设计时间: 设计地点:
指导教师评语:
成绩:
指导教师签字:
年 月 日

《软件设计基础-VB》课程设计报告

2
页,共
14



1.课程设计目的···································· ···································· ···································· 2.课程设计任务与要求 ································ ································ ······························· 3.课程设计说明书··································· ··································· ·································· 4.课程设计成果···································· ···································· ···································· 5.程序调试过程···································· ···································· ···································· 6.设计问题的不足和改进方案 ···························· ···························· ··························· 7.课程设计心得···································· ···································· ···································· 8.附录 ·········································· ········································· ········································· 9.参考文献······································· ······································· ······································

软件工程课程设计报告

软件工程课程设计报告( 2015 -- 2016 学年第一学期) 课程名称:软件工程课程设计 题目:学生宿舍管理系统 院系:控制与计算机工程学院 班级: 组号: 组长: 组员: 指导教师: 设计周数:两周 小组成绩: 日期:2016 年1月8日

《软件工程》课程设计 任务书 一、目的、要求 通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。 具体如下: 1.学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编 码和测试方面的知识; 2.熟悉自动化的软件开发工具Rational Rose,并将其运用于软件开发的全过程; 3.进一步加强和提高软件工程文档的编写能力; 4.培养协作能力和团队精神。 二、主要内容 1.运用面向对象方法进行校园宿舍管理系统的需求分析与设计; 2.建模语言采用UML,以Rational Rose为建模工具,进行系统的静态建模和动态建模; 3.利用对象模型自动生成数据模型,自动建立数据库; 4.使用hibernate技术以面向对象的方式编程管理数据库,前端使用html+css结合javaScript 进行设计,后台逻辑采用java来实现,整个系统采用了ssh框架来实现,使得各个模块低耦 合,分层明确,提高了代码的重用以及二次开发; 5.撰写课程设计报告。 三、任务分配

四、进度计划 五、设计成果要求 1.建立系统分析模型与设计模型; 2.初步建立系统原型,实现关键的功能; 3.编写课程设计报告。 六、考核方式 1.系统演示及讲解 占50%。 2.设计报告 占50%。 指导教师: 日期:2015 年12 月25 日

软件工程课程设计报告_人事管理系统

软件工程课程设计 题目人事管理系统 1.课程题目 人事管理系统设计 2.概述 2.1本课题的来源 A公司是一家以寿险营销为目的的寿险公司,公司员工众多业务流量大,为了方便管理,我制作了一个人事管理系统。主要通过员工基本信息录入、修改、查询、删除以及员工考勤等方面来对员工综合考评。以便对员工发放工资进行合理分配。这样能提高领导的人事管理水平还能提高员工的积极性。通过现代计算机技术与企业管理相结合,实现人事管理系统的科学化、信息化、现代化,并且适合一般人群使用。 企业人事管理是相对企业部员工的管理。集人员、考勤、工资、员工培训、系统功能等于一体的大型管理系统,为公司在人事管理等方面提供极大的方便。本软件是以中小型企业为背景而设计开发的,界面美观、使用方便。本系统主要以人员管理、考勤管理、统计分析管理、工资核算等,是企业人事管理必不可缺的好帮手。

2.2本课题目的、实现功能与预期成果 2.2.1目的 目前市面上流行的人事管理系统不少。但是,对于A公司来说,不需要大型的数据库系统。只需要一个操作方便,功能实用,能满足本中心对数据的管理及需求的系统。我们的目标就是在于开发一个功能实用、操作方便,简单明了的人事管理系统。 2.2.2实现功能 能够录入人事的基本资料,在操作上能够完成诸如添加、修改、删除、按各种条件进行查询、新用户的设置及密码修改等方面的工作,基本满足人事日常业务的需要。 2.2.3预期成果 所做出的人事管理系统能让A公司管理层在操作简单的前提下并有效的提高对该公司的人事管理,并通过该系统提高员工的能力。尽量使本系统做到是一个科学化、信息化、简单使用的人事管理系统。 3.系统分析 3.1系统调研 正式开发管理信息系统之前进行调研是非常必要的,必要对现行系统进行详细的调查,明确用户需求,保证开发的新系统的功能与用户的要求相吻合,避免耗费大量的人力、物力、财力,

软件体系结构与设计模式期末复习

体系结构期末复习 一、选择题 (一) 1. 设计模式的基本原理是( C ) A. 面向实现编程 B. 面向对象编程 C. 面向接口编程 D. 面向组合编程 2. 设计模式的两大主题是( D ) A. 系统的维护与开发 B. 对象组合与类的继承 C. 系统架构与系统开发 D. 系统复用与系统扩展 3. 依据设计模式思想,程序开发中应优先使用的是( A )关系实现复用。 A. 组合聚合 B. 继承 C. 创建 D. .以上都不对 4. 关于继承表述错误的是( D ) A. 继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法。 B. 泛化类(超类)可以显式地捕获那些公共的属性和方法。特殊类(子类)则通过 附加属性和方法来进行实现的扩展。 C. 破坏了封装性,因为这会将父类的实现细节暴露给子类。 D. 继承本质上是“白盒复用”,对父类的修改,不会影响到子类。 5. 常用的设计模式可分为( A ) A. 创建型、结构型和行为型 B. 对象型、结构型和行为型 C. 过程型、创建型和结构型 D. 抽象型、接口型和实现型 6. “不要和陌生人说话”是对( D )设计原则的通俗表述。 A. 接口隔离 B. 里氏代换 C. 依赖倒转 D. .迪米特法则 7. 在适配器模式中,对象适配器模式是对( A )设计原则的典型应用 A. 合成聚合 B. 里氏代换 C. 依赖倒转 D. .迪米特法则 8. 将一个类的接口转换成客户希望的另一个接口,这句话是对(C)设计模式的描述 A. 策略模式 B. 桥接模式 C. 适配器模式 D. 单例模式 9. 以下设计模式中属于结构模式的是( D ) A. 观察者模式 B. 单例模式 C. 策略模式 D. 外观模式 10. 以下不属于对象行为型模式是( D ) A. 命令模式 B. 策略模式 C. 访问者模式 D. 桥接模式 11. 下面的类图表示的是哪个设计模式( D ) A. 抽象工厂模式 B. 观察者模式 C. 策略模式 D. 桥接模式

软件设计模式与软件体系结构实验报告

《软件体系结构》大作业(1) 学院:软件学院 课程名称:软件体系结构 专业班级: 学生姓名:学号: 学生姓名:学号: 指导教师: 完成时间:年月日 评分表 1、叙述各小组成员完成本题目的分工协作情况。 小组中的每个成员都先理解题目要求及涉及的设计模式,并一起完成代码编写。另外,组长负责文档制作。 2、评分表 序号姓名评分是否组长 1 2 作业正文需要包括以下内容: 1、作业题目内容的详细描述。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的 软件体系结构名称及画出相应的体系结构图。

3、画出完成本题目所设计程序的设计类图;如还有其他图,也一并画出。 4、完成本题目所设计的程序代码。 5、程序运行的典型界面截图

1、作业题目内容的详细描述。 【作业2.1-1】例2.3为使用工厂方法模式设计的汽车保险管理应用程序实例。现在需要 扩展例2.3的设计图,添加一个名为LuxuryCarInsurance的类,并且需要编写此类和其他需要添加的类的代码,详细要求参见光盘的相应作业部分。 【作业2.1-1】在例2.4中,设计并且实现了豪华(Super)和中等(Medium)别墅(House)与公寓(Condo)的查询。要求在该设计的基础上,增加一个新的类SemiDetacher(半独立式楼宇),并且编写代码,实现相应的查询功能,详细要求参见光盘的相应作业部分。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的软件体系结构名称及画出相应的体系结构图。 【作业2.1-1】采用的是工厂方法模式 【作业2.1-2】采用的是抽象方法模式

软件工程课程设计报告书

第一章概述 1.1系统名称 学生宿舍管理系统 1.2开发及运行环境 CPU Intel? Core(TM)i5-4210M 存4GB 硬盘空间30M以上 输入设备键盘鼠标 操作系统windows 8.0 数据库windows sql server 2005 1.3软件开发计划 2017.12.01-2017.12.04 软件需求分析 2017.12.05-2017.12.09 系统结构设计 2017.12.10-2017.12.15 软件编码及数据 库设计实现 2017.12.16-2017-12.20 软件测试 2017.12.21 软件交付

第二章需求分析 目前,各学校的宿舍管理主要依赖于人工管理,学生宿舍相关的各种信息可以通过宿舍管理系统来集中统一管理,方便的宿舍管理员对宿舍的管理,更有利于宿舍安全以及同学们的健康成长。 2.1 任务概述 宿舍管理系统为了方便管理,尽可能的实现操作简单,易学易用,主要实现以下功能: 1)系统要求用户必须输入正确的用户名和密码才能进入系统; 2)系统应该提供学生住宿情况的基本登记; 3)系统应提供人员来访登记及结束访问的详细登记; 4)系统应提供学生在校期间物品出入宿舍楼的详细情况登记; 5)系统应提供查询功能,以方便用户对学生基本信息的查询(要实现按多种条件的查询)及楼房信息的查询; 6)系统应提供增加、删除、修改用户的功能; 7)增加学生离校的物品管理制度 2.2 宿舍管理系统一层数据流图及数据字典 2.2.1 一层数据流图

图1-1 学生宿舍管理系统一层数据流图 2.2.2 数据字典 以下是图1-1数据流图的数据字典本数据字典主要定义数据4方面容: 名字:数据元素的名字,作为在数据流图中的标识符, 描述:对名字所代表的数据功能和含义加以描述 定义:对名字所代表的实际构成加以解释 位置:表示数据流的来源 名字:管理员 描述:对宿舍管理系统进行操作的人员

软件工程课程设计报告

软件工程课程设计报告样式 山东建筑大学计算机科学与技术学院 课程设计说明书 题目:学校教材订购系统的分析和设计 课程:软件工程 院(部):计算机科学与技术学院 专业:软件测试 班级:软测143 学生姓名:冯岩 学号:20141113088 指导教师:王宜贵 完成日期:

目录 课程设计任务书 (36) 1. 系统概述 (39) 1.1业务流程描述 (39) 1.2 业务流程图..................................................................................... 错误!未定义书签。2.系统需求分析.......................................................................................... 错误!未定义书签。 2.1 系统用例模型.................................................................................. 错误!未定义书签。 2.2 系统类图模型............................................................................ 错误!未定义书签。 2.3 系统顺序图模型........................................................................ 错误!未定义书签。 3. 系统设计.................................................................................................. 错误!未定义书签。 3.1 系统结构设计................................................................................. 错误!未定义书签。 3.2 数据库概念模型设计..................................................................... 错误!未定义书签。 3.3 数据库物理模型设计..................................................................... 错误!未定义书签。 4. 系统详细设计.......................................................................................... 错误!未定义书签。 4.1学校教材订购系统界面设计.......................................................... 错误!未定义书签。 4.2 销售系统处理............................................................................... 错误!未定义书签。 4.3 输入设计....................................................................................... 错误!未定义书签。 4.4 采购系统处理............................................................................... 错误!未定义书签。 4.5 设计............................................................................................... 错误!未定义书签。 4.6 输出设计....................................................................................... 错误!未定义书签。总结 .. (43) 参考文献 (45) 课程设计指导教师评语 (46)

《软件设计模式》教学大纲

《软件设计模式》教学大纲 一、课程说明 1、课程编号: 2、课程名称(中/英文):软件设计模式/Software Design Patterns 3、课程类别:专业课/限选 4、学时/学分:32/2.0 5、先修课程:Java面向对象程序设计、软件工程 6、适用专业:软件工程,计算机科学与技术,信息管理与信息系统 7、教材、教学参考书: [1]刘伟.Java设计模式.北京:清华大学出版社,2018. [2]刘伟.设计模式实验及习题解析.北京:清华大学出版社,2018. [3]ErichGamma,RichardHelm,RalphJohnson,JohnVlissides.DesignPatte rns:ElementsofReusableObject-OrientedSoftware.Addison-Wesley,199 5. [4]结城浩.图解设计模式.北京:人民邮电出版社,2016. [5]秦小波.设计模式之禅(第2版).北京:机械工业出版社,2014. [6]陈臣,王斌.研磨设计模式.北京:清华大学出版社,2010. 二、课程性质和教学目的 《软件设计模式》是软件工程、计算机科学与技术、信息管理与信息系统等专业本科生的一门专业课,本课程是一门具有较强理论性和实践性的软件设计和开发类课程。 本课程主要学习软件设计模式基础知识、UML类图、面向对象设计原则、常用的创建型设计模式、结构型设计模式和行为型设计模式。本课程要求学生掌握常用软件设计模式的动机、定义、结构、实现、使用效果以及应用实例,能够将所学知识应用到实际软件项目设计与开发中,进一步培养学生的工程实践能力和专业技术水平,为今后从事相关工作奠定基础。 本课程首先学习软件设计模式的基本知识和UML类图;接着介绍常见的七个面向对象设计原则;然后重点介绍使用频率较高的软件设计模式,包括五种创建型设计模式(简单工厂模式、工厂方法模式、抽象工厂模式、原型模式、单例模式)、六种结构型设计模式(适配器模式、桥接模式、组合模式、装饰模式、外观模式、代理模式)和七种行为型设计模式(职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式、模板方法模式)。此外,为了帮助学生深入理解所学知识,提高实践动手能力并将所学知识应用于解决实际问题,本课程设置了相应的实践环节,针对具体问题合理选择设计模式,绘制相应的模式结构图并使用代码实现

软件工程课程设计报告

软件工程课程设计报告题目:校园小商品交易系统 一、实验题目 (2) 二、实验目的 (2) 三、实验要求 (3) 四、实验内容 (3) 五、系统设计文档 (4) 5.1需求分析 (4) 5.1.1对系统综合要求 (4)

5.1.2系统的数据要求 (4) 5.2总体设计 (5) 5.2.1系统总体用例图 (5) 5.2.2商品管理用例图 (5) 5.2.3用户信息用例图 (6) 5.2.4商品交易用例图 (6) 5.3详细设计 (6) 5.3.1系统类图以及类之间关系图 (6) 5.3.2由需求分析阶段以及类之间关系的设计分析可以得到系统 对应事件流 (7) 5.3.3系统数据库表 (11) 5.3.4系统组件图 (11) 5.3.5系统部署图 (12) 六、心得体会 (13) 一、实验题目 校园小商品交易系统 二、实验目的 通过这次课程设计,要掌握UML(统一建模语言),并能运用UML在Rational Rose中建模。熟练掌握软件工程面向对象建模的总体方法。

三、实验要求 1.一人一组。 2.熟悉Rose开发环境。 3.掌握UML的基本模型元素(如角色、用例、类等)。 4.熟悉UML,主要了解UML中的9大图:Use case diagram(用例图)、Class diagram(类图)、Object diagram(对象图,Rose中没有)、Sequence diagram(序列图)、Collaboration diagram(协作图)、Statechart diagram(状态图)、Activity diagram(活动图)、Component diagram(组件图)、Deployment diagram(配置图)。 5.完成对系统的建模。 6.周五上机检查,并提交设计报告。 7.集中上机时间不能迟到、早退。 8.请自觉维护实验室清洁,爱护实验设备。 四、实验内容 运用UML统一建模语言建立一个校园小商品交易系统。开发软件为ROSE,最后转换为VB代码。该系统主要的基本要求和功能如下: 包含三类用户:管理员、商品发布者、普通用户、访客。 (1)向管理员提供以下功能:自身密码修改,其他用户添加删除,用户信息修改、统计。商品信息添加、修改、删除、查找、统计。 (2)向商品发布者提供以下功能:注册、登陆、注销、自身密码修改、自身信息修改。商品信息发布,自身商品信息统计。查找浏览其他商品。 (3)向一般用户提供以下功能:商品浏览、查找、获知商家联系方式,定购商品。 (4)向访客提供以下功能:商品浏览、查找、获知商家联系方式。

软件工程课程设计实验报告

重庆邮电大学 软 件 工 程 课程设计实验报告 ——网上选课系统 姓名:雷雷 学号:08500329 专业:计算机科学与技术班级:0410801 指导老师:邹洋 教室:S331-A 时间:2011-5-30~2011-6-3

一、实验题目:网上选课系统 主要功能描述:系统首先维护校内所有课程的信息;课程分为研究生、本科生;也可以分为必修、选修、辅修。用户以学号和密码登陆,系统显示用户以选的课程、用户有权选但未选的其他课程,并显示具体信息(如学分)。用户选择后,系统根据规则检查用户是否进行正确的选课(如时间冲突、跨专业选课等);如果错误提示用户改,否则修改选课数据库。最后系统应能够向管理员提供查询界面和各类报表,统计每门课的选课情况。 二、实验目的 软件工程课程设计是软件工程专业一个综合性的实践教学环节,其目的在于促进学生复习和巩固计算机软件设计知识,加深对软件设计方法、软件设计技术和设计思想的理解,并能运用所学软件设计知识和面向对象技术进行综合软件设计,提高学生的综合应用能力。通过这次课程设计,要掌握UML(统一建模语言),并能运用UML在Rational Rose中建模。 三、实验要求 1.一人一组。 2.熟悉Rose开发环境。 3.掌握UML的基本模型元素(如角色、用例、类等)。 4.熟悉UML,主要了解UML中的9大图:Use case diagram(用例图)、Class diagram(类 图)、Sequence diagram(序列图)、Collaboration diagram(协作图)、Statechart diagram(状态图)、Activity diagram(活动图)、Component diagram(组件图)、Deployment diagram(配置图)、datamodel diagram(数据模型图)。 5.进行系统需求分析与系统功能模块设计,绘出系统详细的业务流程图和数据流程图, 建立完整的系统数据库的逻辑模型。 6.完成对系统的建模实现。 7.进行检查,并提交设计报告。 四、实验内容 1、系统的需求分析 学生选课系统主要满足来自两方面的需求,这两个方面分别是学生用户和管理员用户,也即是两类用户角色。 (1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、退课操作等; (2)管理员用户的功能需求较为复杂,包括对学生信息、课程信息进行管理。在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。在课程管理子模块中,实现对课程信息的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除、查看某个课程的详细信息等。 本系统将管理员用户、学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看、维护系统中的所有信息,如添加学生,添加课程,修改课程信息等;让学生拥有选课和退选的权限;而修改密码模块的权限每个用户都可拥有,用以修改自己的密码信息。通过进行严格的权限划分,可以更好地进行管理,也可更好地保护用户信息安全。

软件设计模式及其使用

龙源期刊网 https://www.doczj.com/doc/7218356072.html, 软件设计模式及其使用 作者:罗兴荣 来源:《数字技术与应用》2013年第04期 摘要:在计算机软件快速发展的今天,软件设计模式在计算机程序设计的运用中越来越重要。软件设计模式按其完成工作的种类可分为了创建型的模式、结构型的模式以及行为型的模式。在实际应用中根据分析研究问题的结果选择和使用合适的软件设计模式。 关键词:软件设计设计模式模式分类模式选择模式使用 中图分类号:P631 文献标识码:A 文章编号:1007-9416(2013)04-0194-01 关于模式这个概念,最早的时候是在城市建筑领域当中出现的,而Christopher Alexander[1]所写的一本关于建筑的书中对模式这一概念有明确的定义,其大概含义是说每一个模式都是描述我们周围发生的事情,并对发生的问题进行合理的解释,使得利用这个模式就可以重复的解决类似的问题。Christopher Alexander利用他所得出的模式这个概念解决了建筑领域中的一些问题,模式这一概念发展到现在,已经逐渐成为计算机领域当中独有的概念了。 1 软件设计模式分类 对软件设计模式的分类有许多不同的方法,在这里主要是根据模式在计算机软件设计中能够完成何种种类的工作来决定的,大致可以分为创建型的模式、结构型的模式以及行为型的模式这三种类型。而当模式运用于不同因素的时候又可以分为不同的类型,运用于类的时候可以分为类模式,运用于对象的时候可以分为对象模式。所谓类模式就是处理系统中的类与子类之间关系的模式,这些关系可以通过继承的形式来建立,静态的类模式在进行编译的时候便要确定下来;所谓对象模式,就是处理对象之间关系的模式,这些关系在系统运行的时候是能够不断变化的,所以对象模式是动态的模式。 第一,创建型的软件设计模式。创建型的设计模式是和对象的创建有着十分必然的关系,也就是说,在描述创建对象的时候,要将对象创建过程的具体细节进行隐藏设计,使得系统程序代码能够不依赖具体的对象。所以当我们需要在系统中增加一个新的对象的时候,是不需要修改系统的源代码的。创建型的类模式需要将对象当中的部分在子类当中进行延迟性的创建工作,而创建型的对象模式则是将对象的部分在另一个对象中进行延迟性的创建。 第二,结构型的软件设计模式。结构型的软件设计模式是处理类的和处理对象的设计模式的组合形式,也就是能够描述类与对象之间的大的结构如何组建起来,并且在组建之后还能够拥有新的功能的一种模式。结构型的类模式是采用继承性的机制来对类进行组合。而结构型的对象模式则是能够描述对象之间的组装方式。

软件设计模式大作业样例

设计模式大作业 课程名称:软件设计模式 设计题目:公司经费申请 院系:计算机科学与信息工程学院学生姓名: 学号: 专业班级:软件工程13-1 指导教师:高原 2016年6月

软件设计模式任务书

目录 一、系统目标 (1) 1. 设计目的 (1) 2. 需求描述 (1) 二、系统模块选择 (1) 1. 需求分析 (1) 2. 选用设计模式 (2) (1)模板方法模式 (2) (2)职责链模式 (2) (3)观察者模式 (3) 三、系统设计 (4) 1. 系统功能模块设计 (4) 四、系统实现 (5) 1.模板方法模块及其实现类 (5) 2.职责链模块及其实现类 (6) 3.观察者模块及其实现类 (9) 4.事件处理程序 (10) 五、系统设计总结 (11) 1. 实现的功能和优点 (11) 2. 不足之处 (12) 3. 完成心得 (12) 六、参考文献 (12) 参考文献 (12)

一、系统目标 1.设计目的 通过本课程设计,加深对软件设计课程的理解,熟练掌握和巩固所学的各种设计模式,培养自我动手、查阅技术文献、资料、手册以及编写技术文献的能力。通过运用设计模式来解决实际系统中遇到的问题,从而具备利用计算机编程分析解决综合性实际问题的初步能力。 2.需求描述 本系统的主要目的在与应用设计模式解决公司经费申请问题,可以了解申请经费的具体流程为申请人先填写申请单,然后交给领导审批,如果申请批准下来,领导会通知申请人审批通过,然后申请人去财务领取费用,财务部给于其拨款,如果没有批准下来,领导会通知申请人审批未通过。不同级别的领导,对于审批的额度是不一样的,比如,项目经理只能审批500元以内的申请;部门经理能审批1000元以内的申请;而总经理可以审核3000元以内的申请,否则不通过。系统中总共用到三种设计模式,分别是模板方法模式,职责链模式,观察者模式。 模板方法模式定义了一个操作中算法的骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。申请经费的具体流程是固定的,写申请单,审核,得到通知这三个过程,只是审核过程不同。职责链模式鉴于不同级别的领导,对于审批的额度是不一样,使其各自的职责权限更加清晰明了。观察者模式是一种一对多依赖关系,一个对象状态发生改变时,其相应依赖对象得到通知并自动更新。 二、系统模块选择 1. 需求分析 根据问题的描述,可以确定系统的大致业务逻辑。如下:需要申请活动费用,按照固定工作流程进行申请,给出申请金额,由领导根据各自的职责权限进行审核,并将结果告知申请人,财务部根据结果给予拨款。将结果返回到客户端,呈现给用户。

相关主题
文本预览
相关文档 最新文档