欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    信息系统分析与设计课程设计(共29页).doc

    • 资源ID:14476285       资源大小:1.01MB        全文页数:29页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    信息系统分析与设计课程设计(共29页).doc

    精选优质文档-倾情为你奉上信息系统分析与设计课程设计报告设计题目:健身馆教练预约信息系统分析与设计 专 业 信息管理与信息系统 班 级 学 号 姓 名 目录专心-专注-专业健身馆教练预约信息系统分析与设计1 设计背景简介一般的传统健身馆是用户直接去健身馆进行健身运动,需要顾客亲自到健身馆选择所需要的项目和专业教练。由于随着时代的发展,越来越多的人们参加到健身运动中,这就使得不是所有的顾客都可以在自己的空闲时间能完全满足自己对教练和健身项目的需求。加之工作节奏越来越紧张,人们的空闲时间比较分散。同时,预约记录大部分是人为完成,易于出现错误和漏洞,管理效率低,特别是随着健身运动越来越受到人们的亲睐,传统的预约方式已经完全不能满足人们的要求,同时现有的管理方式对健身馆的经营和管理带来很大的不便。随着网络技术的普及和发展,远程预约已成为一种可以基本成熟实现的方法。它通过无联网突破了时间和空间限制实现了便捷快速的预约与管理功能。在通过对数据信息进行有效组织,并在一定程度上进行功能的整合,开发健身馆教练预约系统可以方便地为顾客提供预约、教练详细资料的查询、用户管理和管理员管理双重管理等功能。2 可行性分析经过详细的分析和调查,应用本学期信息系统分析与设计这门课程所学习的知识,本设计采用面向对象的方法,使用UML建模语言进行建模。UML是完全面向对象的,是图形化的,它为系统开发的不同参与者(包括客户)提供不同层次和角度的图;它鼓励客户参与,这样,开发出来的软件是一个能符合设计之初的设想的软件。其特点是从用户的角度使用“用例图”出发来设计软件系统,这就避免了开发者开发出的系统虽然具有很多很好的功能,但确不能很好的符合客户真正的需求。同时采用 Microsoft ASP作为开发工具,后台数据库采用SQL Server数据库设计。系统以Web界面与用户交互,为用户提供信息,并支持用户的操作,同时通过数据库管理系统来存储信息数据。健身馆教练预约系统就是建立在以上分析的基础上,采用模块化编程的思想,对普通用户和或管理员权限有严格的区别和要求。在Internet快速发展的基础上,远程预约通过网络实现用户对教练的预约和健身馆教练的基本管理功能。实现了用户的教练信息查看、教练信息查询、预约和留言功能。同时实现了管理员对教练信息项目的添加、修改和删除。3 系统分析3.1 UML用例视图描述用例视图可以使参与者的外部用户能观察到系统功能的模型图。用例是系统中的一个功能单元,可以描述为参与者与系统之间的一次交互作用。用例模型可以列出系统中的用例和参与者,并显示某一参与者参与某一用例的执行。(1)活动者的确定在健身馆教练预约系统中,可以归纳出来的主要问题有: 用户注册登录使用本系统。 管理员登录系统,对教练信息进行管理。 管理员阅读会员留言,并对无用留言进行删除。 作为会员的用户查看教练信息,进行预约。 查看已预约信息,对未到期预约可以删除。 安全退出登录。根据以上问题,本系统所涉及的操作主要有:教练信息的管理、会员信息的管理、预约信息的管理以及各种信息的分析查询。在本系统的UML建模中,可以创建以下角色: 图1 本系统中活动者(2)创建用例用例是一个用户或其他系统与要设计的系统进行的一个交互,是从用户的角度来描述系统应该具有的功能。根据本系统的业务流程,创建以下几个用例:图2 本系统中用例(3)创建活动者与用例的关系图 登录子系统用例图: 图3 登录子系统用例图 在登录子系统中,活动者系统用户包括管理员、会员和教练分别可以以自己的身份登录系统,同时,在他们登录系统后也可修改自己的登录密码。登录后又包括教练子系统和预约子系统两个用例。 教练子系统用例图 图4 教练子系统用例图 在教练子系统的用例中,管理者可以添加教练信息、修改教练信息、删除教练信息、阅读留言以及删除无用留言。 预约子系统用例图 图5 预约子系统用例图 在预约子系统中包括的用例有:会员信息的注册、查询教练、对所选教练进行预约,同时也可在允许时间内取消预约,为预约活动支付相应费用,以及教练和会员同时可以查询当前所有已经产生的预约信息。3.2 UML活动图描述 活动图用来捕捉用例的活动,描述工作流。下面介绍本系统中主要的活动图:(1)验证登录身份活动图 图6 验证登录身份活动图 此活动图描述了对登录者身份的验证,开始进入登录界面,判断是否为第一次登录,若是则判断是否为会员,否则判断是否为管理员或教练,若存在相同信息则验证成功,为系统的合法用户,否则不能登录。(2)检查预约冲突活动图 图7 检查预约冲突活动图 本活动图检查预约是否会产生冲突,在接受预约信息后,检查已形成的预约表,看是否有相同教练的预约信息,接着对其预约项目和时间进行判断是否存在相同信息,若存在,则产生冲突,否则,将该预约信息保存到预约表,预约成功。 4系统设计4.1 UML序列图设计 序列图用来描述如何实现每一个用例,下面就本系统中的一些重要的序列图说明如下:(1)系统用户管理过程序列图 图8 系统用户管理过程序列图 该序列图描述了系统用户的管理过程,会员向管理员提出申请需求,管理员向数据库中写入合法需求信息,数据库将写好的合法用户信息返回给管理员。(2)系统用户登录序列图 图9 系统用户登录序列图 该序列图描述了系统用户登录系统,系统用户登录到登录界面,进行身份验证,将输入信息传入到数据库,数据库进行验证,返回验证结果,最后由登录界面显示验证结果。(3)管理员添加教练序列图 图10 管理员添加教练序列图 该序列图描述了管理员添加教练的过程,首先由管理员登录到教练管理主界面,输入所要添加教练的详细信息,再由控制对象进行合法性检查,满足条件,则写入系统数据库,最后在教练管理主界面上显示插入是否成功的信息。(4)会员预约序列图 图11 会员预约序列图 该序列图描述了会员进行预约的活动。会员登录系统后,在预约主界面上选择预约的各项条件和信息,将所选条件教练的编号发送给数据库,再由数据库搜索该教练所有信息并检查是否存在冲突,有则显示冲突,没有则显示预约成功。4.2 UML类图设计 类图可以进一步明确所有要用到的类,通过对本系统的分析,创建如下类图中的类以及类之间的关系: 图12 系统类图 该类图描述了该系统中涉及的各个表,及所有字段以及其字段的详细描述,同时显示了各个类之间的关系。一位教练可以有多个被预约的信息,故教练信息表和预约信息表之间是一对多的关系。一位会员可以有多条预约信息,故会员信息表和预约信息表之间是多对一的关系。一位会员可以有多条留言信息,故它和留言信息表之间的关系为一对多的关系。会员信息表和会员级别表之间是一对一的关系。4.3功能结构设计(1)用户部分:用户登录教练项目信息查看教练查询留言版我的预约预约教练预约教练注销取消预约用户注册 图13 用户功能结构图 用户注册:检测用户提供的信息并注册用户。 用户登录:检测用户名和密码,核实用户身份。 预约教练:在某一确定的时间预约某一确定的教练。 查询预约信息:查询本用户的预约信息,并列出状态。 取消教练预约:取消某一未到期(未实现)预约,或未付款的有效预约。 查询教练详细信息:按照用户要求的条件列出所需教练。 留言:检测用户留言的正确性并保存。 安全注销:结束用户会话,保证其安全退出登录系统。(2)管理员部分:管理员登录阅读留言添加教练项目信息教练信息管理删除留言删除教练信息修改教练信息预约信息管理确认预约信息删除预约信息预约信息统计教练预约统计用户 统计 图14 管理员功能结构图 阅读用户留言:调用用户留言并显示。 删除无用留言:删除指定的留言。 添加新教练:根据提供详细信息添加新教练。 删除教练:根据管理员提交的信息删除指定教练。 修改教练信息:对于某一存在的教练信息进行修改更新。 确认已付款的用户预约:当用户付款后对指定预约进行标记确认。 删除无用或错误的预约信息:删除指定的有效预约。 教练预约统计和用户统计:统计数据库中有关预约和拥护的信息。 安全注销:结束管理员会话,保证安全。4.4数据库设计4.4.1数据库需求分析 健身馆教练预约系统的数据库功能主要体现在对各种信息的提供、保存、更新、和查询操作上,包括用户信息、管理员信息、教练详细信息、预约信息和留言内容等数据信息。各个部分的数据内容又有内在的联系。针对本健身馆教练预约系统得数据库特点,可以总结出如下需求: 用户和管理员具有不同的身份。 用户信息记录用户资料。 教练有教练级别、所教健身科目的种类、费用等多种信息。 预约有预约时间、预约用户、预约某一教练等多种信息。 留言有留言标题、内容等多种信息。4.4.2数据库概念结构设计经过上述系统功能分析和需求的总结,考虑到以后系统的功能可能会有所扩展,需要修改对数据库的结构和字段以及表中的内容进行相应的添加和修改。现设计如下数据库的数据项和数据结构: 管理员信息,包括数据项:管理员名、密码。 用户信息,包括数据项:用户名、密码、电子邮件等。 教练信息,包括数据项:教练编号、教练姓名、所属类型等。 预约信息,包括数据项:预约编号、预约用户名、教练编号等。 留言:包括数据项:留言用户名、留言标题、内容等。4.4.3数据库逻辑结构设计 在以上数据库概念结构设计的基础上,进行数据库的逻辑结构设计,健身馆教练预约系统的数据库中各个表的设计如下所示: 图15 类关系图4.4.4数据库物理结构设计(1)管理员信息表表1 管理员信息表主键是admin_name,为管理员的姓名,其数据类型为varchar,可变字符长度,针对不同的用户名设计。admin_psw是管理员的密码,由于不同的管理员希望设置自己喜欢的密码,对于其不同长度也将其设为可变字符长度。(2)会员信息表表2 用户信息表其中user_name是主键,表示用户名,其数据类型根据各用户名的不同特点,设计为可变字符长度。psw是用户的密码,数据类型选择可变字符长度,原因和管理员的密码设计相同。sex是用户性别,数据类型为char。age是用户年龄,email是用户的电子邮箱,tel是用户的电话号码,byear、bmonth、bday分别为用户的出生年、月和日。(3)教练信息表表3 教练项目信息表其中trainer_id是主键,表示教练的编号,数据类型设为smallint,教练编号为递增显示。trainer_name为教练的姓名,item_name是健身馆中开设的项目的名称,cost为该项目的价格。(4)预约信息表表 4 预约信息表其中preengage_id是主键,自动递增编号,表示预约信息的编号,datetime是进行预约的时间,pyear、pmonth、pday、beginhour分别为开始的年、月、日和具体的时间,paid表示是否付款。(5)留言信息表表 5 留言信息表其中word_id为留言编号,为主键,自动递增生成,word为留言内容,datetime为留言时间。4.5代码设计、输出设计、输入设计等4.5.1 代码设计 在本系统中,对教练编号、预约编号以及留言编号的设计均采用smallint的数据类型,这样可以使编号自动递增生成。便于查询和管理。教练姓名、用户姓名均采用varchar可变字符长度,减少约束,便于系统用户同意使用,不容易产生冲突。4.5.2 输入设计 (1) 在用户进行教练信息查询时,设计时选择下拉列表框这一控件,使得用户在所提供范围内选择所需教练以及其详细健身项目和价位。这样的设计,在用户使用过程中不容易出错,同时,方便用户的选择。 图16 教练信息查询界面(2)进入详细预约信息界面 在查询结果的输出界面上,点击教练姓名,进入该教练的详细预约信息界面。该界面的设计对培训时间的选择采用下拉框,这样,方便了用户的选择使用,同时不容易产生输入信息的不合法化,导致错误和为用户的使用带来不便。 图17 详细预约信息界面4.5.3 输出设计 点击查询教练按钮后,显示满足条件的教练的输出设计。在该页面的设计中,对此时显示出的教练姓名采用超链接,点击教练姓名,方可进入该教练的预约界面。此种设计,使用户对自己的操作流程熟悉,不容易产生错误。同时也带来了操作的便捷性。 图18 满足查询条件的输出界面4.6信息系统体系结构及物理配置方案设计 本次课程设计的健身馆教练预约系统,采用三层架构设计,它的工作原理如下图所示:健身馆教练预约系统操作界面ASP代码SQL server数据库提交操作信息返回处理结果生成SQL语句操作数据库返回操作结果用户界面功能代码数据存储 图19 本系统的体系结构 采用三层架构,用户界面层通过统一的接口向业务层发送请求,业务层按自己的逻辑规则在请求处理之后进行数据库操作,然后将数据库返回给用户界面层。在以上基础上,实现了用户界面与数据存储的相互独立,用户界面层甚至可以不知道数据库的结构,而只是通过接口实现其操作。这种方式增加了数据库的安全性,同时也降低了对用户界面层的开发要求,在操作中不需要进行任何数据库操作。4.7软件开发工具选择 本系统的开发软件平台为:操作系统为Windows 2000/XP,程序运行环境为IIS 5.0,同时后台数据库采用SQL Server 2000,调试环境为Frontpage 2003。本系统使用Rational Rose 进行UML建模,使用ASP编写脚本。系统以Web界面与用户交互,为用户提供信息,并支持用户的操作,同时通过数据库管理系统来存储信息数据。5系统实施5.1典型程序设计说明5.1.1 部分公共模块的设计说明本系统的设计采用模块化的思想,把一部分需要频繁使用的页面代码,单独建立文件,在需要引用时插入即可,这样避免了相同代码的重复书写,提高了效率和正确性。(1) 本设计中,把数据库连接代码单独建立为一个文件(ttjsg.asp),在一些页面与数据库操作相关时,将这一数据库连接代码文件插入所需页面中即可。相关代码如下:set objconn=server.createobject("ADODB.connection") objconn.open "DSN=ttjsg;uid=sa;pwd="(2) 用户页面头文件(head.asp),设计固定的页面头文件,在各个显示页面中需要页面头文件的页面中插入本页面即可。本文件中包含了图片和一些到达其它页面的超链接。设计效果如下: 图20 用户页面头文件(3) 管理员页面头文件(admin_head),管理员登录后所可使用的权限不同于用户,设置与用户页面头文件中不同页面的超链接。设计效果如下: 图21 管理员页面头文件(4) 页面尾文件(foot.asp),同页面头文件一样,它也是在各显示页面中插入应用,其中包括的健身馆的名字、联系电话和登录到管理员界面的超链接。设计效果如下: 图22 页面尾文件(5) 注销文件(logout.asp),当用户离开系统时,为保证系统安全,使用注销功能。主要代码如下:session("user_name")=emptysession("admin_name")=emptyresponse.Redirect("index.asp")(6) 用户登录时的判定,本设计中的一些页面需要在登录后才可使用,这就需要判定当前访问者是否为合法用户。主要代码如下:if isempty(session("user_name") thenresponse.Redirect("error.asp")response.End()end if(7) 管理员登录时的判定,同用户登录的判定一样,部分页面功能只有是管理员才可使用,同样需要判定当前是否为管理员。相关代码如下:if isempty(session("admin_name") thenresponse.Redirect("error.asp")response.End()end if5.1.2 部分主要功能设计代码 (1) 教练信息查询,当用户登录成功后,也可使用教练信息查询功能,其运行界面如下:图24 教练信息查询界面主要代码如下:<%set_trainer=request.Form("set_trainer")set_cost=request.Form("set_cost")%><%if set_trainer="" and set_cost="" then response.End()else%><%set rs_search=server.CreateObject("adodb.recordset")sql = "select * from trainer "if not (set_cost = "不作要求" and set_trainer = "所有" )then sql = sql & "where "end if'response.Write(sql)'打开数据库rs_search.open sql,ttjsg_conn,3,2if rs_search.eof or rs_search.bof then searchok=0else searchok=1end if%>(2)注册功能在登录界面中,非用户可以点击注册,进行用户注册,设计运行界面如下:图25 用户注册运行界面主要代码如下:<select name="byear" class="select_filed" id="byear" tabindex="7" size="1"> <%for i=1940 to year(date)-3%> <option value="<%=i%>"><%=i%></option> <%next%> </select>年<!- 生成月 -> <select name="bmonth" class="select_filed" id="bmonth" tabindex="8"> <%for i=1 to 12%> <option value="<%=i%>"><%=i%></option> <%next%> </select>月 <!- 生成日 -> <select name="bday" class="select_filed" id="bday" tabindex="9"> <%for i=1 to 31%> <option value="<%=i%>"><%=i%></option> <%next%> </select>日</td><form name="form1" method="post" action="reg2.asp">(3) 添加教练 图26 添加教练页面相关的主要代码如下: <form name="form1" method="post" action="admin_addnewchk.asp"><td width="72%"><input type="text" name="item_name" id="item_name" size="20"></td><td width="26%"><input type="submit" value="添加" class="button_" name="addnew" id="addnew"></td><td width="72%"><input type="button" value="清空" class="button_" name="reset" id="reset"></td>(4)管理教练信息 图27 管理教练信息界面5.2测试方案及切换方式设计5.2.1 测试方案 (1)用户名合法化判定 在用户注册时,系统会检查用户名是否合法,本系统规定用户名只能使用字母、数字和下划线。通过如下程序进行判定,当用户名出现非法字符时就报错退出。<%function is_name(name)dim i, cis_name = truefor i = 1 to len(name)c = Lcase(Mid(name, i, 1)if InStr("abcdefghijklmnopqrstuvwxyz_", c) <= 0 and not IsNumeric(c) thenis_name = falseexit functionend ifnextend function%>(2)培训项目费用的输入测试 本系统中,管理员在添加教练的详细信息时,对费用的输入都必须是数字,且都设置了费用上限,不大于四位数字,应用以下代码实现。if not IsNumeric(cost) then err(1)="费用必须是数字"if len(cost) >4 then err(2)="费用不能多于4位数" (3)教练信息输入测试 管理员在添加教练详细信息时,需要对其标号、姓名进行约束,约束条件如下代码所示,保证了数据库中数据的一致性,不易出错。if len(item_name) > 10 then err(1)="教练编号不能超过10个字符"if len(item_name) 8 then err(1)="教练名称不能多于8个字符"if not IsNumeric(cost) then err(2)="费用必须是数字"if len(cost) >4 then err(3)="费用不能多于4位数" (4)预约条件测试 根据本设计中系统的实际要求,预约需要输入具体的年、月、日时间,同时为了防止冲突的产生,预约需提前48小时进行。其测试实现通过下列代码实现。 if not isdate(pyear & "-" & pmonth & "-" & pday) thenerr=1elseif datediff("h",now,pyear & "-" & pmonth & "-" & pday & " " & ptime & ":00:00") < 48 thenerr=1end if end if5.2.2 切换方式设计本设计采用直接式来进行切换,直接应用本系统进行日常业务的处理,和整个业务流程工作的完成。6 系统评价6.1系统优点使用UML面向对象的可视化建模语言,采用模块化编程的思想,对普通用户和或管理员权限有严格的区别和要求。在Internet快速发展的基础上,远程预约通过网络实现用户对教练的预约和体育馆教练的基本管理功能。实现了用户的教练信息查看、教练信息查询、预约和留言功能。同时实现了管理员对教练信息项目的添加、修改和删除。6.2 系统以后需要改进的地方在我的这个健身馆预约系统中,只是实现了对用户、教练和项目这些基本信息的查看、查询、删除、修改和预约。但现实生活中,用户可以在预约后对自己的预约信息进行修改,甚至删除,这些功能我在本次设计中未能实现。其次,现实生活中,健身观中有可能出现教练与项目属于一对多、多对多的关系,这在本系统的设计中未能体现。以上所述,是我认为本次系统设计中的缺陷,我将在以后的学习中,多积累解决这些问题的知识,努力实现以上未能实现的功能。7总结从12月30号到1月12号我们进行了为期两周的信息系统分析与设计课程设计,通过这次的课程设计使我熟悉了使用UML系统建模语言,ASP编程的基本思想,对ASP+SQL Server这种常用的Web开发方式有了基本的认识。在本次课程设计中使用了SQL Server数据库服务程序,能熟练使用了SQL Server数据库的连接操作方法。本次设计中,我选择做了一个健身馆预约系统,在这个系统中有两个主要功能模块,一个是用户部分,另一个是管理员部分。在系统设计阶段进行了数据库需求分析和数据库概念结构设计,近一步认识了数据库在一个信息管理系统中的重要性,合理的数据库结构设计可以提高数据存储的效率,保证了数据的完整性和一致性。在系统的建模过程中,对活动者和用例的分析,都不是一次性完成的,通过的不断地分析系统的功能,进一步细化的发现各活动者及其用例。使我认识到了使用UML语言进行建模是一个不断需要完善的工作。在实现各个功能模块的编码过程当中,让我深刻认识到理论知识与实际情况相结合的重要性。有的功能模块中,应用老师的程序也不能运行,经过仔细检查,在老师和同学的帮助下反复调试程序,会发现字段不符合数据库设计的要求,或者是缺少对字段非空的判断等等之类的错误。整个编程的过程之后,感觉到代码的调试过程也是非常重要的一部分,它可以让我从全局把握整个程序的结构,深刻理解每个程序部分,避免类似错误在以后发生。整个设计功能基本实现的过程中,我认识到了使用UML建模语言自己还有很多不足的地方,同时感觉到自己所学的编程知识还远远不够,很多希望实现的功能不会,这让我认识到在今后应该更广泛的学习,更深入的理解。参考文献:1 董兰芳,刘振安.UML课程设计.北京:机械工业出版社,2005. 2 卫红春,方明.信息系统分析与设计.西安:西安电子科技大学出版社,2003.3 曹衍龙.ASP/ASP.NET数据库开发实用工程案例精选.北京:人民邮电出版社,2005.

    注意事项

    本文(信息系统分析与设计课程设计(共29页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开