AgileEAS.NET平台开发实例-药店系统-系统架构设计

介绍

 

        本篇将会讲述如何使用AgileEAS.NET敏捷开发平台来进行药店系统的开发,首先咱们须要根据需求文档来设计出药店系统的系统架构,才能继续进行后续的开发工做,整数据库

理好架构后,而后一步步的完成具体的详细设计,数据库建模等,这样的完整步骤后,就能够开展具体的编码工做了,咱们首先来看看根据药店系统的一些功能性的需求和非架构

功能性的需求来决定系统的架构设计,而且分解AgileEAS.NET平台已提供的相关功能来结合分析。框架

 

分析

          1、AgileEAS.NET平台的分层结构分布式

        一、基于AgileEAS.NET平台的逻辑架构设计分析性能

        image

        从上图咱们能够看出,AgileEAS.NET开发平台之上的架构设计与咱们平时说的架构设计中的分层与设计之上并无什么本质的差异,惟独是底层的数据访问层(DAL)上的网站

设计有一些细微的差异,下面咱们来画图分析下相关的区别。编码

        AgileEAS.NET平台使用的模型是充血模型,意味着模型自己除了附带数据相关的信息外,还包含一些操做。spa

        image

        你们能够看看AgileEAS.NET平台中的DAL层就知道了,这里我就不贴出相关的代码了。.net

      二、AgileEAS.NET平台的物理架构设计分析插件

    image

        上面给出了AgileEAS.NET平台的物理架构中的的分布式访问形式,固然还有简单的形式,即直接不经过分布式访问服务来访问数据库,而是直接UI层经过DAL层或者服务

层,来直连数据库访问数据,而不是分布式的形式,具体的访问图以下:

        image 

        经过上面的分析,咱们应该对AgileEAS.NET平台的相关设计架构支持有了必定的了解,那么咱们在设计架构时,就考虑如何使用AgileEAS.NET平台提供的对架构的

非功能性要求的支持。下面咱们就来看下如何结合药店系统来分析架构。

        

药店系统-架构设计

 

 

首先、能够说如今的分层结构是很是的流行,也是很容易理解和很容易来使用,固然目前的任何架构其实都是能够经过分层来达到必定程度的职责分离和低耦合,高内聚

的原则,可是咱们不会为了分层而分层,那样只会让咱们的工做量变大和复杂。 完事都要讲究一个平衡。

下面咱们来分析下,基于药店,咱们来分析下药店系统可能的分层结构。

image_thumb[32]

固然上图只是给出了主要的功能模块,还有一些统计分析和基础数据维护等模块,并无画上,咱们只要知足这些主要的功能需求,下面咱们来看看一些非功能性的需

求,咱们在设计架构的时候,必需要考虑清楚非功能性需求,不然设计出来的结构只能失败。

非功能性需求以下:

一、要支持远程访问,多用户使用。

二、要性能高,效率快,易用性。

三、可扩展,可维护。

基于上述的几点非功能性需求,恰好AgileEAS.NET敏捷开发平台,为咱们提供了以下的高强度的支撑,下面咱们画图来讲明:

一、支持远程访问,多用户使用。

image_thumb[38]

        固然普通形式也可使用服务层,这里不会影响到具体功能的使用,这里想说的是,平台默认提供了对分布式服务的支持。能够作到无缝的切换。关于具体的分层设计与

你们原来的屡次结构并不冲突,只不过DAL层已经默认是充血模型了。

二、高性能,易用性等。

image_thumb[43]

三、可扩展性及可维护性

image_thumb[47]

因为平台采起的平台+插件的组织形式,所以能够作到以下要求:

一、可扩展。

二、并行开发。

三、平台提供插件的配置与管理。包括资源的分配与回收,生命周期等管理。

下面咱们就来分析下根据上述的非功能性需求,咱们必需要完成的开发工做本来是要实现分布式访问的支持,如今咱们不须要实现这些内容,AgileEAS.NET平台已经为我

们实现了,咱们只是在使用该分布式访问服务时知足相应的服务定义要求便可。咱们具体的使用要求及定义要求,咱们会在后续的服务层的开发过程当中讲述。

药店系统的架构设计:

一、结合前面的非功能性需求,咱们设计出以下架构:

image_thumb[50]

二、固然若是说访问太频繁或者数据交互量大,咱们还能够抽出DTO。

image

三、结合MVC框架来使用该架构:

image

        固然具体的应用场景如何结合来设计等,就是看咱们应用场景的需求了,咱们本系列将以第一个架构为最终的版原本进行开发,咱们选取该架构的主要缘由是简单,可

行,而且可以知足需求。

 

总结

 

        本篇主要是分析了AgileEAS.NET的架构及分析了药店系统的总体架构设计,咱们并无关注一些细节方面的内容,后续关于一些更详细的内容,将会在后面的开发过程当中

体现。固然因为本人水平有限,部分不足或者设计剖析错误之处,还请你们指定。

 

药店系统源码

         download3

更多交流

官方博客:http://www.smarteas.net/

官方网站:http://www.agilelab.cn/

若是您在使用AgileEAS.NET开发平台中有什么问题,请使用以下几种联系方式或者沟通方式。

一、邮箱方式:

魏琼东: mail.james@qq.com 手机:18629261335 博客:http://eastjade.cnblogs.com/

殷长波:549558408@qq.com 博客: http://www.cnblogs.com/onmyway/

何戈洲:hegezhou_hot@163.com 博客:http://www.cnblogs.com/hegezhou_hot/

二、QQ交流群:

AgileEAS.NET平台交流群:120661978(超级群)[新建]  AgileEAS.NET平台交流群:125643764(高级群)[新建]  AgileEAS.NET平台交流群:147168308(高级群)[新建]

相关文章
相关标签/搜索