当前位置: 首页 > news >正文

软件架构设计(业务架构、应用架构、数据架构、技术架构)

一、架构相关概念

1、系统

        系统:由一群有关联的个体组成,根据某种规则运作,能完成个别原件不能独立完成的工作的群体。大的系统可以嵌套小系统,被嵌套的小系统往往称为大系统的子系统。

2、模块

        模块是从逻辑上将系统分解,即分而治之,将复杂问题简单化。模块的颗粒度可大可小,可以是系统、子系统、某个服务、函数、类等。

3、架构

        架构是指关键系统的顶层结构。

        架构是经过系统性地思考,权衡利弊之后再现有资源约束下的最合理的决策,最终明确的系统股价:包括子系统、模块、组件意见他们之间的协作关系、约束规范、知道原则,并由它来指导团队中的每个人思想层面上的一致。

        1)系统性思考的合理角色:比如技术选型、解决方案等。
        2)明确的系统骨架:明确系统有哪些部分组成。
        3)系统协作关系:各个组成部分如何协作来实现业务请求。
        4)约束规范和指导原则:保证系统有序、搞笑、稳定运行。

二、架构分层和分类

在架构设计中,通常会涉及到四种不同类型的架构:业务架构、应用架构、技术架构和数据架构。

1、业务架构

        业务架构是指在设计软件系统时,需要考虑到整个业务的层次结构,以及不同层次之间的关系和交互。在这种架构中,需要深入了解业务的本质和业务规则,并将其转化为可执行的软件系统。例如,一个电商平台的业务架构可能包括顾客、订单、库存、支付等模块,需要将它们有机地结合起来,以实现一个完整的电商平台。

2、应用架构

        应用架构是指在软件系统中,将不同的应用程序组织在一起的方式。这种架构通常涉及到系统的模块化设计、组件化和微服务等方面。例如,一个电商平台的应用架构可能包括前台、后台、支付、物流等不同的应用程序,需要将它们有机地结合起来,以实现一个完整的电商平台。

3、技术架构

        技术架构是指在软件系统中,采用哪些技术和架构模式来实现系统的需求。这种架构通常涉及到系统的安全、性能、可靠性、可扩展性等方面。例如,一个电商平台的技术架构可能包括使用云计算、容器化、分布式架构等技术,以实现系统的高可用、高并发等需求。

4、数据架构

        数据架构是指在软件系统中,如何组织和管理数据的方式。这种架构通常涉及到数据的存储、处理、分析等方面。例如,一个电商平台的数据架构可能包括用户数据、订单数据、商品数据等,需要将它们组织起来,并进行适当的分析和处理,以实现更好的用户体验和更高的效率。

总之,程序员需要在架构设计中综合考虑业务、应用、技术和数据四个方面,以实现一个高效、稳定、安全的软件系统。

http://www.lryc.cn/news/191877.html

相关文章:

  • 我们又组织了一次欧洲最大开源社区活动,Hugging Face 博客欢迎社区成员发帖、Hugging Chat 功能更新!...
  • 学信息系统项目管理师第4版系列26_项目绩效域(下)
  • SQL sever中的索引
  • 多目标鳟海鞘算法(Multi-objective Salp Swarm Algorithm,MSSA)求解微电网优化MATLAB
  • 软件测试之概念篇(需求,测试用例,BUG描述,产品的生命周期)
  • jwt详细介绍
  • 电子笔记真的好用吗?手机上适合记录学习笔记的工具
  • 用 SQL 找出某只股票连续上涨的最长天数
  • Vue 绑定 class 与 style
  • 【微服务部署】九、使用Docker Compose搭建高可用双机热备MySQL数据库
  • HTTP Basic 认证
  • 计算机网络第2章-HTTP和Web协议(2)
  • css3 table表格
  • 【【萌新的SOC学习之AXI DMA环路测试介绍】】
  • 07 | @Entity 之间的关联关系注解如何正确使用?
  • 深入理解AQS之ReentrantLock源码分析
  • 微软宣布延长Azure支持Apache Cassandra 3.11时间到2024年
  • cv_bridge和opencv 记录
  • 关于OWL-carousel插件在ajax调用后需要重新实例化问题(页面无轮播效果)
  • day4作业
  • SSMS中的SQL sever代理
  • 估算总体标准差的极差均值估计法sigma = R/d2
  • JavaScript之正则表达式
  • Spring实战 | Spring AOP核心功能分析之葵花宝典
  • linux之/etc/skel目录
  • 文件介绍---C语言编程
  • 软考 系统架构设计师系列知识点之特定领域软件体系结构DSSA(6)
  • TensorFlow入门(二十三、退化学习率)
  • 登录中获取验证码的节流
  • spring boot 实现Minio分片上传