zoukankan      html  css  js  c++  java
  • 阅读笔记一线架构师实践指南03

      架构设计不是纯粹的技术问题,是要面临对技术与业务的关系问题,最终,要求架构师不仅懂技术,懂业务,而且能理顺复杂的技术与业务之间的关系。架构设计就是要完成从面向业务到面向技术的转换,在鸿沟上架起一座桥梁,所以架构师必须懂需求,不用像需求分析师那样懂各种需求技术,但需求类型、需求影响架构的原理、质量属性间的相互影响关系等都是必须精通的。需求=功能需求+非功能需求,架构师应该同时关注两方面的需求,而且对质量的理解不应仅限于《ISO 9126》标准,有的时候在一定程度上必然要对之进行调整,扩充以适应实践要求。

      在寻找质量属性需求的时候,我们常常会觉得,软件的质量属性需求很飘,常常难以把握,文章中给出了解决办法,利用场景技术为核心手段,以目标-场景-决策表为思维工具,致力于支撑非功能目标的理性设计过程。通过研究开发、维护。使用、变更等环节可能遇到的情况,不断发现场景,评估场景,做出决策,但是要注意避免过度设计,引入很多抽象和机制是不必要的,通过权衡场景发生的几率,支持场景带来的价值,遗漏的代价等因素,来理性决定是否应支持该场景。非功能目标的考虑是纵穿架构设计始终的环节,非功能需求支持是否到位,关键要靠场景思维的运用。场景包含5要素,影响来源(来自系统外部或系统内部的触发因素),如何影响(影响来源施加了什么影响),受影响对象(默认为本系统),问题或价值(受影响对象因此出现什么问题或者需要体现什么价值),所处环境(可选因素),通过目标-决策-场景将思考过程形象化,可视化,会帮助我们有效促进架构设计思路。

  • 相关阅读:
    mongodb浅析
    java8学习的一点总结
    mysql 存储引擎对索引的支持
    Ubuntu16.04下安装OpenCV2.4.13
    windows配置远程桌面连接到ubuntu
    Ubuntu16.04调整屏幕分辨率至1920*1080
    Ubuntu 16.04 安装NodeJs
    Ubuntu安装SSH服务
    基于MNIST数据集使用TensorFlow训练一个包含一个隐含层的全连接神经网络
    基于MNIST数据集使用TensorFlow训练一个没有隐含层的浅层神经网络
  • 原文地址:https://www.cnblogs.com/zzstdruan1707-4/p/13109695.html
Copyright © 2011-2022 走看看