案例分析题

试题五
阅读以下关于Web应用系统的叙述,在答题纸上回答下列问题。

【说明】

某公司因业务需要,拟在短时间内同时完成“小型图书与音像制品借阅系统”和“大学图书馆管理系统”两项基于B/S的Web应用系统研发工作。

小型图书与音像制品借阅系统向某所学校的所有学生提供图书与音像制品借阅服务。所有学生无需任何费用即可自动成为会员,每人每次最多可借阅5本图书和3个音像制品。图书需在1个月之内归还,音像制品需在1周之内归还。如未能如期归还,则取消其借阅其他图书和音像制品的权限,但无需罚款。学生可通过网络查询图书和音像制品的状态,但不支持预定。

大学图书馆管理系统向某所大学的师生提供图书借阅服务。有多个图书存储地点,即多个分馆。捜索功能应能查询所有的分馆的信息,但所有的分馆都处于同一个校园内,不支持馆际借阅。本科生和研究生一次可借阅16本书,每本书需在1个月内归还。教师一次可借阅任意数量的书,每本书需在2个月内归还,且支持教师预定图书。如预定图书处于被借出状态,系统自动向借阅者发送邮件提醒。借阅期限到达前3天,向借阅者发送邮件提醒。超出借阅期限1周,借阅者需缴纳罚款2元/天。存在过期未还或罚款待缴纳的借阅者无法再借阅其他图书。图书馆仅向教师和研究生提供杂志借阅服务。

基于上述需求,该公司召开项目研发讨论会。会议上,李工建议开发借阅系统产品线,基于产品线完成这两个Web应用系统的研发工作。张工同意李工观点,并提出采用 MVP(Model View Presenter)代替MVC的设计模式研发该产品线。

问答题

软件产品线是提升软件复用的重要手段,请用300字以内的文字分别简要描述什么是软件复用和软件产品线。

【正确答案】

软件复用是将已有软件的各种有关知识用于建立新的软件,以缩减软件开发的维护的花费。软件服用不仅仅是对程序的复用,它还包括对软件生产过程中任何活动所产生的制成品的复用,如项目计划;可行性报告、需求定义、分析模型、设计模型、详细说明、源程序、测试用例等等。
软件产品线是指具有一组可管理的公共特性的软件密集性系统的合集,这些系统满足特定的市场需求或任何需求,并且按预定义的方式从一个公共的核心资产集开发得到。

【答案解析】
问答题

产品约束是软件产品线核心资产开发的重要输入,请从以下已给出的(a)~(k)各项内容,分别选出产品的相似点和不同点填入表5-1中(1)~(8)处的空白,完成该软件产品线的产品约束分析。

(a)项目当前状态;(b)项目操作;(c)预定策略;(d)会员分类;(e)借阅项目数量;(f)项目的类型和属性;(g)检索功能;(h)与支付相关的用户信息;(i)图书 编号;(j)教师;(k)学生

表5-1产品约束分析

相似点 用户通用数据,如姓名、电话、住址等
(1)
项目通用数据:项目存储位置、(2)
(3):预定、借阅、归还
(4)
不同点 (5)
借阅策略 允许哪些顾客可以借阅
(6)
在什么情况下借阅权限可被修改
逾期惩罚 当借阅的项目没有如期归还时,该采取何种措施
提醒策略 顾客发出预定请求时,如果项目处于被借阅状态,如何处理
是否需要向顾客发出一个通知,以提醒其归还该项目
  哪些顾客可以预定
预定请求何时过期
收费方式 成为顾客是否需要付费
发出预定请求时是否需要付费
当延期归还时,是否需要付费
(8)
馆际互借
【正确答案】

(1)f、i
(2)a
(3)b
(4)g
(5)d、i、g
(6)e
(7)c
(8)h

【答案解析】
问答题

MVP模式是由MVC模式派生出的一种设计模式。请说明张工建议借阅系统产品线采用MVP模式代替MVC模式的原因。

【正确答案】

MVP全称:Model-View-Presenter;MVP是从经典的模式MVC演变而来,它们的基本思想有相通的地方:Controller/Presenter负责逻辑的处理,Model提供数据,View负责显示。在MVP里,Presenter完全把Model和View进行了分离,主要的程序逻辑在Presenter里实现。而且,Presenter与具体的View是没有直接关联的,而是通过定义好的接口进行交互,从而使得在变更View时候可以保持Presenter的不变,更有利于软件构件和重用,有更好的可扩展性。

【答案解析】