[转]3天搞定的小型B/S内部管理类软件定制开发项目【软件开发实战10手续详解】

正文转自:http://www.cnblogs.com/jirigala/archive/2010/10/07/1845275.html

RDIFramework.NET ━
.NET飞快音信化系统开发框架

2010-10-07 21:39 by 通用C#系统架构, 56866
阅读, 167 评论,
收藏
编辑

第2章 产品概述 

图片 1 

 

 

  第2章 产品概述 

   十一休假,格拉斯哥南湖边逛了一圈只好用人山人海来描写,南开紫金港校区也逛了一圈风景如画,建设得真不错很棒,沐日就去了那2个地点,然后在家里陪爱人、看孩子、洗尿布、打了几局星际争霸,在网上接了一个B/S架构的内部管理类定制软件、Tmall上收了600元费力费后就从头走动了、现在把全体开发进度讲解分享如下文。

   2.1 产品用途

  RDIFramework.NET,基于.NET的飞速音讯化系统开发、整合框架,为商家或个人在.NET环境下神速支付种类提供了强有力的扶助,开发人士不须要支付序列的基础功用和公共模块,框架自身提供了强硬的函数库和开发包,开发人士只须集中精力专注于事情部分的开支,因而大大升高开发效用和节省开发开支。框架选拔当下最主流的C#言语开发形成,辅助多样数据库类型,辅助WinForm与Web。使用RDIFramework.NET能增强管理类软件系统的完好品质、进步模块与模块之间的兼容性、提升代码的重复利用率,使软件系统架构越发客观、品质更是过硬,使得劳动成果最大程度上再次使用。框架基础模块包罗:强大灵活的权力决定组件,统一的模块分配与治本组件,灵活易用的工作流组件、集中的数目字典管理组件,自动升级组件,各类常用的商贸控件(分页控件、组合查询控制、图片浏览控件等),强大的根据本框架的代码生成器,充分的基本功类库与费用援助工具、内置MiNiWeb浏览器等各基础常用功用组件,下步将会考虑整合报表框架以及多语言的支持等。应用系统建立在此框架之上,选取构件式、可复用开发,节省开发成本,加速开发速度,在软件开发上更好的姣好多快省。

 

   2.2 产品亮点

1、本产品系小编多年经验积累而成,且使用于四个实在项目中,经过漫长持续修改,完善,优化而成,目录已具有卓绝数量的经贸用户选用。

2、强大灵活的权限决定,单点登录,授权机制符合RBAC(基于角色的访问控制),权限不仅能控制到菜单(作用模块)级、操作权限级,同时决定到了数据级,授权范围级(类似数据库中的被授权用户在赢得指定权限的后还可以够将点名权限授予其余用户。)。

3、统一的模块配置、分配。使系统开发思路更为明显,模块分配更易于,并行开发,真正进步开支成效。

4、匡助八种数据库开发,各个界面采纳。协助B/S、C/S系统,可以援助Java语言开发品种的接口作用,SQLServer、Oracle数据库等。

5、提供统一的系统升级组件,计划简单。

6、提供各大型商贸常用控件,让开发更简约,更高效,让你注意于自我业务,同时提供基于框架的强硬的代码生成器(使用数据库与PowerDesigner设计源文件三种办法展开转移),对开发成效的升迁凿凿有据。

7、框架选择SOA理念,服务层可配备为WCF、Windows Service、Web
Service、Remote等。

8、客户端可根据实际产品须要定制为:WinForm、WebForm、WPF、Silverlight等。

9、编码不难易懂,适合常用设计方式,注释详细。提供所有的设计文档、源码完结、配套表明文档,可以在不一样软件项目中往往使用,提升工作效用。提供周密的接口函数调用表明、开放接口、开放源码、开放数据库结构设计。

10、二次开发简单,几分钟即可安顿一个种类(急迅、简单、高效、安全、可信)。完全帮忙最后用户的个性化2次支出实际必要,提供完善的接口函数调用表达、开放接口、开放源码、开放数据库结构设计。相关安顿文档、配套材料可以在差别软件项目中反复使用,升高工作效能。

 

