首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 缤纷校园 英语学习
2010考研 | 自学考试 | 成人高考 | 专 升 本 | 法律硕士 | MBA/MPA | 中 科 院
四六级 | 商务英语 | 公共英语 | 职称日语 | 职称英语 | 博思 | 口译笔译 | GRE GMAT | 日语 | 托福
雅思 | 专四专八 | 新概念 | 自考英语 | 零起点英韩语 | 在职申硕英语
在职攻硕英语 | 成人英语三级
等级考试 | 水平考试 | 微软认证 | 思科认证 | Oracle认证 | Linux认证
公务员 | 报关员 | 报检员 | 外销员 | 司法考试 | 导游考试 | 教师资格 | 国际商务师 | 跟单员
单证员 | 物流师 | 价格鉴证师 | 银行从业资格 | 证券从业资格 | 人力资源管理师 | 管理咨询师
期货从业资格 | 社会工作者
会计职称 | 注会CPA | 经济师 | 统计师 | 注册税务师 | 评估师 | 精算师 | 高会 | ACCA | 审计师
法律顾问 | 会计证
一级建造师 | 二级建造师 | 造价师 | 监理师 | 安全师 | 咨询师 | 结构师 | 建筑师 | 安全评价师
房地产估价师 | 土地估价师 | 设备监理师 | 岩土工程师 | 质量资格 | 房地产经纪人 | 造价员
投资项目管理 | 土地代理人 | 环保师 | 环境影响评价 | 物业管理师 | 城市规划师 | 公路监理师
公路造价工程师 | 招标师
执业护士 | 执业医师 | 执业药师 | 卫生资格
您现在的位置: 考试吧(Exam8.com) > 软件水平考试 > 系统分析师 > 正文

如何规划软件的逻辑层次[1]

   软件的基本层次

 

  软件的逻辑结构可以划分为下面四个基本层次

  从下往上依次是

 

 1、基础设施层——这个层次是纯技术层次,解决的是系统的物理问题,比如database gateway、网络通信、对象容器……这个部分与业务需求关系不大,是系统的物理条件。

 

  2、business对象——在这个层次上,业务要素出现了,业务领域中的概念在这里实现。比如一个航运公司的系统,这里就应该有航线、航班、座位、乘客、登机牌……这些对象应该拥有与实际业务领域相符的属性、方法。mda.com    

 

  3、business流程——这个流程不是指程序解决问题的流程,而是用户的商业活动的流程。他体现的是端到端的业务流程。比如:检票员为旅客办理登机牌。business流程的输入参数是business对象,输出参数是business对象,产生的异常也是business对象。business对象在这里组合、串接,实现业务流程的自动化。这个层次是在直接实现用户的需求。

 

  4、UI和接口——这个层面调用business流程,将执行的结果交给软件的用户,或者别的系统。

 

  这种逻辑层次划分是最基本的情况,各种复杂的层次都是这种方式的一种扩充。比如下面这样的形式

  在基础设施层和business对象之间,加入了一个DAO层。DAO层一方面负责数据的存储,体现了数据的存储方式,另一方面体现了业务对象的属性。这样就使business对象只需要负责纯粹的业务逻辑,不用关心物理问题。简单的说,业务对象里面不需要写SQL语句了。

 

  business对象和business过程之间,加入了Service层。business对象也是具有行为的,但是这样的行为是比较细微的,需要调用者在多次调用之间保持必要的状态,需要用Service层来做一个封装,更明确的表达业务含义。

 

  单元测试

 

  单元测试需要关心一个问题:层次之间的依赖关系。如果要测试某一个层次上的对象,必须同时建立他所依赖的每一个对象。层次之间的依赖越简单,测试越容易。

 

      

转帖于:软件水平考试_考试吧
文章搜索
如何规划软件的逻辑层次[1]网友评论网友评论
版权声明 --------------------------------------------------------------------------------------
    如果软件水平考试网所转载内容不慎侵犯了您的权益,请与我们联系,我们将会及时处理。如转载本软件水平考试网内容,请注明出处。
 gaoxiaoliang