您现在的位置: 主页 > 365bet足球盘口 > 文章内容

CS与BS系统耦合

作者:365bet官方网址    文章来源:365bet注册指南    更新时间:2019-9-29
在今年年初,实施了一个小项目,其需求简要描述如下:
客户单元具有一个已经运行和维护了5-6年的商业C / S结构系统,分布在该省的200多个县市中。该软件由第三方开发和维护。
接下来,您需要添加一个GIS功能模块来查询和搜索地图上的业务数据。
由于难以获得软件和维护GIS数据,因此决定通过WebGIS提供服务并与现有系统集成。
这类似于在现有交易系统中调用百度地图并确认位置,但是提供了此“百度地图”。
CS系统的第一个开发人员的设计和讨论缺乏以前参加过的同事的经验,因此我想尽可能多地增加工作量,因为我对CS系统开发人员不了解GIS。。是的,获取设计并提供类似于百度地图的地图网站。该地图网站还提供了CS所有现有的业务功能,包括查询和输入功能。该表单嵌入在WebBrowser控件中,并且可以访问地图网站的URL。
然后,开发人员将为您提供所有数据库信息,必要的CS源代码和数据库设计文档。该数据库包含50多个表和100多个过程。

copyright dedecms


当我将我发送到站点进行技术指导时,我的同事仔细分析了业务系统表的结构,模仿了CS系统,将功能转移到了网站上,开发人员休息并回答了问题。
我不知道情况,因为我没有提早参与该项目。我很惊讶地知道该项目的需求和同事的背景。由于这种设计,我不仅赔钱,而且还拖延时间和失败。
另外,这不是实际的集成,只能看作是在CS中嵌入浏览器以浏览固定的网站。
以我的经验,这似乎并没有遵循集成和组合的原则,我正在考虑一个我认为更合理,更简单的解决方案。
1)
每个系统仅需注意其自身的功能。BS和CS程序之间的交互通过接口和消息进行通信,从而无需移植整个CS程序功能。
2)
这两个系统集成在同一个界面中,从而允许左侧的CS界面和右侧的地图导航器之间进行交互。
3)
这两个系统的后端数据库是独立的,无法在它们之间进行访问。这样可以防止数据库维护的风险增加。 copyright dedecms
该方案如下:
如果您想推翻原始设计该怎么办?
1)
一天下午,我们演示了两个系统界面(使用WebBrowser控件的脚本执行功能)集成的有效性,并且客户端非常满意。
2)
告知客户原始计划的风险。项目延误和后续维护更加困难。
3)
为开发人员提供不符合耦合原理的原始设计,展示新程序的有效性,解释演示示例,简化新程序的集成以及技术难题并明确传达没有工作量。
最终,客户和开发人员都接受了新解决方案,并根据两周内完成的计划实施了该解决方案。
摘要:
我个人认为系统耦合必须遵循以下原则:
1)
这两个系统的集成实现了交互(发送消息(服务呼叫))。
2)
两种服务和代码应尽可能分开。每个系统仅需注意其自身的功能。为了避免将来发生系统崩溃时的责任纠纷,双方之间的交互通过接口和消息进行通信。 copyright dedecms
3)
两个系统上的数据库必须是分开的,并且不能在它们之间进行访问,以避免数据之间的重大风险。
效果图如下。