四类约束=业务环境约束+使用环境约束+构建环境约束+技术环境约束;这四类约束分布在不同层面的需求。
业务环境约束。属于业务级需求,来自于出资方的约束,如:上线时间、预算、集成、业务规则、行业法律法规(禁止使用解释性编程语言)等;由出资方指定技术选型(xx一体化平台、必须使用xx数据库系统、必须遵循xx数据标准、应与原xx系统集成、应与xx系统互联互通等)。
使用环境约束。属于用户级需求,来自于使用方的约束,如:使用者的专业能力、何种人群、分布式使用、使用环境有电磁干扰、车船移动等因素。
构建环境约束。属于开发级需求,来自于开发和维护人员的约束,如:开发人员的技术水平、业务知识、管理水平等。
技术环境因素。来自于业界当前技术环境约束,如:成熟算法、技术平台、中间件、编程成语言成熟度等。
这四类约束可以分为以下三种情况:
(1)直接制约设计决策的约束。如:系统运行于UNIX平台上。
(2)转化为功能需求的约束。如:应严格执行总部统一规定的商品折扣率。分析后可转化为功能需求:调整商品折扣率;
(3)转化为质量属性的约束。如:操作人员计算机水平普遍不高。分析后转换为系统应具有高易用性(如:完成一个业务操作平均输入数据次数最多xx次)和容错性(如:系统对输入数据在人机交互界面进行有效限制,避免操作人员输入非法数据。)