摘要:运用微软解决方案框架MSF和构件设计的一些原理,并且使用了当前比较流行的一些开发模式和软件工程技术,如MVC结构,制定解决方案架构等来解决企业资源管理软件开发的难题。
关键词:企业;MSF;.NET;软件开发
1软件框架与解决方案
框架是一种微体系结构,为特定领域内的软件系统提供未完全实现的模板,它可以是一个将要被扩展或复用的子系统。框架一般具有以下的特点:它是面向特定领域的可复用软件制品;反映了应用的体系结构;具有部分实现的特性;基于框架开发应用是通过扩展过程实现的;框架由一组相互协作的构件组成,对于面向对象的框架而言,其组成构件即为类构件。框架是领域实现的产物,其开发过程类同于普通领域的构件开发过程。一个成功的软件框架最根本的标志是稳定、易于理解和复用,为此需要在开发过程中多次迭代,使框架的正确性和可复用性不断提高。
然而现代的软件开发则是集模型、体系结构、过程及构件技术为一体的,主流软件的开发观念大都是:以体系结构为中心,基本模型的过程式开发。其中心思想是不断的完善开发过程,以求高质量、底成本,按时、按量交付软件。为此软件开发中就需要给出解决问题的决策:对于小问题是解题模型和问题求解方法;对于大的应用系统就是在建立模型的基础之上的解决方案。对于不同应用就有不同的解决方案,但是他们在一些基础上都有相似之处,如果能够借助框架的概念,提出一种解决方案框架便能大大的规范和简化软件的开发。MicrosoftSolu-tionFramework(MSF)便是其中的一种解决方案框架。
这里的解决方案框架不仅仅是只与产品的性质有关的成品框架,而且包含了怎样做才能出合格成品的框架。MSF立足于后客户-服务器计算时代的分布式软件开发,同时支持新一代计算的WEB服务,是当前软件开发切实可行的规范之一。
2MSF简介
微软解决方案框架结构(MSF)是一组建立、开发和实现分布式企业系统应用的工作模型、开发准则和应用指南。它帮助企业融合商业和技术的目标,降低采用新技术后系统整体的费用,以及成功的应用微软技术整合商业过程的方法。
MSF是一种组织和集成构件的方式,揭示出为成功设计、构建和管理技术基础结构或商业解决方案,所需了解的重要风险、重要的设计基础假设和关键的依赖关系。它包括明确的知识库1、应用指南和实践经验,如:
*企业结构设计方案—采用交互的方式,侧重于制定长期规划,同时也能完成短期目标。
*项目开发准则—包含组队模型和过程模型,用于建立高效的项目组,管理项目的生命周期。
*项目设计过程和多层结构的应用程序模型—用于支持设计复杂的分布式企业应用。
*企业信息基础设施的实施方法—使用组队模型和过程模型支持实现、操作和技术上的方案。
(1)MSF能够帮助软件开发组织快速地将成熟的前沿技术变为工程使用,它面向实用而不强调理论上的完美。MSF的开发哲学是:以体系结构为中心、面向过程的,提倡小组协作,强调风险管理。其符合ISO,CMM倡导的软件过程,但没有相应的ISO,CMM标准那样完美、全面、细致。并不是一成不变的,它将动态的发展——将现有的先进开发理念和管理技术融入到自身的结构体系中。
基于上述的特点,MSF提出了三个基础模型:风险管理(riskmanagement)、小组模型(teammodel)和过程模型(processmodel)。其中风险管理是在实际商用中项目经理所要具体实践的,需要进行大量的调研,因此这里就不做详细的介绍。下面用两幅图来表示小组和过程模型:
在过程模型中,在其实践活动与里程碑一般如下:
在本次开发中,本人参与的项目开发组也是使用上述的开发过程模式,并且运用了MSF构件设计的技术、.NET开发平台和C#.NET开发语言。
3MSF构件设计与.NET平台
3.1构件设计
所谓的构件则是指只能通过接口和和契约访问的逻辑单元,它与应用程序不直接关联,仅仅是描述应用逻辑接口集的实现者。这里的.NETFramework正是为这种完全-接口编程3提供的框架。
MSF的构件设计则将工程设计的一般原理结合到非常产品化的工程设计。它包括三部分—概念设计、逻辑设计和物理设计。
其一般过程如下:
(1)以用户为中心。做设计时,项目小组不仅要重视解决方案是否落实了业务问题,还要时时想到最终用户是否满意。
(2)设计是迭代过程。设计过程是对业务问题、解决方案加深认识的过程。在实际工作中,设计人员很难获得完整的信息和知识,需要进行不断的迭代反复来加深理解。
(3)遵从体系结构。这样有助于定义应用开发的范围,能确保项目与企业业务目标一致,并有企业资源的支持。
(4)围绕解决方案做。在实现解决方案的构件设计中,应寻求、找出解决方案的“正确方法”,并始终围绕着解决问题这一最终目标。
(5)边建造边计划。这类似与极限编程(extremeProgram)的概念,根据实际建造、处理解决方案之中出现的问题,修改体系结构的活文档,及时调整计划。
(6)小组全员参与。能够促进交流,便于各个成员了解核心过程,并能更好的完成自己的工作。
3.2NET技术
.NET是MicrosoftXMLWebservices平台。XMLWebservices允许应用程序通过Internet进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。Microsoft.NET平台提供创建XMLWebservices并将这些服务集成在一起之所需。.NET家族中有VisualBasic?.NET、VisualC++?.NET、VisualC#?.NET和VisualJ#?.NET,他们都全都使用相同的集成开发环境(IDE),该环境允许它们共享工具并有助于创建混合语言解决方案。
4应用实例
项目是为一制造业的公司开发一个企业资源管理系统,由一个数十人的团队共同开发完成。此开发基于MSF解决方案框架,运用.NET开发平台,采用ASP.NET和C#.NET开发语言,具体使用MVC(ModelVisualControl)结构。使用ASP.NET作为前台,使用COM组件作为逻辑处理,用XML作为数据交换传输载体,使用soap协议作为内部信息交换协议,后台使用SQLServer数据库。
4.1系统模型建立
首先该系统是整个制造供应链中的一个部分,供应链的框架如下:
4.2MSF应用
针对上述情况,运用MSF解决方案框架提出了基本的人员分配和应完成的工作:
在工作分配完后,就开始系统的进行开发。根据需求,得到整个的功能模块草图:
在此之后,进行计划和进度安排,并开始了逻辑设计。这里以报表功能模块为例说明。根据需求,报表功能模块包含:
*库存资金表
*销售日报
图4模块划分
*销售月、年报图表:以棒图或饼图的形式显示各种查询的销售。
*实时库存和历史库存:历史库存需要人工结转或设定时间进行结转。
*零售点销售日报:针对直属所有零售点的销售日报汇总。
*销售毛利表:提供各种方式的查询。
*各类盘点表:含盖库存盘点、资金盘点,按照盘点的结果和实际的情况对比。
*调拨统计表:统计各个仓库间的调货、各个点之间的调货。
*各类结转表:按照公司规定的会计期间进行结转,保存所得的结果记录。
开发这些功能时,为了能够使功能复用,必须开发一个报表生成组件。这样即使对于不同类型的报表,只要其输入报表的结构(即是从数据库中读出数据对应的字段名),应用这个报表生成组件就能自动的产生所要的报表。其数据流如下:
操作员给出操作的类型,组件中的逻辑操作部分进行处理,并从数据库中取出相应的数据,转到参数设置部分,最后把所有的数据流交给产生报表部分,得出用户所需要的报表。
5总结
现在软件开发在我国的上升势头仍然凶猛,也出现了许多大大小小的软件公司。但是其中能把企业资源管理、ERP、供应链管理或协同电子商务做成功的很少,因为我们在这方面起步的晚,没有欧美企业一样具有许多开发经历,也就需要研究许多适合自己的解决方案。MSF这种解决方案框架具有较好的应用前景,适用于中大型企业信息系统的开发。
本文作者的创新点:运用微软解决方案框架MSF和构件设计的一些原理,并且使用了当前比较流行的一些开发模式和软件工程技术,如MVC结构,制定解决方案架构等来解决企业资源管理软件开发的难题。
搜论文知识网致力于为需要刊登论文的人士提供相关服务,提供迅速快捷的论文发表、写作指导等服务。具体发表流程为:客户咨询→确定合作,客户支付定金→文章发送并发表→客户接收录用通知,支付余款→杂志出版并寄送客户→客户确认收到。鸣网系学术网站,对所投稿件无稿酬支付,谢绝非学术类稿件的投递!