软件系统接口设计要求(软件接口标准)

网友投稿 628 2023-01-01


本篇文章给大家谈谈软件系统接口设计要求,以及软件接口标准对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享软件系统接口设计要求的知识,其中也会对软件接口标准进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

接口设计怎么写?

接口设计包括三个方面:一、用户接口用来说明将向用户提供的命令和它们的语法结构,以及软件的回答信息。二、外部接口用来说明本系统同外界的所有接口的安排包括软件与硬件之间的接口、本系统与各支持软件之间的接口关系。三、内部接口用来说明本系统之内的各个系统元素之间的接口的安排

系统接口设计的原则(续)

昨天写到系统接口设计最重要的原则是:

很开心的是大家选了黎叔和Richardson的方案,因为这个方案是最 简单直观 的,并且满足了数据在两个系统的一致性。

还是举昨天的例子,数据在客户系统是这样的:

到我们系统也会生成一样的数据:

我们系统为了生成这条数据,还需要生成一些基础数据:

这个方案的唯一问题是一个正常的SR(一装一卸)被分成了两个SR,一个是提货SR,一个是卸货SR,和我们之前对SR的认知十分不同,除了心里有些小担心之外,暂时也想不出这样会有什么问题。

抛开这个问题,我想用三个词来评价这个解决方案:

软件设计中的接口设计指的是实用性设计还是运行环境设计呢?

架构中的接口设计主要事指系统间的交互规则定义,主要包括接口的格式,类型,长度等,以及规范标准,接口有很多种级别,文件接口,数据接口,应用接口,在软件设计的每一层之间都存在接口。(所谓的实用性接口)
而在软件设计系统内的接口设计主要根据面向对象方法的需要,对现实概念进行抽象和简单化的过程,接口设计要秉持单一职责原则,将概念最小化,保证接口设计能够满足开闭原则,接口一旦定义则避免修改,而这个能力完全取决于设计师抽象的功力。

如何软件系统设计

一、善用UML工具

用例图
用于需求分析阶段,从用户角度描述系统功能。

用例图

静态图:类图、对象图、包图

静态图

交互图-时序图(注重时间)
常用组合片段:选项(Opt)、循环(Loop)、并行(Par)、抉择(Alt)、中断(Break)

时序图

交互图-协作图(注重对象)

协作图

行为图-状态图(注重状态)

状态图

行为图-活动图(注重活动)

活动图

实现图-组件图

组件图

实现图-部署图

部署图

二、遵从设计原则

设计模式基础

单一职责:一个类只负责一个职能;

里氏转换:在子类中不应重写、重载父类的方法,子类要能替代父类;

接口隔离:不依赖不需要的接口,拆分大接口;

迪米特法则:一个对象应该对其他对象保持最少的了解(低耦合);

开放封闭:对扩展开放,对修改关闭;

依赖倒置:抽象不应该依赖细节,细节应该依赖抽象,即针对接口编程,所有依赖关系都终止于抽象类或接口,不要对实现编程。

设计模式

创建型
工厂方法(Factory Method)、抽象工厂(Abstract Factory)、建造者(Builder)、单例(Singleton)、原型(Prototype)。

结构型
组合(Composite)、代理(Proxy)、外观(Facade)、适配器(Adapter)、装饰(Decorator)、桥接(Bridge)、享元(Flyweight)。

行为型
策略(Strategy)、模板方法(Temple
Method)、观察者(Observer)、状态(State)、备忘录(Memento)、迭代器(Iterator)、命令(Command)、责任链(Chain
Of Responsibility)、中介者(Mediator)、访问者(Visitor)、解释器(Interpreter)。

分布式设计原则

高可用
降级、限流(漏桶-平滑、令牌桶-可突发、环形队列+滑动窗口)、切流、熔断、回流、可回流、超时、隔离(线程、读写、资源、热点、爬虫)、负载均衡。

高并发
无状态、拆分、服务化、队列、数据异构(异构-原子化-聚合-缓存)、缓存、并发化(Future、Callback、Completable Future)、池化。

业务设计
防重、幂等、规则引擎、状态机、审计、审批。

分布式理论
CAP:一致性、可用性、分区容错性(三选二);
BASE:基本可用、软状态、最终一致性;
ACID:原子性、一致性、隔离性、持久性。

一致性原则
XA协议:准备 - 提交(具有阻塞、协调者单点、脑裂等缺点);
XA三段协议:询问 - 准备 - 提交;
TCC:try - confirm / try - cancel 锁定 - 确认/释放;
最终一致性:查询、补偿、定期校对、可靠消息、缓存一致性。

超时处理
原则:谁超时谁处理,即接口调用超时,查询+补偿;接口调用成功后,接口内部服务超时须自己补偿。

两状态同步接口(OK/ERR):接口调用超时,调用方查询+补偿;接口内部服务超时,内部快速失败+冲正;

三状态同步接口(OK/ING/ERR):接口调用超时,调用方查询+补偿;接口内部服务超时,返回处理中,内部查询+补偿到成功,调用方轮询;

异步接口:接口调用超时,调用方查询+补偿;接口内部服务超时,内部查询+补偿到成功,回调通知;接口回调通知超时,指数补偿回调;

