非功能需求(SaaS的NFR)是跨越应用功能的跨越所有模块和功能的要求。这些要求深入到应用程序的架构,这是他们得到解决的地方。因此,在SaaS架构阶段之前了解这些NFR对于特定应用程序很重要,因此应用程序设计可以满足这些要求。

SaaS模式的本质使得某些NFR对其运行至关重要。让我们看看SaaS应用程序的十大关键NFR以及其背后的原因。

SaaS应用的关键NFR

可扩展性:

SaaS是一个按需的业务模式,很难预测系统的负载。同时,您无法计划峰值负载情况,因为这将消耗高水平的成本,并导致资源使用效率低下。因此,应用程序应设计为基于系统上的实时负载动态扩展和缩小。这就是SaaS架构师必须利用云模型来利用按需资源消耗模型的地方。

性能:

随着互联网速度和带宽可用性的不断增加,客户期望基于互联网应用的照明响应。无论应用程序的类型还是屏幕后面的处理量,SaaS客户都将期望相同。因此,架构师必须有意识地考虑潜在的性能瓶颈,并实施可以帮助利用异步处理,微服务架构,多数据可用性等概念的设计。

可用性:

可能是所有NFR中最重要的。SaaS应用程序必须首先提供给其他NFR才能播放。SaaS应用程序的可用性是最大的问题,特别是如果应用程序涉及到关键业务解决方案。SaaS应用程序的计划外停机可能导致客户的重大损失,从而可能破坏SaaS提供商的业务。架构师必须了解针对性的SLA,并以不存在单点故障的方式设计部署模型。在设计DR策略时,还应考虑恢复时间目标(RTO),恢复点目标(RPO)因素。

积分:

我们今天生活在一个高度互联的世界,这在未来几年只会增加。客户非常关心选择SaaS应用程序,该应用程序不仅可以解决预期的功能,而且还能够根据客户端的现有设置进行良好的凝结。这导致了SaaS应用程序必须与不同的内部和外部系统对话的情况。建筑师必须将SaaS应用程序设计为具有足够钩子的开放系统,以便集成不仅可行,而且可以以最小的努力完成。

审计:

从SaaS提供商的角度来看,系统的所有权及其功能与供应商有关。因此,SaaS提供商有责任实施适当的措施来跟踪系统的使用情况及其中发生的事件。此信息对于诊断目的以及解决与客户的冲突至关重要。审计设计应确保所有用户和系统操作都被正确地记录和存储,以便跟踪和识别系统中发生的事件的确切顺序。存储数据更改(旧数据与新数据)以及引发更改的时间戳和用户详细信息也很重要。

在下一个博客中,我们将看到SaaS应用的下一个5关键NFR。

原文:https://blog.techcello.com/2016/04/top-10-critical-nfr-for-saas-applications-part-1/