客户必要

   2.3 产品运行  

  RDIFramework.NET(.NET快捷信息化系统开发整合框架)选择当下主流的C#言语开发设计达成,运行条件需.NET
Framework 4.0以上,使用WINDOWS 操作系统。借使你的处理器没有安装.NET
Framework 4.0,可以在开拓上边的链接举行下载安装。
  http://msdn.microsoft.com/zh-cn/netframework/aa569263.aspx
  本产品协助各样产品的数据库,如Sql
Server、Oracle、MySql等,可按照你的急需,采纳切合的数据库数据产品后台数据库。系统默许优先使用微软的Sql
Server 2008。

 

  
一个简练的品种管理音信的,添加、删除、编辑、查询等成效的已毕,把大的框架做好就足以,细节他会融洽完美好,想想也很容易的同等,本以为1天时间就足可以搞定了,结果足足干了3天才算与世长辞,由于客户也是软件开发人士,互换起来也比较顺畅一些,否则恐怕持续须要3天了。

   2.4 产品结构

  DIFramework.NET(.NET火速音讯化系统开发整合框架)产品框架结构如下图所示:

图片 2 

图2.4.1 产品框架结构 

 

   2.5 系统陈设

  本产品指出服务器操作系统为Windows 2003
Server或者Windows7。客户端操作系统为Windows
系统操作系统,运行框架须求.NET Framework
4.0及以上版本。网络浏览器支持IE8+及非凡浏览器,其余没有特殊要求。 

  
项目尽管很小,不过由于跟自己的主营方向是千篇一律的,同时也想陶冶一下做项目标老道程度有多高、有多快,所以也没嫌弃钱多钱少,开喜气洋洋心就把那一个体系初阶启动了。项目就算小但五脏俱全来描写了这么些生活了。

   很多要求的功能就算在急需里不曾提到,不过都是要求加强的,例如:

         01:系统的登录效能、这些是迟早要有些。

         02:记住密码功效,而且是亟需有加密功用的。

         03:退出系统的法力,总须求能安全退出系统的啊。

         04:用户管理效果,例如怎么样用户才能登录到系统里来?

         05:用户修改密码功用,停用功用,设置密码功效等。

         06:用户能够访问那个菜单等?

         07:用户有啥样操作权限等?

         08:角色管理职能,用户角色关系效果,角色的权柄功效。

         09:友善的菜系导航成效。

         10:没有权限的修好提示效果。

         11:附件的治本、上传、下载、删除等等。

         12:查询分页成效等等,即便都没建议,不过这一个成效都亟需盘活的。

 

 

全体开发思路

 

数据库分2个规划:业务数据 + 权限数据,相互不扰乱,互相相比独立部分。

全部连串分3个种关系人: 开发人士 +
系统管理员 + 操作人士,他们对系统各自的梦想值及操作的情节如下图。

为了急忙搞定项目,毕竟项目标预算很有限,所有有些效用模块能不付出就不付出,那大家就用现成的老到组件,通用权限管理体系,做为用户账户管理、权限管理

食谱管理的主旨器件,那样可以大大的提升工作作用,可以灵活配置管理那么些小型B/S项目新闻保管系列了。

图片 3

 

 

花色的切实可行用度创设步骤

 

步骤1:项目纵然很小,可是仍然按正统的软件开发步骤相比好,大家仍然针对先有陈设性后有付出的思路,先不急着写代码,大家先把数据库结构设计好,本系统应该只布置一个表就足以了,大家先要想好什么数据用哪些格式保存,都急需怎么着字段来代表各类品质,效果图如下,大家用了数据库建模工具PowerDesigner,来布署大家的事情模型中的数据模型吧,那就是所谓的开发上的世界模型呢,其实这些设计如故蛮紧要的,设计乱了背后都会乱套了。