消息队列:生产者发送超时,持久化可靠发送+幂等消费;消费者消费超时,消息处理完偏移量增加。

缓存
缓存分片:客户端分片(redic)、代理分片、集群分片(一致性Hash);
缓存穿透:缓存空值、有效Key判断;
缓存并发:分布式锁、本地锁、软过期(业务过期);
缓存雪崩:错峰失效。

三、画好架构图

4+1视图

场景视图:参与者与功能用例关系,用例图表示;
逻辑视图:功能拆解后的组件边界及关系,组件图和类图表示;
物理视图:软件与硬件映射关系,部署图表示;
处理流程图:各组件流程与数据交互,时序图和流程图表示;
开发视图:模块划分及包组成,包图表示。

C4视图

语境图:梳理待建设系统用户和高层次依赖,在中间画出自己的系统,周围是用户与其它交互系统。


C4语境图

容器图:展开语境图待建设系统,用框图表示,可包含名称、技术选择、职责、框图间交互,明确外部系统边界。


C4容器图

组件图:展开某个容器,描述其内部模块组件组成、关系。


C4组件图

类图:同UML静态图,此处不再展开。

如何设计系统接口 系统接口设计注意事项

共享临时文本文件这种进程之间的通讯方法相比其它方法的优点有很多,下面仅列出我现在能想到的:
·进程之间松耦合
·进程可在同一台机器上,也可跨机,跨操作系统,跨硬件平台,甚至跨国。
·方便调试和监视,只需让第三方或人工查看该临时文本文件即可。
·方便在线开关服务,只需删除或创建该临时文本文件即可。
·方便实现分布式和负载均衡。
·方便队列化提供服务,而且几乎不可能发生队列满的情况(除非硬盘空间满)

软件系统性能设计怎么写

软件概要设计
网应该处都我前打问题
给我前用吧~
概要设计说明书
1引言
1.1编写目
说明编写份概要设计说明书目指预期读者
1.2背景
说明软件系统接口设计要求
a. 待发软件系统名称软件系统接口设计要求
b. 列项目任务提者、发者、用户及运行该软件计算站()
1.3定义
列本文件用专门术语定义外文首字母组词原词组
1.4参考资料
列关参考文件:
a. 本项目经核准计划任务书或合同级机关批文;
b. 属于本项目其已发表文件;
c. 本文件各处引用文件、资料包括所要用软件发标准列些文件标题、文件编号、发表期版单位说明能够些文件资料源
2总体设计
2.1需求规定
说明本系统主要输入输项目、处理功能性能要求详细说明参见附录C
2.2运行环境
简要说明本系统运行环境(包括硬件环境支持环境)规定详细说明参见附录C
2.3基本设计概念处理流程
说明本系统基本设计概念处理流程尽量使用图表形式
2.4结构
用览表及框图形式说明本系统系统元素(各层模块、程序、公用程序等)划扼要说明每系统元素标识符功能层给各元素间控制与控制关系.
2.5功能器求与程序关系
本条用张矩阵图说明各项功能需求实现同各块程序配关系:
程序1 程序2 …… 程序n
功能需求1 √
功能需求2 √
……
功能需求n √ √
2.6工处理程
说明本软件系统工作程包含工处理程()
2.7尚未问决问题
说明概要设计程尚未解决设计者认系统完前必须解决各问题
3接口设计
3.1用户接口
说明向用户提供命令语结构及软件答信息
3.2外部接口
说明本系统同外界所接口安排包括软件与硬件间接口、本系统与各支持软件间接口关系
3.3内部接口
说明本系统内各系统元素间接口安排
4运行设计
4.1运行模块组合
说明系统施加同外界运行控制所引起各种同运行模块组合说明每种运行所历经内部模块支持软件
4.2运行控制
说明每种外界运行控制式操作步骤
4.3运行间
说明每种运行模块组合占用各种资源间
5系统数据结构设计
5.1逻辑结构设计要点
给本系统内所使用每数据结构名称、标识符及每数据项、记录、文卷系标识、定义、度及间层或表格相互关系
5.2物理结构设计要点
给本系统内所使用每数据结构每数据项存储要求访问、存取单位、存取物理关系(索引、设备、存储区域)、设计考虑保密条件
5.3数据结构与程序关系
说明各数据结构与访问些数据结构形式:
6系统错处理设计
6.1错信息
用览表式说朗每种能错或故障情况现系统输信息形式、含意及处理
6.2补救措施
说明故障现能采取变通措施包括:
a. 备技术说明准备采用备技术原始系统数据万丢失启用副本建立启技术例周期性磁盘信息记录磁带于磁盘媒体种备技术;
b. 降效技术说明准备采用备技术使用另效率稍低系统或求所需结某些部例自系统降效技术手工操作数据工记录;
c. 恢复及再启技术说明使用恢复再启技术使软件故障点恢复执行或使软件始重新运行
6.3系统维护设计
说明系统维护便程序内部设计作安排包括程序专门安排用于系统检查与维护检测点专用模块 各程序间应关系采用矩阵图形式; 关于软件系统接口设计要求和软件接口标准的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 软件系统接口设计要求的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于软件接口标准、软件系统接口设计要求的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:实现接口的方式(接口调用的几种方式)
下一篇:猜你不知道Spring Boot的几种部署方式(小结)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~