UML 基于性能建模框架:原理、应用与局限
1. 服务需求相关规则
在性能建模中,服务需求的指定有一定规则。若在类图中已明确指定服务需求,那么在工作负载图中就无需再次明确指定。不过,工作负载图中的服务需求优先级更高,会覆盖其他地方指定的服务需求。在工作负载图中可以使用匿名调用(如思考时间),但需要明确指定服务需求。
思考时间属性可用于表示思考时间或类似的延迟,当无需明确指出责任设备(如最终用户)时可使用。例如,在图 4 的工作负载图中添加属性 thinktime = 500
,并移除 User
类和匿名消息 2。
1.1: Read()
1.2: Write()
User
{delay}
collaboration MainLoad {
property population=100;
1: CFront.Start() {cpu=100};
1.1: CDatabase.Read();
1.2: CDatabase.Write();
2: User() {d=500};
};
actor User { property delay; };
class CFront { property queue; };
CDatabase
{queue}
1: Start() {cpu=100}
CFront
{queue}
2: {d=500}
{population=100}
将工作负载图映射到 MOD 表示涉及以下几个任务:
- 从工作负载图和类图中确定每个调用的服务需求。若目标是非资源类,