定义:边界是无形的,是可大可小的,同时参与者、用例和边界又有着相生相克的性质。与其说边界是UML元素,还不如说它是一种分析方法。
1、需求是动态的过程:系统边界是无形的,看不到的,不好理解,倒不如说需求的集合来的准确。但是不能先有需求再反过来推定边界,需求总是晚于系统边界出现的。
然而,需求是靠参与者和用例确定的,但是参与者和用例得以明确的前提条件又是边界确定;需求就是在不断调整这个矛盾的过程中逐步明确进而更加确定边界的。这个过程不可避免的会导致参与者和用例的变化,所以需求是一个动态的过程,统一过程需要迭代。
因此,在收集需求时要先假定一个边界,这个边界的大小是不确定的,随着需求的明确边界也逐步变得明朗,而找到的需求的集合就确定了最终边界的大小。
2、重要性:边界是虚幻的,又是必不可少的,能否准确的把握边界,能否灵活变换边界,能否控制边界的粒度是做好需求分析和系统设计的关键。
灵活的使用边界,用边界来决定抽象层次和视角,有助于排除边界外大量的杂音来降低复杂程度,这也是面向对象(封装)比面向过程优越的地方。