电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

具有权限控制的通用菜单的设计与实现 计算机专业

23页
  • 卖家[上传人]:夏**
  • 文档编号:509570686
  • 上传时间:2022-11-05
  • 文档格式:DOC
  • 文档大小:483.50KB
  • / 23 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、题目:具有权限控制的通用菜单的设计与实现 摘 要本文通过分析Windows桌面应用程序中权限控制和菜单的基本功能,利用C#程序设计语言及SQL Server数据库技术给出一种具有权限控制的通用菜单的解决方案并加以实现,形成一个可以运用到实际系统中的通用应用程序;并且从需求分析、系统分析以及模块化设计等方面加以阐释。关键词: 应用程序;权限控制;菜单;C#;数据库 目 录一、系统概述1二、有关概念2三、系统分析3(一)需求分析3(二)系统分析6(三)系统分层结构7四、系统设计8(一)系统数据库设计8(二)系统流程图设计12五、系统实现13(一)系统数据库实现13(二)系统程序实现13六、关键技术18(一)使用递归调用法遍历多级菜单对象18(二)采用三层(表示层,业务逻辑层,数据访问层)结构模式组织设计程序。18七、总结19致谢20参考文献215一、系统概述目前基于Windows的桌面应用程序在企业、机关部门、学校、医院等各种行业中都起着举足轻重的关键作用,它可以大大提高工作效率,节约成本。因此Windows桌面应用程序的快速开发就成为各个行业的迫切需求。而在当今Windows桌面应用程序

      2、的实际应用中,用户权限控制功能和菜单功能都是应用程序中最基本的功能;在应用程序的开发中,权限控制模块和菜单模块也处于程序整体设计的核心地位。所以,非常有必要把权限控制和菜单模块在应用程序的开发中单独提取出来,进行详细而周密的分析,形成相对独立且通用的程序模块组件,以便轻易地重用于其他实际系统中。这样,可以大大提高应用系统的开发效率,加速应用系统的开发周期,节省应用系统的开发费用。同时也增强了软件复用程度,降低了软件耦合度,对于Windows桌面应用程序的开发有非常重要的实际意义。二、有关概念Windows桌面应用程序:使用 Windows 窗体设计器来设计窗体,创建基于 Microsoft Windows 的应用程序和客户机/服务器应用程序。权限控制:管理系统中分配给不同用户不同的访问权限,即控制用户是否拥有系统中各功能的使用权。菜单:通过存放按照一般主题分组的命令将功能公开给用户。C#: C#(读作 C sharp)是一种编程语言,它是为生成在 .NET Framework 上运行的多种应用程序而设计的。C# 简单、功能强大、类型安全,而且是面向对象的3。Visual Studio

      3、2005:Visual Studio 是一套完整的开发工具集,用于生成 ASP.NET Web 应用程序、XML Web Services、桌面应用程序和移动应用程序3。SQL Server 2005:Microsoft SQL Server 2005 是用于大规模联机事务处理 (OLTP)、数据仓库和电子商务应用的数据库平台;也是用于数据集成、分析和报表解决方案的商业智能平台4。三、系统分析(一)需求分析1、需求概述项目名称:通用权限菜单模块(CommonMenuModule),简称为CMM。项目需求:系统默认设定一个超级管理员帐户sa及其密码,并且sa账户是唯一且不可删除的,超级管理员账户具有系统最高权限(即所有功能权限)。初次登陆系统在没有建立任何账户时,用户可以使用超级管理员账户登录系统。本系统有两种权限模式供用户选择,分别为用户权限模式和角色权限模式。在菜单中单击哪种模式就默认当前使用这种权限模式。用户模式:对于普通用户,登录后可以新建用户账户并激活帐户,未被激活的账户即使拥有菜单权限也无法登陆系统。新建的用户帐户可以为之一次性分配主菜单和导航子菜单项的权限状态,保存后菜单权

      4、限立即生效;即当前被修改权限的账户在登录后只能看见刚才被分配到的菜单项,而未分配权限的菜单项不会显示并且也不可用。角色模式:由用户新建角色,并为新建的角色分配菜单项的权限状态。然后可以给每一个账户添加相应的角色关系,从而使每一个用户都继承某种角色的权限,实现用户权限按角色分配。角色可以有多个,且每种角色的各个菜单项权限状态可以不同,达到按角色分配多个账户的目的。此外,在用户权限模式中的各个账户或角色权限模式中的各个角色的菜单项标题也可以自定义并修改,方便用户的使用。对于开发人员,登录后不仅拥有普通用户的所有功能,还可以对主菜单项、导航菜单项和导航菜单子项进行添加、修改、删除等操作。而且这些操作都无需在代码或数据库中完成,都是以友好界面来表示的,甚至在技术上只要求会操作计算机的人员即可完成。2、功能模块需求分析通过对整个系统需求和流程的分析,得到系统的功能模块图(如图1)。 图3-1系统功能模块图用户登录模块:通过用户输入账户名及密码验证当前用户是否有登录系统的权限。验证成功,进入主界面;验证失败,给出提示信息。角色权限模式管理模块:用户可以添加角色,修改和删除在角色列表视图中选定的角色

      5、名称。并可以通过对菜单项权限树形视图中各个项的勾选来完成对当前选定角色名称的菜单项权限状态的具体配置。相应的勾选状态也会实时地在菜单项权限列表视图中更新选择。用户也可以更改当前选定角色名称所对应的。3、各个菜单项的名称还可以为已存在的账户名设置已添加的角色,设置好角色后,此角色所对应的各个菜单项的权限也随之赋予给该账户名,当然用户也能在权限管理列表视图中删除选定的权限关系。在权限关系列表视图中用户还可以对各个账户名所对应的角色名进行调整,相应的角色名所对应的各个菜单项权限也会同步更新。用户权限模式管理模块:用户在此模块可以添加账户名称和密码,并可以修改所对应账户的激活状态,当状态为激活时,无论有无菜单项权限都可进入主界面;当状态为未激活时,无论有无菜单项权限都无法进入主界面,但有相应提示信息。当然用户可以删除所选定的账户。通过菜单项权限树形视图对各个项权限状态的设置,用户可以给当前所选定的账户名分配各个菜单项权限,菜单项权限列表视图会实时更新用户所分配的各个菜单项的权限信息,在此视图中还可以更改各个菜单项名称以适应不同用户需要。以下三个有关菜单管理的模块主要用于开发人员在系统开发阶段以

      6、及日后维护新增功能时对主菜单、导航菜单和导航子菜单的配置。对于普通用户可以通过菜单权限设置屏蔽这三个模块的功能。主菜单管理模块:开发人员可以通过界面的方式维护主菜单,包括执行对主菜单项的添加、修改以及删除等操作。在添加或修改新菜单项时,可以通过选择已添加的菜单项作为父菜单,或是直接创建为根菜单项。导航菜单管理模块:与主菜单管理模块类似,开发人员可以以界面方式维护导航菜单,并对导航菜单的部分属性进行修改。如图标或尺寸等。导航子菜单管理模块:与导航菜单管理模块类似,开发人员同样能够以界面方式维护导航子菜单,并对导航子菜单的部分属性进行修改。当添加或修改一个导航子菜单项时,可以从所有主菜单项中选择导航子菜单项的名称,并且可以选择导航子菜单项的父菜单。用例需求分析在需求分析时,用例图(Use Case)是一种常用的建立业务流程模型的方式。根据需求,可以得到通用权限菜单模块系统的业务流程用例图,如图3-2所示。 图3-2系统用例图从图3-2中可以看到本系统包括普通用户和开发人员两种角色,这些角色分别进行不同的操作,根据这些操作建立了相应的用例,对各个用例的详细描述如下。用户登录用例:用户登录验证

      7、成功后,方可进入主界面进行下一步操作;如果登录失败,则重新开始本用例。用户登录时需要输入账户名和密码,账户名和密码的填写只有与管理员设定一致时才能通过验证。用户修改密码用例:用户需要输入原密码、新密码、重复新密码,只有原密码匹配且新密码和重复新密码相同时方可将新密码替换为原密码。用户模式权限管理用例:用户需要添加新账户时,可以使用本用例。需要输入账户名、账户密码、重复账户密码并可以选择所添加账户的激活状态,默认为未激活。只有账户名不与原有账户名重复,账户密码和重复账户密码相同且密码符合简单安全规则时方可建立新账户。当选中某个账户名时可以执行删除,赋予菜单项权限状态,修改相应菜单项名称等操作。修改菜单项名称时菜单项名称不能为空,否则修改失败。此外,当用户希望选择使用用户权限模式时,也可以在本用例中实现。角色模式权限管理用例:用户需要使用角色权限模式时,使用本用例。用户可以新建角色名称,为角色赋予菜单项权限状态,删除当前选定的角色名称,并修改当前选定角色名所对应的菜单项名称。在添加新角色时,系统默认角色名称为“未命名”,并且角色名称不能相同。用户也可以为账户设置或修改角色。一个账户只能对应

      8、一种角色,而一种角色可以适用于多个不同账户。当然可以删除角色与账户这种对应关系。需要注意的是删除角色时,如果已经为角色分配了关系,那必须先手动删除所有分配了的关系,然后才能删除此角色;否则删除角色失败。开发人员主菜单管理用例:开发人员在设计系统时,需要添加、修改主菜单,与主菜单有关的操作需要使用本用例。添加新菜单时,需要输入菜单项名称、菜单项文本等信息,然后可以选择父节点或根节点,已建立相应的菜单项。选择父节点时,不能同时选中根节点。菜单信息也不能为空。开发人员导航菜单管理用例:与主菜单管理用例类似,开发人员对导航菜单进行添加、修改、删除等操作时使用本用例。导航菜单有关信息不能为空。开发人员导航子菜单管理用例:与主菜单管理用例类似,开发人员对导航子菜单的操作使用本用例。在添加子菜单时必须选择一种主菜单项名称和一种导航父菜单项名称。只有这样才能确定一个导航子菜单项。子菜单的信息不能为空,相应属性的填写也需要符合各属性要求。如,坐标属性值必须为数字等。(二)系统分析在需求分析的基础上可以进行系统分析,系统分析主要是对系统数据库的分析,包括系统数据库中确定各实体及实体间关系。数据库系统E-R

      9、图如图3-3。 图3-3系统E-R图根据需求分析,规划出系统数据库中的实体有操作员(即用户)、权限角色、权限关系、主菜单、导航菜单、导航子菜单。其结构如下:操作员:Id号,账户名,密码,权限列表,激活状态。权限角色:Id号,角色名,权限列表。权限关系:Id号,操作员Id号,权限角色Id号。主菜单:Id号,名称,文本,是否根节点,父节点。导航菜单:Id号,名称,文本,图片,宽度,高度,X轴位置,Y轴位置。导航子菜单:Id号,名称,文本,图片,宽度,高度,X轴位置,Y轴位置,父菜单文本。系统数据库E-R图中有四个联系类型,其中有两个1:1联系,两个1:N联系。(三)系统分层结构本系统采用的是B/S三层架构,包括表示层,业务逻辑层,数据访问层。本系统三层结构模式如图4-4,从左到右为自顶向下。 图3-4系统三层结构模式图(1)系统表示层表示层是用户与系统的接口层,用户通过此层的设计实现用户与系统的交互。它利用友好界面显示数据和接收用户输入的数据,为用户提供一种可视化的交互操作界面。本系统中项目“CommonMenuModule”含有所有与界面有关的类及其代码,作为表示层。(2)系统业务逻辑层处于表示层与数据访问层之间,它在三层架构中起到承上启下的作用。整个软件有关逻辑设计的代码都要在此层实现。本系统中项目“IBLL”和项目“BLL

      《具有权限控制的通用菜单的设计与实现 计算机专业》由会员夏**分享,可在线阅读,更多相关《具有权限控制的通用菜单的设计与实现 计算机专业》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
     
    收藏店铺
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.