|
 |
RSS 源 : |
Fred Chong's WebBlog |
 |
投递时间: |
2008年2月11日星期一 15:14 |
 |
作 者: |
Fred Chong |
 |
主 题: |
面向商品化软件和服务的应用市场(Application Marketplace)架构 |
|
 |
整篇文章链接:http://blogs.msdn.com/fred_chong/archive/2008/02/10/an-application-marketplace-architecture-for-commercializing-software-and-services.aspx |
|
|
近来,我一直在考虑对于应用市场的与日俱增的关注度的问题。我得出的结论是,在应用市场(Application Marketplace)与我在前面的一篇Blog中描述的长尾的4种推动力之间存在着一种强大的联系。我认为如果在适当的位置采取正确的商业策略,那么长尾软件市场潜在的经济效益将一定能够从应用市场中释放出来。 |
|
|
在这篇文章中,我将分享一些关于这种应用市场的架构的想法。 |
|
|
高端的应用市场包括四个松耦合的模块:市场服务(Marketplace Services)、应用设计和工作区(Application Designer and Workspace)、业务运营服务(Business Operation Services)和社区网络(Social Network)。这四个模块一起提供了一个端到端的解决方案,从而将长尾的推动力变为现实。 |
|
|
 |
|
Architecture Components of Application Marketplaces |
|
|
市场服务 |
|
|
市场服务是通过一个面向公众的网站来提供的。就像其它的商业网站一样,市场网站的用户界面将影响并帮助塑造市场服务客户的第一印象。 |
|
|
这种业务模型将影响到市场服务中不同类型的角色:销售应用(并可能创建或在市场服务中宿主应用程序)的独立软件开发商(ISV)、购买应用的最终用户,以及那些包装并销售应用的合作伙伴和增值销售商(并提供他们自己的增值服务)。如果这种市场服务还可以为它的ISV合作伙伴提供应用的宿主服务,那么它将可以选择不使用任何宿主提供商合作伙伴,从而防止将市场服务提供给其它宿主提供商(他们是一些潜在的竞争者)。 |
|
|
应用程序目录就像一个地址簿,客户可以用它来发现、查看并购买已经发布的应用。为了提供一个更好的搜索和更加出色的购买体验,应用程序目录可能会实现不同类型的过滤器,它使用额外的筛选条件,例如应用程序类型和流行程度,从而帮助用户缩小他们的应用选择范围。 |
|
|
除了应用程序目录以外,市场服务还发布了一系列管理用途的应用,客户可以使用它们来编辑他们的账户属性,并管理市场服务中的业务处理。例如,一个ISV可能会使用管理应用来编辑并发布公司的描述,修订他们发布的应用价格,并查看通过市场服务销售的应用的收益报告。类似的,小型企业也可以使用管理应用来订阅或取消应用,并检查他们的市场服务账户的支付情况。 |
|
|
业务运营服务 |
|
|
市场服务为Marketplace的客户提供了一个公用的接口,来发布应用并执行商业操作,而业务运营服务则是基础结构与管理服务的集合,它在后台支持市场服务。 |
|
|
身份管理模块提供了身份验证、访问控制与授权服务的核心功能,从而让其它的业务运营服务可以使用安全的业务数据和Marketplace的事务处理。 |
|
|
盈利模块让应用提供商可以使用不同的价格模型来销售应用,例如按照用户许可证订阅的方式,应用的收益将从在线的广告中获得。为了有效的支持这种盈利架构,Marketplace将提供解决方案来帮助ISV定义并完善他们的应用价格策略(例如,每个用户每个月20块钱),并且实现收益报告引擎,它将帮助ISV了解已发布的应用的直观收益情况。 |
|
|
计量与收费模块使用预告定义好的策略以及在盈利模块中记录的数据,来生成记账单并向客户收取相应的费用。收费引擎可以通过收集业务应用的费用,来为ISV提供收费服务,并将收益直接打入到ISV的银行账户中。 |
|
|
应用市场通常会向ISV或商业用户提供自服务的注册,从而注册为一个新的租户。当租户管理和订阅模块接到一个新的注册请求后,将会开启一个租户供应的工作流,并与身份管理模块进行交互,从而为这个新的租户账户创建一个新的公司和一个管理员用户。供应工作流也将会为新的公司创建新的授权记录,从而让后续的应用订阅者可以被适当的跟踪和计量。最后,该工作流将触发宿主应用运行时基础结构中的一个子工作流,从而提供一系列新的元数据,用来配置和初始化新租户的应用环境。 |
|
|
社区网络 |
|
|
Marketplace中的社区网络不仅可以让应用程序的用户和提供商相互交互,而且还可以完全依靠用户创建的内容来帮助用户找到适当的应用,并为ISV提供了一定的市场智能。 |
|
|
通过排名和名誉系统,用户可以从感觉上了解其他用户对于应用的易用性与质量的想法。另外,这些内容还可以帮助应用提供商了解他们自己的应用,从而在未来的版本中进行增强与改进。 |
|
|
许多业务专家现在可以通过社区网络与他们的同学、同事和业务合作伙伴保持联系。在这个世界中,商业成功的关键在于“你知道谁”,可以利用社区网络连接来挖掘隐藏在已订阅应用中的价值信息。例如,在外部社区网络上的业务合作伙伴可能会为Marketplace中的一个业务租户推荐潜在的销售机会。推荐的销售机会被存储在一个在Marketplace中购买的CRM应用中。 |
|
|
应用程序设计与工作区 |
|
|
应用程序工作区是宿主用户界面(为商业用户提供应用程序的交互)的容器。除了为已经订阅的应用提供仪表板以外,工作区还可以包括其它功能,让用户更为直接的与市场服务进行交互,例如提供了一些链接来购买Marketplace中的其它应用。 |
|
|
在Marketplace中,工作区所能够提供的用户体验的种类是非常有限的。但是,应用程序工作区的重要原则就是以简洁、易用的协作方式和来让第三方盈利。 |
|
|
为了消除性能与安全性方面的担忧,通常在宿主运行时环境中的第三方应用的计算类型都会有一些限制。同样地,开发人员只允许创建宿主运行时环境中允许的计算范围内的应用程序功能。 |
|
|
例如,开发环境应当在自定义工作流循环和分析逻辑上加以限制,从而确保工作流最终可以终止。另外,开发工具也可以在应用程序对象模型上设定一些自定义的边界,保证数据库架构不会过分的复杂,从而优化系统性能。 |
|
|
值得注意的是,应用程序设计器和工作区模块的宿主版本只是一种用户体验的模式。当目标用户是来自不同的操作系统平台时,这种用户体验将会受益匪浅,人们只需要浏览器就可以与应用进行交互。 |
|
|
还有一些设计与运行时体验的混合模式,而那些工作区不是宿主在Marketplace当中的。例如,应用程序可能使用Microsoft Access进行设计,并运行在应用开发人员的计算机上。当应用程序结束时,它的元数据将被发布到Marketplace当中。随之,那些购买了应用的商业用户可以选择在他们自己的桌面上运行应用,或在Marketplace中宿主的应用程序运行时环境中运行。 |
|
|
创建一个新的应用程序平台可能是一项非常巨大的任务。索性的是,第三方厂商并不需要从零开始,他们可以使用现有的产品,如Windows Sharepoint Services和Microsoft CRM 4.0,来创建和自定义他们自定义的应用程序设计器和工作区平台。这些平台已经提供了工具,来创建应用程序,并可以将这些应用程序作为元数据导入或导出运行时环境,这样可以简化在Marketplace中发布与订阅应用程序的过程。 |
|
|
如果你一直在跟随我的SaaS架构指南的内容,那么你一定知道我非常热衷于亲自动手实现这些内容,并充分利用现有的产品和工具。正如你所期待的那样,我已经使用ASP.NET和CRM 4.0创建了一个示例的应用市场解决方案。这些示例解决方案将会在随后的几个月内发布出来。 |
|
|
希望你继续关注,我将会在未来共享更多内容。 |
|
|
>> 查看文章 |