MyException - 我的异常网
当前位置:我的异常网» 软件设计 » 浅谈管理系统开发平台解决办法

浅谈管理系统开发平台解决办法

www.MyException.Cn  网友分享于:2015-08-26  浏览:8次
浅谈管理系统开发平台
对于管理系统开发平台,大家应该都一些认识,我在这里也谈一谈自己对管理系统开发平台的理解。
首先,我讲一讲管理系统开发平台的必要性。
  我们在做管理系统时,经常会出现下面的场景:
  客户:到我们现场来开发吧,我们与其他单位不一样。
  商务:那好吧。
  客户:这个问题,我们现在改成这样。。。。。。
  开发人员:那好吧,不过时间上需要三天。
  客户:不行,时间太长,现在系统已经拖了好久了。
  开发人员:。。。。。。
  在这种状况下,我们开发人员很无奈。
  由于管理的多样性,每个行业的需求是不一样的,而同一行业中的不同单位对系统的要求也会不一样。不仅如此,在同一单位里,不同的时期其管理的要求也会发生变化。所以,需求的变动是必然的。
对于代码生产型系统,需求的变动带来以下三方面的问题:
  1、 系统实施出现困难;
  2、 系统维护成本大大提高;
  3、 由于不同单位的管理不同,造成软件成为项目型,系统转成软件产品比较困难。就算是软件产品,其版本控制难度非常大。
  从以上种种情况来看,管理系统的产品化在生产型层次上很难实现。我们需要管理系统开发平台这样一种快速开发与实施的系统来拥抱需求变化。
  那么,管理系统开发平台是不是可行呢?管理系统开发平台是可行的,因为管理系统开发平台有其实现的基础。从业务与技术两方面看,管理系统开发平台的实现是可能的。
  首先,业务方面对系统的要求实际可以归纳为数据的流转与处理;
  一般来讲,管理系统管理着各种各样的单据,比如报销单、订单、处方等等。从面向对象的观点来看,这些单据的抽象都是类,它们有自己的属性,即数据。管理系统管理着这些数据,并且让这些数据得到处理与流转。比如,订单审核后,订单的状态(数据)发生了变化,订单因此可能转变成出货单。
  对上述的过程进行一下抽象,那就是一种数据进行加工后,变成另一种数据或数据的值发生了改变。也就是说,管理系统要做的就是数据的增加、删除、修改与查询。因此,我们可以用同样的方法对待管理系统处理的内容,这为管理系统开发平台的实现提供了业务基础。
  其次,从技术方面来看,XML、反射技术、动态语言等等使管理系统开发平台的实现成为可能。
  相对于生产型系统,管理系统开发平台会大量地使用配置,XML技术将成为管理系统开发平台的首选。XML技术为系统提供了自描述数据,并易于掌握与使用。
  反射技术、动态语言给系统带来可配置性与可定制性。反射技术还会使系统的可见性得到提高。
   
  我们再来看一下管理系统开发平台的主要功能:
  由于管理系统的数据处理的一致性,以及不同行业,不同客户的数据的不一致性,管理系统开发平台的建设分为四个层次:
  1、 基础设施
  2、 公共模块
  3、 领域相关
  4、 领域内针对客户的定制
  从这个角度来看,管理系统开发平台应该是微内核的,是可以在微内核基础上针对领域、领域客户不断扩展的系统。  
  管理系统开发平台在四个层次上的主要功能如下:
  1、 基础设施:
  基础设施主要解决数据的增加、删除、修改、查询、持久化,以及消息的流转。
  2、 公共模块:
  公共模块是指管理系统中与领域无关的相关内容。管理系统开发平台不仅要提供可定制能力,还要可扩展;不仅提供通过配置去实现,还要可以通过代码去实现相关功能。
  3、 领域相关:
  领域相关是指在某一领域内的业务的抽象。管理系统开发平台要提供可定制、可扩展功能,以及可重用的功能。
  4、 领域内针对客户的定制:
  领域内针对客户的定制是指管理系统开发平台提供可定制性,使不同客户有其业务特点。
  在管理系统开发平台设计中,适用的主要架构风格有分层架构风格与RESTful架构风格等等。
  1. 分层架构风格
  目前的管理系统越来越多地使用分层架构风格。分层系统通过对相邻的外部层之外的所有层隐藏内部层,减少了跨越多层的耦合,从而改善了可进化性和可重用性。功能的适当分离会简化服务器组件,从而提高可伸缩性。这种简化所采用的形式通常是将所有的用户接口(即用户界面)功能移到客户端组件中。只要接口不发生改变,这种分离允许两种类型的组件独立地进化。
  2. RESTful
  RESTful风格有以下的含义:
  客户端-服务器:通过拉的交互模式,客户访问服务器资源;无状态:每个从客户端到服务器的请求必须包含足够的信息,使得服务器理解该请求,而不需要在服务器上存储上下文信息;缓存:为了提高性能,合适的资源被缓存在服务器中;统一的接口:所有资源通过通用的接口访问(HTTP的GET,、POST、PUT、DELETE方式);命名资源:系统由通过URL命名的资源组成;互连的资源表示:资源的表示通过URL互相联系起来,从而客户端可以从一个状态转换到另一个;层次化的组件:使用一些中间层服务器,比如代理服务器,缓存服务器,网关等,可以插入到客户端和资源中间来完成监控和安全等功能。
  现在我们知道管理系统开发平台是必要的,而且可以实现,但什么是好的管理系统开发平台呢?我们需要对管理系统开发平台进行评价,其评价标准可以从使用者和维护者两个角度来看:
  1. 对于使用者,有以下五个方面需要考虑。
  a) 可配置性
  服务的可配置性、服务组合的可配置性。
  b) 可进化性
  每个服务可以单独更新。
  c) 可扩展性
  可以在管理系统开发平台中增加服务。
  d) 可伸缩性
  管理系统开发平台要支持集群或负载均衡。
  e) 可定制性
  对于不同的客户,管理系统开发平台要支持定制的功能。

  2. 对于维护者
  a) 可见性
  管理系统开发平台应该能被监控,并且有一定的安全性。
  b) 容错性
  管理系统开发平台应该能对错误进行日志记载,能够保证产生错误的数据得到恢复。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/cnyining/archive/2011/03/31/6291203.aspx