图片 4

 

步骤2:通过用安顿好的模型,大家先手工建立相应的数据库及数据表。

图片 5

 

步骤3:下图是早已确立好的数码的成效图,Project是工作数据库、Project表是项目音讯表,前边的Base_Sequence
用于暴发系列及唯一排序号、Base_Comment
用于修改记录保留效用,那个并非再行设计,直接从UserCenterV30数目焦点里复制过来结构就足以了,为了在软件里突显一些数码出来,能够经过手工格局先录入一些示范数据,那样成功感会更加多一些、信心也更足一些,因为连忙就能够在软件里展现数据出来了。

图片 6

 

步骤4:生成好相应的数据表后,可以用代码生成器生成一些尚无稍微生意逻辑的代码了,所谓的丰硕、删除、修改、查询的代码都并非写了,直接用代码生成器生成好就足以了,就算那几个技术不怎么先进,不过省事方便,对技术的渴求也很低,生成好的代码也比较标准一些,而且还协理二种数据库,照旧蛮好的,若生成好后,数据库结构有变化了,也没涉及,重新生成一下就足以了,生成代码1分钟丰硕了,顶多是命名空间可能需求整治一些就足以了,属于是很经得起折腾的做法了。

图片 7

 

步骤5:将生成好的代码,复制到相应的岗位上,适当的修正一下命名空间怎么样的,因为是一个很小的品类,根本不用分层啥的,分那么多层也是多余的,其实分目录就够用可以了,若很懒惰的话目录都足以不用分了,分层其实更契合大型软件项目,小项目以见效最快为主,没须求搞个7-8个层,那里是是1个层也没分,只是分了有些索引,显得思路更清楚一些。

图片 8

 

步骤6:代码生成器不可能生成富有的代码,有些代码依旧有商业逻辑的,必要人工编写,其中ProjectManager.cs
中的代码就是有现实商业逻辑的代码,这有的代码不可以靠代码生成器自动生成好,需求按自己的急需开展编辑的,那里有2个作用,一个是询问效用的兑现、另一个是翻新数据时须求有修改记录的效应,需要详细笔录数据被转移的全经过,这一个代码都要求人工编写好,页面上会调用这一个代码。

图片 9

 

步骤7:接下去该是规划整个系统的菜单的时候,要求良好规划一下软件的食谱,到底要求有怎么着菜单,都叫什么名字?当然这一步也得以在在最终做,大家同通用权限管理组件能够灵活规划整个体系的菜系,基本上想怎么设置就怎么设置,想怎么托摘、想怎么排序都得以,规划菜单时会很爽,当然不仅仅是开发人员用起来爽、而且系统管理员今后维护时也会很爽,系统的一体菜单都得以灵活配置权力、可以灵活变动,而不是写死的菜单,未来不借助开发人士也得以灵活布置管理,灵活设置各样权力限制等等。

图片 10

 

步骤8:接下去,需求把相应的丰裕、修改、查询、删除效能页面做出来,可以设想到将来说不定会扩充很多模块进来,所有目录规划得言之成理一些,说不定还要做人事管理、考勤管理、薪金管理、工作日志管理等等很多模块,其实都是临汾小异而已,越多是技巧是浮现在细节功效及作业逻辑的铁画银钩程度上。

图片 11

 

步骤9:菜单配置好,页面制作好后,就足以兑现登录系列的页面了,当然那些也是用了现成的通用权限管理序列的报到页面,只需求创制一个记名界面,然后调用相应的登录API就足以了,自然就足以达到离职人士无法登录、没有权限的用户无法登录、停用账户无法登录,无法重复登录、限制登录的IP地址等等额外的别样职能都得以合二为一在里边了,开发人士也不用关爱更加多的底细,省心省事了。 

图片 12

 

