前端开发入门到精通的在线学习网站

网站首页 > 资源文章 正文

「综合知识-试题解析」系统开发与设计模式演进

qiguaw 2024-10-21 08:02:16 资源文章 22 ℃ 0 评论

考试原题(2021年下半年,综合知识第2题):


()关注的是业务,以业务驱动技术,强调IT与业务对齐,以开放标准封装业务流程和已有的应用系统,实现应用系统之间的相互访问。


A、面向过程方法

B、面向对象方法

C、面向构件方法

D、面向服务方法


原题解析:


软件的开发与设计模式,自编程语言诞生之初就一直向高内聚、低耦合的方向发展,所有开发人员与组织的梦想就是实现软件功能更高层次、更快部署、更广范围的复用。

在近70年利用高级编程语言开发软件的历史中(从1954年FORTRAN语言开始),从功能封装的设计层次上,可以分为以下几类:

面向过程编程(Process-Oriented Programming,POP):系统的编程开发是将整体功能分成若干过程或步骤,每个步骤通过一个或几个方法来实现。所有的步骤通过串行、分支或循环的逻辑次序执行,最终完成整个业务功能。早期的编程语言,如BASIC、C、PASCAL等,都是此类。

面向对象编程(Object-Oriented Programming,OOP):是从业务逻辑中拆分出一个个独立的客体,称为对象。系统通过对象之间的互操作来实现整个功能逻辑。属性、方法与事件等是对象的核心组成要素,再辅以依赖、继承、多态等特点,OOP迅速替代POP,成为业界主流。

这个过程中涌现出的C++和JAVA等编程语言,一直沿用到现在;后期逐渐成熟的UML(典型的商业产品是Rational Rose)及其中的用例图等,至今也是项目管理中需求分析与方案设计沟通的主力工具。

从一定角度上理解,当前最新的RESTFul接口也是一种OOP的设计模式。

面向组件编程(Component-Oriented Programming,COP):是对OOP的丰富与发展,其目标是进一步隐藏OOP中对象之间依赖关系,进一步提升通用性。最终成果是将实现某一通用功能的一组对象打包成组件,并对外提供接口服务。比较典型的例子是数据库连接池。

面向切面编程(Aspect-Oriented Programming,AOP):是从另外一个维度来看待系统实现。其产生的背景是大型信息系统功能越来越复杂,但不同的业务功能中又存在一些通用的子功能模块。

例如,除了登录页面外,大多数功能页面的访问都需要首先检验用户当前是否存在正常登录会话;如果功能出现异常都需要产生相应的日志与告警信息等。

为了能够在不影响正常业务功能的前提下,灵活地增加、调整这些通用子功能,规划者将这些通用子功能设计成不同业务主功能的一个纵向逻辑切片,统一进行配置与开发。

当前J2EE体系中最流行的Spring框架,就有大量AOP组件。

面向服务架构(Service-Oriented Architecture,SOA):从名称上,可以看出,其已经不再是一种开发与设计模式,而是一种架构模式。当前比较通用的SOA落地产品有ESB(Enterprise Service Bus,企业服务总线)。

SOA是一种脱离底层开发技术,直接面向业务逻辑,将一个个业务流程,封装成标准接口,提供给其他业务系统使用。例如:财务付款、人员入职、下达订单等。


通过以上介绍可以看出,几种开发与设计模式,不是非此即彼的替代关系,而是站在不同高度和纬度上看待软件产品的设计,以实现开发效益的最大化。

通常情况下,软件实现过程中要有“分析”、“设计”和“编程”几个核心步骤。因此,以上几种模式,除SOA外,也都有相应的分析(Analysis)与设计(Design)名称。


本次考试题目中用的是“方法”,可以认为涵盖了上述三个步骤,其核心考察点是完全相同的。


因此,本题答案为D。


论文写作素材——整体、范围与质量管理:

开发设计模式通常是系统架构师与系统分析师的工作职责,但项目经理作为项目总负责人也需要适当关注,而且相关素材也可以体现在项目管理类的论文写作中。以下仅举几例供大家参考:

在项目整体管理的论文编写时,在制定项目章程管理过程中,可以论述该项目是组织的行业转型标杆项目,组织要求项目采用先进而合理的设计模式,确保系统未来有高度的通用性与扩展性。项目组将组织的要求明确写入到项目章程中。

在项目范围管理的论文编写时,在定义范围管理过程中,可以论述依据项目章程中的要求,项目组在范围说明书中明确定义要开发产品通用核心产品与客户个性化开发产品两大子产品,产品之间能够通过SOA无缝调用衔接。

在项目质量管理论文编写时,在规划质量管理过程中,可以论述项目组根据组织通用产品开发需求,制定相关的质量测试指标和质量核对单。其中重点制定了通用产品模块的核心业务接口检查步骤等内容,确保在SOA的架构下,两个子产品模块的解耦,完全达到设计的质量目标。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表