转 SaaS应用十大关键NFR - 第1部分的更多相关文章

  1. SaaS应用十大关键NFR - 第2部分

    SaaS应用十大关键NFR - 第2部分 在继续上一篇关于SaaS应用的十大关键NFR的博客之后,我们来看看接下来的5个对SaaS解决方案架构产生深刻影响的关键NFR. SaaS应用的关键NFR 多租 ...

  2. 3星|《十大全球CEO亲授企业高速成长的关键战略》:作为CEO,我也非常坦率地表明过家庭优先于工作

    十大全球CEO亲授 企业高速成长的关键战略(<哈佛商业评论>增刊) <哈佛商业评论>上的10来篇文章合集.大部分都看过,除了一篇中信的访谈,其他大部分是美国的有点旧的案例. 总 ...

  3. 推荐Linux管理员不可不知十大PHP安全要点 - SCutePHP

    PHP是使用最广泛的脚本编程语言之一.市场份额颇能说明其主导地位.PHP 7已推出,这个事实让这种编程语言对当前的开发人员来说更具吸引力.尽管出现了一些变化,但是许多开发人员对PHP的未来持怀疑态度. ...

  4. 十大经典排序算法总结(JavaScript描述)

    前言 读者自行尝试可以想看源码戳这,博主在github建了个库,读者可以Clone下来本地尝试.此博文配合源码体验更棒哦~~~ 个人博客:Damonare的个人博客 原文地址:十大经典算法总结 这世界 ...

  5. 十大开源的.NET用户界面框架 让GUI设计不再犯难

    选择一款合适的GUI框架是.NET开发中比较重要但又很棘手的问题,因为用户界面相当于一款应用的"门面",直接面向用户.好的UI更能吸引用户,有时甚至成为决定一款应用成败的关键.下面 ...

  6. 十大广泛使用的Linux发行版

    回到上世纪90年代,Mandrake Linux还是唯一的Linux发行版:而今天,Linux发行版的数量变得数不胜数.本文为大家整理出了十大广泛使用的Linux发行版,希望能帮助大家在选择合适的Li ...

  7. 十大经典排序算法总结——JavaScrip版

    首先,对于评述算法优劣术语的说明: 稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面:即排序后2个相等键值的顺序和排序之前它们的顺序相同 不稳定:如果a原本在b的前面,而a=b,排序之后a ...

  8. JS的十大经典算法排序

    引子 有句话怎么说来着: 雷锋推倒雷峰塔,Java implements JavaScript. 当年,想凭借抱Java大腿火一把而不惜把自己名字给改了的JavaScript(原名LiveScript ...

  9. 十大技巧快速提升原生APP开发性能

    移动应用市场用户争夺战日益激烈,原来做APP拼想法拼创意拼是否抓住用户痛点.现在,精细化用户体验成为了一个APP能否留存用户的关键问题,一旦用户觉得体验不畅,马上就有竞品APP后补,如何开发高性能的移 ...

随机推荐

  1. 一起学libcef--搭建自己的libcef运行环境(Win32程序,错误C2220解决方案)

    转自 http://blog.csdn.net/wangshubo1989/article/details/50180413 现在就来讲讲如何在自己的win32程序中搭建libcef运行环境. 首先就 ...

  2. centos7上安装zabbix4.0

    zabbix4.0已经推出有一段时间了,针对之前版本做了很多优化配置,易用性得到提高,特别lts(long team support)长技术支持版本,官方说提供5年的稳定技术支持,在商业化运用上,是比 ...

  3. Opencv-Python学习笔记(二)

    2. 使用OpenCV3处理图像 2.1 不同色彩空间的转换 OpenCV中有数百种关于在不同色彩空间之间转换的方法. 三种常用色彩空间:灰度.BGR.HSV(Hue色调,Saturation饱和度, ...

  4. Babel插件:@babel/plugin-transform-runtime

    一 概述 每个Babel编译后的脚本文件,都以导入的方式使用Babel的帮助函数,而不是每个文件都复制一份帮助函数的代码. 1 优点 (1)提高代码重用性,缩小编译后的代码体积. (2)防止污染全局作 ...

  5. vue小结

    一:MVVM模型的理解 Model:数据模型,数据和业务逻辑都在这里定义:View代表视图,负责数据的展示:ViewModel:负责监听model中数据的改变并且控制视图的更新,处理用户交互操作:Mo ...

  6. project2

    [概念] 要好好理解并且背下来记住 Java基础,呵呵呵.自己查吧. local host搞错了,整个跑不出来.真尴尬.不理解啊. static原来是全局的意思啊,好吧.以前都忘了,这次该记住了.st ...

  7. Git那些事儿

    Git是目前世界上最先进的分布式版本控制系统,适合多人协作开发的大型项目.我平常也经常使用git,来管理自己的几个小项目.简单说说git的原理和git的特点!(只有知道了一个工具的运行原理,设计思路, ...

  8. Flask-Session 简单使用

    一 知识点 1. 安装 flask 1.0.2 使用Flask-Session,其实必须需要配置的只有这几个地方: 注意!!!!!!: 1.  需要配置的地方1 # flask_session 中的S ...

  9. vue 利用原声input上传图片并预览并删除

    <template> <div class="com-upload-img"> <div class="img_group"> ...

  10. asp.net asp.net application 升级到 asp.net web 解决找不到控件 批量生成.designer文件

    颇费周折后,其实很简单,只需要生成designer文件后,重新保存所有页面即可.就是懒得写.懒真的是一种病,手上不能懒,脑子里更不能懒,否则就是给自己挖坑,仔细认真,注意细节!!!! PS:注意修改p ...