标题：ASP.NET权限管理系统
1.1 软件开发现状分析
新员工没人带，老员工忙着救项目、就算是有空老员工也有疲倦的时候，也有不愿意带人的，也有不愿意把 简单的东西反反复复教人的，一年又一年，一批又一批人换来换去，很有可能也懒的带。
有些人喜欢与别人交流，但是大部分IT软件开发人员习惯了与计算机沟通，很可能有些不适应与人沟通交流，或者忙着解决他在技术上遇到的难题等。
1.2 功能定位、建设目标
一） 实现简易的单点登录功能，用户只要记住一对用户名密码就可以：
随着信息化项目、数字化项目越来越多的被研发实施，需要记住的用户名密码变得越来越多，随着公司业务规模的扩展、公司的发展壮大或者本身是一个大型的集团公司，内部前后实施的信息化系统会越来越多，这时也需要记忆越来越多的用户名密码，而且后台的管理越来越变得复杂、甚至是变成累赘。
二） 多个管理系统可以用统一的一套后台管理工具进行管理：
管理人员、开发人员、测试人员、实施人员，反复要开发N多个大同小异的后台管理工具、开发、测试、修改错误、改进功能，没完没了，全国各地N多的公司，N多的开发人员，在这个没多大价值的事情上浪费了N多的精力，实施维护人员还要安装、实施、学习、维护N多个大同小异的后台管理工具，需要很高的学习与维护成本
三） 建立信息化数字化项目的数据中心，提高基础数据的重复利用率：
随着同一个公司内部实施的信息化系统数量的增加、遇到了将同样的基础数据录入到N多个管理系统中的问题、设想一下，将一个用户信息录入到10-20个系统里，有一个基础数据有变化，需要同时在N多个相应的系统里进行修正，这是一个很复杂且毫无意义的、毫无创新的重复工作。
四） 提高同一个公司内开发的多个软件项目的兼容性、可维护性：
有规模的软件公司内部大多是采用项目组的形式管理和开展日常开发工作；但是由于沟通能力、沟通技巧、沟通效率、项目时间紧等各种复杂的原因，最终会导致各个项目组之间的分工、沟通、交流不充分，各个项目组之间开发出来的管理系统都不能互相兼容，功能模块都存在重复建设、分工不明确、职责不明确等问题。
五） 努力实现各软件公司研发的功能模块的可集成性：
同一个大型客户，往往前后会购买多个软件公司生产的功能模块、信息管理系统，但是这些公司之间的功能模块往往也会存在不兼容的问题，数据重复录入，基础信息无法共享的问题，管理维护多个软件提供商提供的产品、功能模块，也带来了繁杂的后期维护、功能集成方面不兼容的后患。
六） 成为广大软件开发爱好者开发管理类软件的基础组件之一，提高生产力：
专业软件公司的信息化系统，往往是多个人维护了多年，不仅仅是功能复杂、关联繁杂，这时若遇到开发一个小型的软件项目或者一个简单的软件项目，往往没有能力在短时间内干净利落的弄好，就像俗话讲的麻雀虽小五脏俱全。
本系统提供一个与任何业务系统毫无关系的、功能定位明确的轻量级的快速开发平台。
本系统有严谨的数据库设计文档、有比较完善的配套参考资料、功能讲解，同时有偿提供全部的源码、注释及配套工具及说明文档。
七） 成为管理类软件开发爱好者的入门者学习提高的标准教程：
本系统是符合严格的分层原则、设计模式、数据库设计规范、编码精良，思路严谨的解决多种数据库兼容性问题的小型软件项目。
同时本系统又是日后开发管理系统的基础的必要组成部分，将来可以派上用处的可能性很大，值得学习，值得长期维护。
编码简单易懂，方便初学者学习入门。
编码简单易懂，方便后期的维护改进。
1.3 目标用户群体
一）政府机构、集团公司：
可成为大型软件项目中的统一的组织机构、员工、客户、岗位角色分配、工作流程定义、权限分配的集中规划、配置、日常管理工具；可成为整个组织内的统一的信息化建设的基础数据的建设、管理、维护的工具；基础数据中心的管理维护工具，同时可以成为建设简单高效的单点登录系统的核心组成部分。
可成为众多信息化技术服务提供商的新开发软件项目的规范要求、整体约束的依据及配套工具、应用系统开发的标准参考模型；达到整个组织内部使用的软件产品、软件项目有一定的标准规范、能满足基础信息的共享，管理工具统一化的要求，杜绝相同数据的重复录入、重复管理，提高工作效率。
二）中小型软件开发公司、技术咨询公司：
可以成为统一的、稳定的、标准的、功能完善的后台配置权限管理工具，降低多个软件项目及多个项目组的开发成本、维护成本、项目实施成本，项目管理成本，可以显著提高工作效率，节省开发周期及开发费用投入，减少相应的测试维护改进功能的时间成本，同时可以减少由于开发人员变动带来的项目风险。
同时也可以成为新手的基础参考模型、分层理念、多数据库支持的参考模型、编码规范要求、异常处理、C\S和B\S系统的兼容性设计的参考。
最大程度避免重复开发，原地踏步，反复原地踏步，杜绝每个开发人员、每个开发项目组，都搞一套不兼容的权限管理体系、不兼容的基础用户数据等等，使得公司内部的产品、项目、功能模块之间有更高的兼容性。
三）培训教程、大学课外教程、新员工入职培训材料：
本项目设计严谨、简单易读、编码规范、功能实用，可以作为IT培训机构的基础培训内容，同时本项目有一定的通用性及规范性案例的价值，可以作为新员工入职前的基础培训内容之一、编码规范的参考、数据库设计、分层设计、单一职责原则、设计模式等等的入门参考级教程。
能达到节省培训成本，节约在培训方面的投入，有一个统一规范的入职前培训教材，可以减少由于新员工的培训导致对开发中的软件项目的进度、进展的负面影响等。
四）管理类软件开发爱好者：
本项目设计思路严谨、简单易读、编码规范、功能实用，并且是开发管理类软件的基础性的管理工具，有一定的通用性及规范性方面的参考价值，同时可以作为快速开发中小型软件项目的基础，可以通过模仿、复用等显著缩短项目开发周期，达到快速见效的目的。
此工具经过多年的不断改进维护，经过了多个软件项目的实战考验，能满足不同规模软件项目的灵活配置、灵活管理、快速开发、快速实施的要求，是个不错的应急管理工具；同时有成熟完善的组织机构管理、用户管理、角色管理、模块（菜单）管理、权限配置分配管理的设计严谨、运行稳定的功能模块。
1.4 系统优点
一）经过多年的实践不断优化、精心维护、运行稳定、功能完善：
能经得起不同实施策略下客户的折腾，能满足各种情况下客户的复杂需求。
二）编码实现简单易懂、符合设计模式等理念：
上手快，见效快、方便维护，能控制软件项目后期维护风险。
三）有严谨的分层理念、完全符合主流的SOA理念架构：
程序可以采用不同的实施策略、架构需求，方便维护、方便扩展。
四）符合RBAC的权限理念、同时也能满足国内小型软件项目的灵活性需求：
不仅符合国际通用标准，又能满足国内的小型软件项目的灵活设置需求。
五）不仅支持多数据库也支持多种开发语言、多语言界面：
支持B/S、C/S系统，可以支持Java语言开发项目的接口功能，SQLServer、Oracle数据库等。
六）提供全部的设计文档、源码实现、配套说明文档：
相关设计文档、配套资料可以在不同软件项目中反复使用，提高工作效率。
七）完全支持最终用户的个性化2次开发实际需求：
提供完善的接口函数调用说明、开放接口、开放源码、开放数据库结构设计。
1.5系统架构大局观
  通用权限管理系统架构大局观
