软件体系结构描述语言:C2学校教务系统中教师补课子系统有如下一些基本假设:本系统中有三个基本对象:教师、学生和教务员。
补课基本流程如下:教师(teacher)分别向学生(student)与教务员(dean)发出补课请求makeupClassRequest()、并提供一个教师期望的补课时间与地点的集合preferSetTeacher(time,address),提出一个教师不期望的补课时间与地点集合excludeSetTeacher(time,address)供学生选择。
同时,教师向学生与教务员发出请求获取学生与教务员期望的补课时间地点集合getPerferSet(),获取不喜欢的时间地点集合getExcludeSet(),获取教师所提供的期望补课时间地点集合之外的时间地点集合addPreferSet(),学生与教务员收到教师的补课请求以及相应的参数后,根据自身的情况以及学校课室的使用情况,结合教师所提供的preferSetTeacher(time,address)、excludeSetTeacher(time,address),①从preferSetTeacher(time,address)集合中选取出合适的元组组成学生自己所期望的补课时间与地点集合preferSet(time,address)。
②增加不在excludeSetTeacher(time,address)的时间与地点集合excludeSet(time,address)。
最后将preferSet(time,address)与excludeSet(time,address)发回给教师。
教师接收到学生与教务员返回的集合excludeSet(time,address)后,与excludeSet(time,address)进行“并”(or)计算。
接收到preferRes(time,address)后,与原有的preferSet(time,address)进行“交”(and)计算,然后再与excludeSet(time,address)进行差(subtraction)运算。
教师最后从preferSetTeacher(time,address)集合中选择一个元组作为补课的时间与地点,并通知学生与教务处。
要求:画出该系统基于C2风格的体系结构图利用C2语言描述出教师构件利用C2语言描述出学生构件种用C2语言设计出本系结构中的连接件描述出软件体系结构并设计出一个体系结构的实例,在这个实例中,教师是张三,有学生有a,b,c三人,教务员是李四。
1