一切皆可抽象

大而无形 庖丁解牛 厚积薄发 涤虑玄览
   ::  ::  ::  ::  :: 管理

【原创】非功能性需求的初探

Posted on 2006-02-24 11:08 锋出磨砺 阅读(1543) 评论(0)  编辑  收藏 所属分类: 杂谈
软件设计时往往最多考虑的是最基本的实现需求。后来,随着设计工具和思想的发展,
  我们考虑到了可扩展,可伸缩,可维护,可管理,可靠,可使用,安全等等。这些因素
  是设计过程中的非功能性的设计,因为每个产品的背景不一样,所以,我们往往只是借助
  于成熟的架构(如mvc),产品提供的性能(容器的事务,安全等能力)等,简单的实现
  了一些解决非功能性需求。从来没有很仔细的考虑过自己的产品中如何来进行这些需求的
  设计。
      根据经验,下面简单讨论一下。
      一个软件产品所运行的环境有二,一是硬件环境,二是软件环境(操作系统,数据库系统,中间件)。
      那么我们就从这两个方面入手,进行一下非功能需求设计的讨论。
      1,硬件产品的资料统计,和运行平台的界定。对潜在用户的运行平台进行大范围的统计。并
         最终确定出共性。
      2,从性能角度,考虑硬件的横向(和软件的集群有关)和纵向升级。来解决产品的性能(扩展和伸缩)问题。
      3,硬件产品的安全来解决部分产品的安全问题
      4,操作系统的支持和兼容
      5,中间件(消息,安全,事务)的支持和兼容,同时考虑集群问题。
      6,数据库系统的兼容以及利用数据库的性能解决部分问题

只有注册用户登录后才能发表评论。


网站导航: