列表

详情


阅读以下关于基于MDA(Model Driven Architecture)的软件开发过程的叙述,在答题纸上回答问题1至问题3。

【说明】
某公司拟开发一套手机通讯录管理软件,实现对手机中联系人的组织与管理。公司系统分析师王工首先进行了需求分析,得到的系统需求列举如下:
用户可通过查询接口查找联系人,软件以列表的方式将查找到的联系人显示在屏幕上。显示信息包括姓名、照片和电话号码。用户点击手机的“后退”按钮则退出此软件。
点击联系人列表进入联系人详细信息界面,包括姓名、照片、电话号码、电子邮箱、地址和公司等信息。为每个电话号码提供发送短信和拨打电话两个按键实现对应的操作。用户点击手机的“后退”按钮则回到联系人列表界面。
在联系人详细信息界面点击电话号码对应的发送短信按键则进入发送短信界面。界面包括发送对象信息显示、短信内容输入和发送按键三个功能。用户点击发送按键则发送短信并返回联系人详细信息界面;点击“后退”按钮则回到联系人详细信息界面。
在联系人详细信息界面内点击电话号码对应的拨打电话按键则进入手机的拨打电话界面。在通话结束或挂断电话后返回联系人详细信息界面。
在系统分析与设计阶段,公司经过内部讨论,一致认为该系统的需求定义明确,建议基于公司现有的软件开发框架,采用新的基于模型驱动架构的软件开发方法,将开发人员从大量的重复工作和技术细节中解放出来,使之将主要精力集中在具体的功能或者可用性的设计上。公司任命王工为项目技术负责人,负责项目的开发工作。

【问题1】(7分)
请用300字以内的文字,从可移植性、平台互操作性、文档和代码的一致性等三个方面说明基于MDA的软件开发方法的优势。

【问题2】(8分)
王工经过分析,设计出了一个基于MDA的软件开发流程,如图2-1所示。请填写图2-1中(1)~(4)处的空白,完成开发流程。

【问题3】(10分)
王工经过需求分析,首先建立了该手机通信录管理软件的状态机模型,如图2-2所示。请对题干需求进行仔细分析,填写图2-2中的(1)~(5)处空白。


参考答案:

【问题1】
可移植性:在MDA中,先会建立平台无关模型(PIM),然后转换为平台相关模型(PSM),1个PIM可转换成多个PSM,所以要把一个软件移植到另一个平台时,只需要将平台无关模型转换成另一个平台的相关模型即可。所以可移植性很强。
平台互操作性:在MDA中,整个开发过程都是模型驱动的,所以标准化程度很高,这样为平台的互操作带来了非常大的帮助。
文档和代码的一致性:在MDA中,代码是由模型生成的,所以具有天然的一致性。这一点其他方法无法比拟。
【问题2】
(1)平台无关模型(PIM)
(2)UML建模
(3)模型变换(映射)
(4)模型生成源代码

【问题3】
(1)点击后退按钮
(2)联系人详细信息界面
(3)点击发送按键或点击后退按钮
(4)点击拨打电话按键
(5)拨打电话界面

详细解析:

【问题1】
可移植性:在MDA中,先会建立平台无关模型(PIM),然后转换为平台相关模型(PSM),1个PIM可转换成多个PSM,所以要把一个软件移植到另一个平台时,只需要将平台无关模型转换成另一个平台的相关模型即可。所以可移植性很强。
平台互操作性:在MDA中,整个开发过程都是模型驱动的,所以标准化程度很高,这样为平台的互操作带来了非常大的帮助。
文档和代码的一致性:在MDA中,代码是由模型生成的,所以具有天然的一致性。这一点其他方法无法比拟。
【问题2】
(1)平台无关模型(PIM)
(2)UML建模
(3)模型变换(映射)
(4)模型生成源代码
【问题3】
(1)点击后退按钮
(2)联系人详细信息界面
(3)点击发送按键或点击后退按钮
(4)点击拨打电话按键
(5)拨打电话界面  

上一题