以SaaS级O2O管理系统为例,浅析SaaS级系统设计

6 评论 37248 浏览 201 收藏 11 分钟

文章以SaaS级O2O管理系统为例,对SaaS级系统设计做了简单的分享。

1.1 概念简介

SaaS是一种以托管方式部署软件,通过Internet存取来实现应用功能的软件应用模型。SaaS主要特征体现在应用代码所处的位置和部署、存取代码的方式,SaaS以一种通过Internet提供软件的模式来实现。

SaaS提供商将应用软件统一部署在自己的服务器上,客户可以根据自己的实际需求,通过互联网向提供商订购所需的应用软件服务,按照订购服务的种类、用户数量和租用时间向提供商支付费用,并通过互联网获得提供商的服务。

1.2 社会需求——企业信息化

中小型企业与大型企业相比,其信息化基础较差,可投入信息化建设的资金、计算机软硬件资源和人才资源等存在不足。此外,中小企业具有业务差异大、企业规模小、分支机构分散的特点,使得中小企业信息化成本相对过高、方案不易推广、服务难度较大,形成了中小企业信息化瓶颈。

专家学者对中小企业信息化问题进行了深入的研究,如面向中小企业的ASP(Application  Service Provider,应用服务提供商)平台框架、面向中小企业的协同商务方案、面向中小企业的柔性商务智能平台、基于Internet的服装出口供应链网络平台等,政府部门与IT厂商和通信运营商积极合作,以信息化公共服务平台模式推动中小企业信息化建设。如图1-1所示数据为我国 2011-2016 年企业互联网使用比例。

图1-1 我国 2011-2016 年企业互联网使用比例

SaaS是在21世纪开始兴起的一种全新的软件应用模式,是随着SAP应用的成熟而崛起的,具有投入低、收益高、易于实施和管理等特点,是更适合中小企业选择的信息化方案。

1.3 SaaS理论发展

1999年,Keith Bennett 等人发表了面向服务软件的相关论文,并提出了 Software as a Service 的原始概念。他们提到了由 DiCE (The Distributed Centre of Excellence in Software Engineering) 执行的BT (British Telecommunications plc,英国电信) 软件发展研究项目中的软件应满足的五个关键因素: 必要的需求组合、用户定制化、自适应性、细致分解并模块化和透明化。

项目的研究结果表明,只有基于服务的软件模型才能符合以上的要求。同年,Marc Andreessen 创建了 Loudcloud 公司,该公司是最早尝试利用基于服务的模型架构,将软件作为服务,并使这种模式走上商业化道路的公司之一。 同时, 这项技术也被称为“ ASP ( Application Service Providers, 应用服务提供商)”,根据《Wired》杂志记载, Loudcloud 公司是最早谈论云计算和 SaaS 的厂商之一。

2001年,Keith Bennett 等人又发表论文,提出了基于服务的软件模型,将服务提供商分为三个类型,即 ISPs (Information service providers,信息服务提供商)、CSPs (Contractor service providers,通信服务提供商) 和 SSPs (Software service providers,软件服务提供商),并给出了他们之间的相互协作以及与终端 用户之间的关系。

2001年2月,SaaS (Software as a Serviee) 由 SI- IA (Software and Information Industry Association,美国软件与信息工业协会) 的《Strategic Backgrounder: Software as a Service》白皮书首次提出。 SIIA 并未给 出一个关于 SaaS 的明确定义, 通过对 ASP 模型的分析和延展提出在 SaaS 模型中,应用或服务是从一个数据中心出发,通过网络 (国际互联网、企业网、局域网或虚拟专用网) 进行部署,为用户提供接入或使用权限,用户定期缴纳费用。

2006年,Frederick Chong 等人提出 SaaS 具备“软件部署为托管服务,通过互联网存取”的特性 (Frederick Chong,2006)。首次提出 SaaS 的四级成熟度 模型,为 SaaS 概念的明确、SaaS 软件的设计目标和原则提出了理论依据。

在SaaS模型下,客户不在购买软件许可(license)而改用提供商租用基于Web的软件来管理企业经营活动,SaaS与传统软件许可模式的区别见表1-1。

