首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
论模型驱动的软件开发方法及其应用 模型驱动架构(MDA)是对象管理组织(OMG)提出的一种新的软件开发方法,它强调由软件系统的建模行为驱动整个系统的开发过程,来完成系统的需求分析、架构设计、构建、测试、部署和运行维护等工作。与传统的UML模型相比,M
论模型驱动的软件开发方法及其应用 模型驱动架构(MDA)是对象管理组织(OMG)提出的一种新的软件开发方法,它强调由软件系统的建模行为驱动整个系统的开发过程,来完成系统的需求分析、架构设计、构建、测试、部署和运行维护等工作。与传统的UML模型相比,M
admin
2012-03-20
83
问题
论模型驱动的软件开发方法及其应用
模型驱动架构(MDA)是对象管理组织(OMG)提出的一种新的软件开发方法,它强调由软件系统的建模行为驱动整个系统的开发过程,来完成系统的需求分析、架构设计、构建、测试、部署和运行维护等工作。与传统的UML模型相比,MDA能够创建出机器可读和高度抽象的模型,这种模型通过转换(Transformation)技术可自动转换为代码、测试脚本、数据库定义以及各种平台的部署描述。通过使用MDA技术,可以有效解决传统软件开发过程中的生产效率问题、系统移植问题、互操作问题以及文档和系统后期维护问题。
请围绕“模型驱动的软件开发方法及其应用”论题,依次从以下三个方面进行论述。
(1).概要叙述你参与实施的模型驱动的软件开发项目以及你所担任的主要工作。
(2).阐述模型驱动的软件开发过程中的主要活动,并论述模型驱动的软件开发过程与传统的软件开发过程的区别。
(3).阐述在进行模型驱动的软件开发时遇到了哪些问题,如何解决。
选项
答案
一、论文中要具体介绍组织的业务背景、组织结构、软件系统的架构、采用的技术等内容和担任的实际工作。 二、相关的内容包括: 模型驱动的软件开发过程中的主要活动包括: (1)需求分析人员根据领域需求得到描述软件系统外部特征的计算无关模型(CIM); (2)在对CIM进行分析的基础上得到平台无关模型(PIM),并根据业务逻辑进一步精化PIM; (3)进行PIM到平台特定模型(PSM)的模型转换; (4)将每个PSM转换为实现特定模型(ISM),生成应用程序代码,并进行测试。 2.与传统的软件开发过程相比,模型驱动的软件开发方法有5个主要区别。 (1)自动实现模型变换。 传统的开发过程中,模型到模型的变换,或模型到代码的变换都是手工完成的;而模型驱动的开发过程中,模型变换都是由相关工具自动完成的,PIM到,PSM、PSM到ISM都可以自动转换实现。 (2)模型是开发产品,也是程序生成的基础设施。 模型驱动的开发过程中,模型是软件开发生命周期中的核心产品,通过一系列转换最终可以自动生成执行代码,是产生执行代码的基础设施。而在传统开发过程中,模型只是分析人员、设计人员进行分析与交流的文档与图标,不能生成可用的应用程序代码。 (3)模型变换过程与代码生成过程同步,可维护性强。 模型驱动开发过程中,执行代码是由模型通过转换直接生成的,保证了模型与代码的同步。开发人员维护系统的重心不在是传统开发方法中的程序代码,而是与业务逻辑相关、与技术平台无关的平台无关模型PIM。 (4)业务逻辑模型与实现技术平台分离。 需求分析阶段生成的PIM模型与开发技术、开发平台以及实现技术无关,并且PIM模型可以根据不同的技术平台,自动生成以模型为基础的、适用于不同技术平台的软件系统。 (5)提高了开发效率与软件质量。 模型驱动开发的模型架构代表了对系统不同层次的抽象,使得开发人员更加清晰地了解系统的整个架构,而不会被具体的实现技术所困扰。开发人员专注于根据系统业务逻辑构建PIM,通过代码生成技术自动生成实现代码,减少了由于人为因素导致的系统实现错误。 三、在进行模型驱动的软件开发时可能存在的问题包括:如何对CIM和PIM进行建模;如何进行模型之间的转换,特别是PIM到PsM的转换;如何根据需求进行实现平台选择;如何根据PSM生成ISM(代码);如何进行系统测试;等等。
解析
转载请注明原文地址:https://kaotiyun.com/show/GZQZ777K
本试题收录于:
系统分析师下午案例分析考试题库软考高级分类
0
系统分析师下午案例分析考试
软考高级
相关试题推荐
输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果。如果是返回true,否则返回false。例如输入5、7、6、9、11、10、8,由于这一整数序列是如下树的后序遍历结果:8/\610
如何通过ADO.NET读取数据库中的图片?
八皇后问题(输出所有情况,不过有些结果只是旋转了90度而已)。哈哈:)回溯算法的典型例题
在c#中using和new这两个关键字有什么意义,请写出你所知道的意义?
给定链表的头指针和一个结点指针,在O(1)时间删除该结点。链表结点的定义如下:structListNode{intm_nKey;ListNode*m_pNext;};函数的声明如下:voidDeleteNode(L
输入一个链表的头结点,从尾到头反过来输出每个结点的值。链表结点定义如下:structListNode{intm_nKey;ListNode*m_pNext;};
对MSN常规选项进行设置,使登录到Windows时自动运行Messenger(R),联系人联机时显示通知,收到电子邮件时通知我。
如果没有光盘,利用系统默认安装调制解调器的驱动程序。
为系统创建一个无毒点,以便遭遇病毒时将系统还原。
随机试题
下列选项中,国际运输保险的货运量最大的是()
多普勒频移与下面哪项无关
下列哪种诊断最准确为明确有无后纵韧带骨化,宜行哪项检查
十二指肠溃疡的直接X线征象是
房地产置业投资中,全部流动资金以货币资金形式被收回的时间在()。
实施素质教育是提高国民素质,培养跨世纪人才的战略举措,素质教育的特点是()。
在全县上下的共同努力下,某县户均税费负担逐年下降,2001年比2000年下降了3%,2002年比2001年下降了4%,2003年比2002年下降了5%,问2003年该县的户均税费负担比2000年下降了百分之几?()
下列句子中,加下划线的成语使用不恰当的一句是______。
根据蒙代尔一弗莱明模型简要分析开放经济条件下财政政策和货币政策的作用效果。
Healthyguiltisawarningsignalthateithersomethingdangerousisabouttohappenorsomethinghasalreadyhappenedthatneed
最新回复
(
0
)