欢迎来到天天文库
浏览记录
ID:33932856
大小:2.53 MB
页数:97页
时间:2019-03-01
《面向最终用户的领域特定语言的研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、面向最终用户的领域特定语言的研究ResearchonaDomain-specificLanguageforEnd-userProgramming学校代码:10248作者姓名:郁天宇学号:1110379023导师:沈备军学科专业:计算机科学与技术答辩日期:2014年1月7日上海交通大学软件学院2013年12月万方数据ADissertationSubmittedtoShanghaiJiaoTongUniversityfortheDegreeofMasterinScienceResearchonaDomain-specificLanguageforEnd-userPro
2、grammingUniversityCode:10248Author:TianyuYuStudentID:1110379023Mentor:BeijunShenField:ComputerScienceandTechnologyDateofOralDefense:2014.1.7SchoolofSoftwareShanghaiJiaoTongUniversityDec.2013万方数据万方数据万方数据上海交通大学学位论文原创性声明本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个人
3、或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。学位论文作者签名:日期:年月日万方数据上海交通大学学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权上海交通大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。保密□,在年解密后适用本授权书。本学位论文属于不保密。(请在以上方框内打“√”)学位论
4、文作者签名:指导教师签名:日期:年月日日期:年月万方数据上海交通大学工学硕士学位论文面向最终用户的领域特定语言研究面向最终用户的领域特定语言摘要在传统软件开发过程中,最困难的部分就是开发团队与软件使用人员之间的沟通,这也是软件项目失败或延期的常见原因。因为沟通不到位往往会引起需求不明确或歧义,导致返工。虽然随着软件开发技术的不断发展和完善,沟通环节所带来的弊端不断被减少,但依旧存在风险。同样的风险也存在于系统维护中。如何缓解系统开发和维护中需求不断变更所带来的压力?如何进一步提高系统开发和维护的效率?面对这些问题,本文以高校信息系统为研究领域,提出了一套面向最终用
5、户编程的领域特定语言(DSL),并实现了该语言到Java的代码生成器。本文首先分析并研究了高校信息系统的特点,结合领域特定语言和最终用户编程技术,提出了一套适用于高校信息系统的特定领域语言。高校信息系统因业务繁多,逻辑复杂导致单以单层领域特定语言无法同时兼顾到面向最终用户和语言功能强大两个方面。本文采用分层的思想,从三个层次上设计了高校信息系统的领域特定语言:第一层,IDSL。这层是面向信息系统的最终用户编程DSL,本文参考了现有的信息系统DSL语言,根据MVC架构模式,从三个部分设计了IDSL:Model、View和Logic,分别对应数据模型、界面和后台逻辑。
6、其中,Model由实体(Entity)组成,并提供增、删、改、查等多种方法,负责相应数据库表的存取;View通过少量标签支持信息系统中基本的页面定义,并提供增、删、改、查四种基本的业务逻辑操作操作;Logic支持顺序执行、条件分支和循环结构,并提供了变量申明,方法调用以及跳转至其它Logic或View的操作。此外IDSL不需要用户去定义参数的传递,从而减少了最终用户编程时的难度。第二层,UIDSL。这层是面向高校信息系统的最终用户编程DSL,本文在IDSL基础上,分析高校信息系统的共性,并以预定义特性的方式进行定义,包括预定义Enity、预定义View和预定义的逻
7、辑操作。这些特性将减少最终用户编程的难度,提高最终用户的开发效率。第三层,SIDSL。这层是面向高校信息系统选课子领域的最终用户编程DSL。本文采用领域工程的方法分析系统的共性与可变性,然后统一共性并将可变性参数化以建立SIDSL语言。SIDSL语言采用XML方式进行编码,用户只需要对不I万方数据上海交通大学工学硕士学位论文面向最终用户的领域特定语言研究同标签选用不同的值作为参数就可以定制选课子领域的不同特征。这种方式使最终用户在更高的抽象层上进行开发,编码也更简洁,效率更高。接着,根据高校信息系统输入模型复杂,逻辑可变性高这一特点,本文基于重写规则的程序转换技术
8、和Spoo
此文档下载收益归作者所有