`

NET 应用架构指导 V2 学习笔记(六) 软件架构和设计方法

阅读更多

  输入、输出和设计步骤

  设计输入可以帮助确定你的架构一定要满足的需求和限制。通常输入就是用例和使用方案,功能需求,非功能需求(包括质量特性,例如:性能、安全、可靠性、和其他的),技术需求,目标部署环境,和其他限制。

  在设计的过程中,你将会建立多个架构的用例,架构问题包括特殊的关注点,满足在设计过程中定义的需求和限制的候选架构方案。常用的方法就是不断的重新设计,直到满足所有的需求,保持了所有的限制,这个迭代的过程包括下图中的五个步骤。

  

  详细的步骤描述如下:

  •   确定架构对象。清晰的对象可以帮助你集中架构,帮助在设计中正确解决问题。精准的对象帮助你决定什么时候已经完成当前阶段的工作了,什么时候可以准备下一阶段工作了。
  •   关键情节。使用关键情节将你的设计集中在最重要的地方,当候选架构方案准备好的时候,评估一下这些关键情节。
  •   应用概述。识别应用的类型,部署架构,架构风格,使用的技术,连接一下你的设计和应用实际的运营环境。
  •   关键问题。确定以质量为基础的关键问题,分解关注。有很多地方再设计的时候经常会发生误差。
  •   候选解决方案。在开始下一次架构之前,重新评估和改进你的关键方案,部署限制。

  这种架构的过程是一种迭代的、增量型的方法。你的第一个候选架构将会是一个高层次的设计,用来测试关键情节,需求,已经知道的限制,质量指标,结构框架。在你重新定义你的候选架构的时候,你将会知道更多的设计细节,需要扩展更多的关键情节,应用的概况,碰到的问题。

  当谈到迭代架构的方法的时候,

  你不应该尝试在一个迭代周期之后就建立你的应用。每一次迭代都应该添加更多细节。不要忽略细节,但是还是要集中于主要步骤,在架构和设计的基础上建立一个框架。

  下面来详细的介绍前面讲过的步骤。

  未完待续。。。。。。。。。。。。。。。。。。。。。。。。。。。。

  P39

分享到:
评论

相关推荐

    AADL 学习笔记_V2_aadl_

    AADL(Architecture Analysis & Design Language)是一种用于系统架构分析和设计的语言,主要应用于软件密集型系统的建模。这个“AADL学习笔记_V2_aadl_”文件集合显然是针对AADL标准的第二版(V2)进行的学习和参考...

    51单片机RFID射频IC卡板子资料V2

    4. **文档资料**:这部分可能包括技术规格、设计笔记、用户指南等,有助于深入理解系统的运行机制和使用方法。 5. **上位机应用程序**:上位机软件通常用于管理RFID系统,显示读取的数据,或者执行更复杂的任务,如...

    PTN原理学习笔记

    本文档的内容摘录自中兴资料《Unitrans ZXCTN 9008(V2[1].08.31)... 在IP业务和底层光传输媒质之间设置了一个层面,该层面针对分组业务流量的突发性和统计复用传送的要求而设计;  以分组为内核,实现多业务承载;

    SNMP学习笔记

    ### SNMP学习笔记 #### SNMP架构概述 简单网络管理协议(Simple Network Management Protocol,简称SNMP)是一种用于收集和组织有关网络设备的信息,并更改该设备配置的互联网标准协议。SNMP在许多网络管理系统的...

    车联网学习笔记.pptx

    介绍车联网相关内容,包括自动驾驶感知、决策相关技术、C-V2X相关技术、架构、厂家,适合快速了解车路协同领域

    redis学习笔记

    ### Redis 学习笔记知识点梳理 #### 一、Redis 关机命令及检查启动状态方法 在使用 Redis 过程中,我们可能会遇到需要重启或关闭 Redis 的情况。以下是几种常用的 Redis 关机命令: 1. **halt**: 立刻关机。 2. *...

    20个精典微信小程序源码

    每个源码都有其特定的功能和应用场景,让我们逐一探讨。 1. **AppleMusic**:模仿Apple Music设计的小程序,展示了音乐播放、歌曲推荐和用户界面设计,可以学习到如何实现音乐播放功能以及UI设计技巧。 2. **TCP,...

    Linux平台开发资源.rar_Linux平台开发资源链接汇总_V2J_linux 平台

    在IT行业中,Linux平台开发是一项至关重要的技能,尤其对于嵌入式系统和服务器端软件的构建。本资源压缩包“Linux平台开发资源.rar”提供了一个综合性的学习和工作辅助资料库,特别适合那些想要深入理解或者提升...

    展讯的相关资料

    "SC6600L软件平台介绍.pdf"则专门介绍了SC6600L这款芯片的软件平台,包括其架构、功能特性、软件开发工具和流程等,对于理解这款芯片的性能和优化代码有极大的帮助。 "Mocor平台MMI开发指南_V1[1].0.0.pdf"可能是一...

    [计算机项目]基于java的SNMP网络设备MIB信息采集系统设计与实现(项目报告+源代码).zip

    首先,"基于SNMP网络设备MIB信息采集项目说明报告.doc"应该是项目的设计文档,详细介绍了系统的目标、功能、架构和实现方法。这份文档可能会涵盖以下几个关键点: 1. **项目目标**:系统旨在自动收集网络设备的MIB...

    基于MSP432的智能小车代码

    "TI-RSLK基础版资料v2"可能指的是TI推出的Robot Systems Learning Kit(RSLK)的基础版本的第二版教程资料,这个套件通常包含一系列实验和教学资源,帮助学习者了解如何利用MSP432来构建和编程智能小车。 在这些...

    分布式系统原理与范型 V2 (2008)

    - **服务化**:采用微服务架构,每个服务独立部署和升级。 4. **原型框架**: 分布式系统开发通常会用到特定的框架来简化实现,如Hadoop、Spark用于大数据处理,Docker和Kubernetes用于容器编排,Zookeeper和...

    7.2024年大唐杯学习知识点_思维导图.zip

    例如,5G在智能交通中的应用,包括车联网(V2X)通信,可以实现车与车、车与路的实时交互,提高交通安全和效率。在智能制造中,5G低延迟特性有助于实现远程操控和自动化生产。 此外,5G网络的安全性也是重要一环。5G...

    红茶三杯技术文档.rar

    了解并熟练掌握这三种协议的配置、管理和优化,能够帮助网络工程师有效地设计和管理网络架构,确保网络的稳定运行和高效通信。同时,补充学习EIGRP将有助于完善路由协议的知识体系,尤其是在面对复杂的企业网络环境...

    STM32教程总结学习资源(2)

    这是一份针对具体型号STM32F103C8T6的学习笔记,包括了硬件连接、初始化、外设使用等实战经验,对于新手上手STM32开发板非常实用。 7. **STM32选型指南.pdf**: 选型指南提供了选择STM32微控制器的依据和建议,...

    stm32f4编程资料

    这个“stm32f4编程资料”压缩包显然包含了与STM32F4开发相关的多个资源,包括固件库使用、学习笔记和简介等内容,为开发者提供了深入理解并应用STM32F4处理器的基础。 1. **STM32F4固件库使用**:STM32F4固件库是由...

    【M3004】STM8 BLDC 开发板光盘资料.zip

    - **应用笔记**:关于特定功能或问题的解决方法和技术建议。 - **数据手册**:STM8微控制器的详细技术规格。 学习和开发过程中,首先需要了解STM8的架构和编程模型,然后熟悉BLDC电机的工作原理和控制策略。通过...

Global site tag (gtag.js) - Google Analytics