------解决方案--------------------
楼主说的究竟是“管理系统开发平台”还是“管理系统平台”。我的第一印象是:开发平台的用户是开发人员,平台的用户是客户(非开发人员)。
通常客户不会直接和开发人员打交道。有solution architect和客户沟通,不能让开发人员被客户牵着鼻子走。
------解决方案--------------------
不错的想法,不过抽象太多,有时有害而无益。
既然是个性化,那就个性化来制作吧,千篇一律的做法,用户也得不到什么实际效益。

做软件不能太过于贪求速度或者简便,或者...

多花点时间去了解客户需求,去整理客户需求,去整体设计,设计越好,使用越方便,操作越简单,
业务开展越顺畅。

而不是盲目追求 开发的简单。

一个好的设计,往往是很复杂的,当然,仅仅是设计复杂,
以后会越来越体验到好的设计带来的方便,特别是扩展到多个客户时

文章评论

60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
中美印日四国程序员比较
中美印日四国程序员比较
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
老程序员的下场
老程序员的下场
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
2013年美国开发者薪资调查报告
2013年美国开发者薪资调查报告
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
漫画:程序员的工作
漫画:程序员的工作
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
编程语言是女人
编程语言是女人
程序员应该关注的一些事儿
程序员应该关注的一些事儿
每天工作4小时的程序员
每天工作4小时的程序员
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
一个程序员的时间管理
一个程序员的时间管理
鲜为人知的编程真相
鲜为人知的编程真相
代码女神横空出世
代码女神横空出世
Java程序员必看电影
Java程序员必看电影
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
程序员的鄙视链
程序员的鄙视链
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
旅行,写作,编程
旅行,写作,编程
2013年中国软件开发者薪资调查报告
2013年中国软件开发者薪资调查报告
我是如何打败拖延症的
我是如何打败拖延症的
程序员和编码员之间的区别
程序员和编码员之间的区别
如何成为一名黑客
如何成为一名黑客
那些争议最大的编程观点
那些争议最大的编程观点
 程序员的样子
程序员的样子
10个调试和排错的小建议
10个调试和排错的小建议
那些性感的让人尖叫的程序员
那些性感的让人尖叫的程序员
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
程序员必看的十大电影
程序员必看的十大电影
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
为什么程序员都是夜猫子
为什么程序员都是夜猫子
我的丈夫是个程序员
我的丈夫是个程序员
总结2014中国互联网十大段子
总结2014中国互联网十大段子
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有