步骤10:登录好后,通用权限管理连串的底层API,自然会来得有权力的菜单,无权访问的菜系也不会出去了,哪个用户可以访问哪个菜单等等,都得以经过通用权限管理工具灵活陈设管理,当然格外工具是给系统管理员、开发人士、实施人口利用的,并不是为了给一般工作操作员使用固定的。软件的最终运行效果就好像下图了,由于是系统管理登录的装有菜单都能突显了,当然那里还亟需一个早熟稳定的分页组件。

图片 13

 

图片 14

 

   底层代码生成器生成的代码,可能只占用这几个系统的代码的
1/3左右,不过编写那么些代码的年月也省了,整个开发进程不是可以节约1/3了,而且是纯体力劳动而已。整个权限管理等可能须要所有系统开发的1/3左右的活力,若那有的也不用支付了,又有什么不可省去整个软件项目费用的1/3时间。整个框架的风平浪静完善,也得以说是占据整个软件开发项目的1/3时日是应当的,假如2手空空先导支付的话。

   那咱们的品种选取了 代码生成器 + 数据库访问组件 + 通用权限组件 +
成熟的B/S开发框架 足足可以省去一个管理软件项目开发的 2/3
的开发时间
,可以把精力全体身处别的的
1/3 的政工逻辑优化、界面细节优化上。

  
那样也大大的下落了软件项目标支付的挫败危害,何人说您不会在眼前的2/3时光上满盘皆输呢?未必能走到前边的1/3年华上来啊,对吧。  

 

付出统计

 

  眼下3天内搞定一个独自的内部管理系统,而且五脏俱全的是我从事10年左右的最快记录,当然若第二次做类似的东西,可能有梦想2天内可以搞定了。

 

  经过多年的积攒,手上才会有一个周转平稳、可以灵活布署的B/S开发架构,就算看看都很简短,但是最起码不断完善几年后,才会落得安如盘石的水准,大家平日会发觉,开发一个细微的软件,往往1个月也开发不完,很可能是出于并未稳定的B/S开发架构导致的,那么些架构也不是说技术,就是一个美观的完整功效甚佳的运转稳定的B/S系统吧,从头开发的B/S架构,由于须求调动很多细节环节、越发是页面、菜单的华美设计等上会成本不胜枚举精力。

  
有时候界面设计卓越、程序思路严刻、用户交互功能好的B/S空框架也能卖出几万元,从前不可能分晓,现在是彻底能体味了,稳定的B/S架构的确可以值一些钱,因为是因此雕刻后才能形成最后的劳动成果的。

 

   软件的大约效果做到那里,差不离开支了3天时间、接下去或者要开支的岁月会愈多,应该时时刻刻3天了,可能是30天,因为众多事情上的细节会损耗多如牛毛时光来调整,例如新增页面的次序输入的内容,页面输入的自我批评、页面的美观设计、光标的依次优化、回车优化,输入内容的健全补偿等等,查询页面的排序依次优化、查询内容的先后顺序排版、表格中各列的宽窄调整,一些提醒颜色的优化等等会有不少细节难点上还要成本很久时间的, 做软件其实就是做细节,你要求有一个得天独厚的B/S开发框架,否则所有投机弄,不了然什么日期才能弄好,有个了不起的框架、再有理想的事例程序,整个管理连串,就是一个量的标题了,其次就是诸多细节的优化上,会开销很多时日。

   

   
有精良的安静的B/S开发框架,后期工作只用了3天,若没有这几个,从头开端做,可能30天也做不完,更不会把大多精力都费用在事情逻辑的底细优化上,可能更加多的精力都费用在B/S系统架构的安居乐业、优化上了,这那个软件的成色就更没保险了。

 

   
有了平静的B/S开发框架后,才好开展普遍生产、大批量招聘人士做开发工作,若这几个都尚未,招聘来一大堆开发人士,那很可能局面就乱套了,大家就便于乱来了。

 

    ProjectManager.cs手工编制的商业逻辑代码如下:…

 

 

将权力管理、工作流管理到位自己能力的非凡,一个人不得不做好那么很少的几件工作。

 

相关文章