表1-1 SaaS模式与传统软件许可模式的区别

1.4 SaaS成熟度模型

SaaS模式与ASP模式都具有“软件即服务”的概念,但是SaaS要比ASP复杂得多,传统的ASP只是针对每个客户定制不同的应用服务,而没有将所有客户放在一起考虑。

在SaaS模式下,在用户和Web服务器的应用之间增加了一个中间层,用来处理用户的定制、扩展性和多用户的效率问题。SaaS成熟度模型可以很好地显示SaaS在架构上与ASP的不同,如图1-2所示。

图1-2 SaaS成熟度模型

Level 1是ASP模式的应用架构。从技术角度来说,每个客户使用一个数据库、一个Web站点或者虚拟目录,每个客户运行相同的代码实例,完全独立与主机上运行的其他客户实例。提供商要根据客户需要,对数据库中的数据结构和应用代码作定制化修改。(一个客户为一个实例,一套程序一个实例,所有客户程序不同)。

Level 2是所有客户运行相同的代码实例。从技术角度来说,所有客户都是使用一套安装包,代码库的修改能够立即作用于所有客户。提供商提供了详细的配置选择,让客户能够改变应用的外观和行为。不同实例在代码层面上彼此相同,但是应用数据是隔离的。(一个客户为一个实例,一套程序一个实例,所有客户程序相同)。

Level 3是单个实例来满足客户不同需求。从技术角度说,所有客户使用一套应用程序来承载所有客户实例,使用一个数据库保存所有客户的数据,因而使用资源的效率大大超过level 2。提供商采用可配置的元数据为不同客户提供体验和特性集,采用授权与安全性策略可确保不同客户的数据彼此区分开来。(一个客户为一个实例,一套程序承载所有实例,所有客户程序相同)。

Level 4是SaaS应用的最终目的,属于成熟度模型最高的一级,提供商在负载平衡的服务器上为不同客户提供主机服务,运行相同的实例。不同客户的数据彼此分开,可配置的元数据可以提供独特的用户体验与特征集。这种架构的SaaS系统可轻松适应大规模客户的需要,可在不对应用进行额外架构设计的情况下根据需求灵活地增加或减少后端服务器的数量。(level 3的基础上增加客户负载平衡器)。

1.5 SaaS在中小企业的应用

目前我国中小企业在信息化建设上普遍存在以下三个主要问题:1、信息化建设资金不足;2、信息化应用效益不高;3、信息化应变能力不强。

据中商情报网显示,截至2015年末,全国工商登记中小企业超过2000万家。SaaS模式以其自身优势可以在缓解信息化投入所需的经济压力和人才压力、降低信息化建设过程中的风险、使信息化应用变得更加灵活方面起到积极作用,很巧妙的缓解了三大问题,并优化了用户企业的经济链。

SaaS模式甚至支持跨地域的实时应用,这也为SaaS模式的后续发展奠定了较好的基础。目前,SaaS应用模式主要有企业级SaaS和消费级SaaS两种,起初企业SaaS市场以较为大众化的消费级SaaS为主,随着运营过程中用户对效率和成本的要求不断提高,企业级SaaS在整个SaaS市场所占的比例持续扩大。

 

本文由 @ ohdkooou 原创发布于人人都是产品经理。未经许可,禁止转载。

题图来自PEXELS,基于CC0协议

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 怎么了 你累了 说好的 更新呢

    我懂了 不说了 爱淡了 梦远了

    来自北京 回复
  2. 小姐姐头像好看啊!!!交个朋友!哈哈哈 😉

    来自广东 回复
  3. 很棒,能加你微信么

    来自广东 回复
  4. 看了两篇文章,非常受益,我现在也要做SaaS系统,但是网络搜素到的内容都不太深入,有没有什么书籍推荐呢,建议出个文章啦谢谢

    来自新加坡 回复
  5. 谢谢大家的阅读和打赏,后续我会在系统架构、权限设计、业务流程、功能模块等方面进行详细讲解。

    回复
    1. 期待

      来自福建 回复