软件需求是指用户对新系统在功能、行为、性能、设计约束等方面的期望。

软件的需求主要分为三个层次,从低到高依次是系统需求、用户需求和业务需求。系统需求主要是从系统角度来说明软件需求,包括功能需求、非功能需求和设计约束。

功能需求:规定开发人员必须在系统中实现的软件功能,满足业务需要。

非功能需求:系统必须具备的除功能需求外的特性,其中包括软件质量属性。

性能需求:响应时间、吞吐量、资源利用率等。安全性、可靠性、可维护性与易用性等等。

设计约束:系统的限制条件或补充说明,如系统必须采用国产数据库系统。

UML 用关系把事物结合在一起,主要有以下四种关系(也就是类与类之间的6种关系):

依赖(dependency):两个事物之间的语义关系,其中一个事物发生变化会影响另一个事物的语义。

关联(association):描述一组对象之间连接的结构关系。

聚合(Aggregation):两个对象是整体与部分,可以分割。

组合(Composition):两个对象是整体与部分,但是无法分割。

泛化(generalization):一般化和特殊化的关系,描述特殊元素的对象可替换一般元素的对象。

实现(Realization):一个类或多个类实现一个接口,其中的每个类分别实现接口的操作。