1.6 物理结构图
  通用权限管理系统物理结构
1.7逻辑结构图
  通用权限管理系统逻辑结构图
1.8 系统运行环境配置
一）管理端：
本系统以微软的C#.NET编程语言开发设计，所以需要在微软的网站下下载最新的.NET Framework运行环境，管理程序需要运行在Windows操作系统上。
下载微软的.NET Framework运行环境。
二）后台数据库：
本系统支持多种数据库系统，例如SQLServer、Oracle、MySql、Access、Db2、SQLite可以按用户的使用习惯，任意选择其中一种数据库系统。
目前提供 SQLServer 版本的数据库，其他版本的数据库需要用户自己通过导入导出脚本语言的方式进行处理。
1.10相关程序文档结构说明
01.DotNet.Utilities：通用类库部分，经常用的类都封装在这里，不断完善，不断积累，非常好用。
02.DotNet.DbUtilities：数据库访问部分，这里能实现多种数据库的访问，而且实现了换数据库彻底不改代码的功能。
03.DotNet.Model：模型定义部分，主要是系统都处理哪些模型，说俗点儿就是哪些类。
04.DotNet.Business：商业逻辑部分，这里主要是编写核心的商业逻辑，这个积累是很重要的。
05.DotNet.IService：服务接口定义部分，这里主要声明，有哪些服务方法，都提供什么接口。
06.DotNet.Service：服务实现部分：这里就是SOA体系的服务程序部分，对外提供的服务，都通过调用这里实现。
07.DotNet.RemotingServer：远程服务部分：主要是实现了Remoting的服务器端部分。
08.DotNet.RemotingClient：远程客户端部分：主要是实现了Remoting的客户端调用部分。
09. DotNet.WCFHost： WCF服务器端用例程序。
10. DotNet.WCFClient：WCF客户端调用用例程序。
11.DotNet.WindowsService：Windows服务部分：主要是以Windows的服务的方式实现具体服务。
12. DotNet.WebService：Web服务部分：把服务程序以Web服务的形式发布部分。
13.DotNet.WebService.Client: Web服务的客户端调用部分：主要是实现WebService的调用实现部分。
14.DotNet.WinForm.Utilities：传统的C\S项目部分，通用组件，采用这些组件快速提高开发效率。
15.DotNet.WinForms：传统的C\S项目部分，每个子程序可以单独运行，也可以变成母程序的模块。
16. DotNet.WinForm：传统的C\S项目部分的主程序部分。
17.DotNet.DesignDocument: 本系统权限设计部分相关文档，多年来收集识累，各种不同类型的权限需求，不同层次，不同等级的权限设计思路对比分析。
18.DotNet.DataBase:本系统数据库文件，SQL Server 2005 SP3 版
19.DotNet.WinForm.Example：标准例子C/S程序部分：方便别人学习系统架构，可以快速入门，有简短的样例代码。
20.DotNet.WebForm.Example：标准例子B/S程序调用DLL部分：方便别人学习系统架构，可以快速入门，有简短的样例代码。