基于智能手机的盲人语言应用软件的设计与开发论文
该文主要介绍了在Android平台上设计和实现的一款服务于盲人的手机应用软件,开发该软件主要有两个目的:第一是用智能手机服务于盲人的生活;第二是让盲人的生活也能像正常人一样丰富多彩。针对盲人的特殊需求,该软件设计了三大模块:基本应用模块、生活模块和娱乐模块。软件的主要功能有:语音拨打电话、语音发短信、导盲、天气预报、语音控制播放歌曲等功能。软件开发使用到的核心技术主要有要核心技术有:语音合成、语音识别、百度定位、百度导航、百度天气、网络编程和SQLite编程等。有了该款软件,盲人也能像正常人一样享受智能手机带来的便利。
【第1句】:绪论
【第1句】:1开发背景
教育心理学研究表明,人类不同感觉器官获取信息的比例,83%来自于视觉,11%来自于听觉,只有6%来自于其他,这就意味着盲人朋友从外界获取到的信息量非常少,根据最新调查显示,我国目前的盲人数量为700-800万,占世界盲人总数的18%,另外双眼低视力患者达1200万,陪伴他们的不应该只有盲道和盲杖,基于这样的需求,笔者专为盲人开发了一款盲人语音应用软件,目的是让盲人也能像正常人一样享受智能手机带来的便利。
【第1句】:2研究现状
国外目前比较成熟的智能语音软件有三款:苹果公司开发的Siri、谷歌公司开发的GoogleTalk和微软的小冰。但是Siri只能运行在IPone4s以上版本的手机上,而且苹果手机的价格比较昂贵,并不是所有的盲人朋友都能使用iPhone手机;而GoogleTalk对中文的识别率不是很理想,而微软小冰目前还没有推出专门针对盲人的功能。
【第2句】:研究内容
该款软件用到的相关技术有iFLYMobileSpeechPlatform【第2句】:0、百度地图API、百度天气预报API、蓝牙通信、AndroidOS架构等。基于盲人的特殊需求,该软件分为三个模块进行设计,分别是基本应用模块、娱乐模块和生活模块,系统功能架构图1所示,框架图中列出的'所有功能均已实现。
【第3句】:系统关键功能介绍
【第3句】:1语音拨打电话逻辑设计
设计该模块的目的主要是方便盲人打电话,当用户需要打电话时,点击屏幕任意位置,发出相应指令给该软件,软件识别出指令后,对指令进行分析处理,即可达到用户需求。发指令时,用户有两种选择:第一种是“打电话给+联系人姓名”,此时系统将调用手机数据库中的通讯录查找该联系人,如果找到该联系人则直接拨号,否则提示未找到该联系人;第二种是“打电话给+电话号码”,此时系统直接提取号码进行拨号。
【第3句】:2语音播报来电信息并自动接听
移动设备装上该软件后,该软件将一直监听手机的状态,当监听到有电话打进时,系统将在手机数据库的通讯录中查找联系人,如果找到,则语音提示“您有电话来自某联系人”,否则直接播报“您有电话来自‘电话号码’”。系统为语音播报预留20S,20S过后,系统自动接听电话,接听后提示“接通成功,祝你们沟通愉快!”。
【第3句】:3及时朗读短信功能模块
该模块主要使用Android的监听机制完成,添加一个BroadcastReceiver来监听操作Android.provider.Telephony.SMS_RECEIVED。此操作在设备收到SMS消息时由Android广播,只要收到SMS消息,就会通知应用程序[7],应用程序收到广播后就会语音通知“有新信息来自+联系人”,然后调用语言合成功能播报短信给用户。
【第3句】:4定位附件的餐馆
当盲人向应用发出语音指令“我好饿。”或其他与吃饭有关的语言指令时,系统自动为盲人定位到当前位置附近5000米内的所小吃店和餐馆,盲人知道了附近的餐馆名称后,即可用语音导航功能定位到餐馆所在的地点,并就餐。
【第3句】:5天气预报功能
应用中添加了天气预报功能,该功能需要获取盲人用户所在的位置,然后用盲人的位置作为参数向百度天气发出天气请求,软件接收到返回结果后,对返回的Json数据进行解析,根据用户不同的请求做出不同的回应。
【第3句】:6娱乐功能
笔者曾到盲人学校进行调查,发现很多盲人性格都比较孤僻,不喜欢与别人交流,因此笔者在应用里加入了一系列娱乐功能,包括智能聊天、讲故事、讲笑话、百度百科等,以此来丰富盲人朋友的生活。
【第4句】:系统功能实现
【第4句】:1语音合成功能实现
语音合成和语音识别是该款软件的核心,这两个功能的实现借助了科大讯飞语音平台,语音识别功能的关键代码如下:
publicvoidYuyinHecheng(Contextcontext,Stringt){
mTts=SpeechSynthesizer.createSynthesizer(context,mTtsInitListener);
mSharedPreferences=context.getSharedPreferences(TtsSettings.PREFER_NAME,Activity.MODE_PRIVATE);
setParam();
intcode=mTts.startSpeaking(t,mTtsListener);
if(code!=ErrorCode.SUCCESS){
if(code==ErrorCode.ERROR_COMPONENT_NOT_INSTALLED){
}else{}}}
【第4句】:2语音识别功能实现
实现该功能需要创建一个RecognizerDialogListener对象,然后复写该对象的2个方法,onResult()和onError()。其中关键的是onResult()方法;该是语音识别结果回调方法,控件采用边录音边发送的方式,可能会多次返回结果在调用时要判断是否是最后一次返回,在该方法里可得到识别结果,然后对识别结果做处理。privateRecognizerDialogListenerrecognizerDialogListener=newRecognizerDialogListener(){
publicvoidonResult(RecognizerResultresults,booleanisLast){
//把自然语言转化成文字
Stringtext=JsonParser.parseIatResult(results.getResultString());
editText【第1句】:append(text);
if(isLast){
if(flag==1){
smsInfo=editText【第1句】:getText().toString();
}
【第4句】:3语音拨打电话功能
系统启动后,用户点击屏幕,用户可发两种指令,若发语音指令“打电话给付靖玲”,若手机中存有名为“付靖玲”的联系人,应用将拨打电话给“付靖玲”;若发语音指令“打电话给10086”,应用将拨打电话给10086。实现该功能需要两步操作:第一步,在AndroidManifest.xml中添加用户权限。第二步,判别识别结果并调用打电话功能,该部分代码必须写在语音识别控件RecognizerDialogListener的音识别结果回调方法onResult()中。
【第4句】:4语音播报天气
该盲人手机的语音应用软件运用了百度的天气预报API,实现了给使用者播报天气信息的功能,该功能可播报用户所在城市近三天的天气情况。代码实现如下:
buffer=newStringBuffer("http://api.map.baidu.com/telematics/v3/weather?");
buffer.append("location=").append(URLEncoder.encode(lCityName,"utf-8"));
buffer.append("&output=json");
buffer.append("&ak=").append("AINCvl9FxeNWQiWEML1rpyen");
buffer.append("&mcode=").append("百度秘").append(";").append("a.com.fjl.main");
【第5句】:手机应用界面图
下图展示了语音拨打电话模块的界面图,图示如下:
【第6句】:作品创新点
任意一款装上了该软件的智能手机都可以供盲人使用,没有机型的限制。此外,不仅盲人朋友可以使用该软件,老人和不会使用智能手机的朋友也可以通过安装该软件享受智能手机带来的便利,让老年朋友的生活丰富多彩。笔者在完成软件的开发工作后,曾到盲人学校进行测试,受到盲人朋友的一致好评,目前该软件正在推行中,已有800人左右的盲人用户在使用该软件。
【第7句】:小结
盲人手机的语音应用软件是一款方便盲人使用智能手机而开发的手机应用软件,它避免了繁琐的输入,该软件目前还在完善中,增加聋哑人模块,最终达到一体化服务于残疾人的目的。
CAD应用软件的新动态论文
摘要:CAD应用软件是各工程类专业应用软件的重头戏。我国于1992年开始启动CAD应用工程,“九五”期间更是被列为国家科委攻关重中之重的项目。
关键词:CAD应用新动态
CAD应用软件是各工程类专业应用软件的重头戏。我国于1992年开始启动CAD应用工程,“九五”期间更是被列为国家科委攻关重中之重的项目。几年来,CAD在各行各业中的应用日益广泛,国内自主版权的CAD产品也初具雏形。为检阅这些成果,1997年7月6~10日,全国首届CAD应用工程博览会在北京展览馆举办,建设部、石油部、机械部、电力部等12个行业展团,32个省市展团和40余家CAD软硬件供应商参展。展出内容丰富多采,各类CAD产品琳琅满目,既有近年来各行各业CAD应用成果的展示宣传,又有各类CAD软件产品的争奇斗艳,更有所谓CAD/CAM的全面解决方案。那些工程图纸扫描仪、绘图仪、打印机、图形工作站等硬件厂商,当然决不会放过这种专为工程CAD举办的博览会。这里请读者不必十分遗憾,博览会上没有工程地质CAD的应用成果参展。本文特推举在博览会上出尽风头的两个CAD软件,供工程地质CAD专家们欣赏。
1国内自主版权的优秀CAD软件CAXA电子图板97
1997年是国家科委命名的“CAD年”,北航推出了CAXA电子图板97向“CAD年”献礼,售价仅490元(AutoCAD12至14版本售价【第1句】:7-【第2句】:2万元,国内其它CAD应用软件也都在万元以上),功能与其它同类产品完全相当,一举成为软件排行榜之首,被称为人人用得起的软件,在多年来CAD软件售价居高不下的环境下投了一枚重型炮弹。
CAXA电子图板97的意义在于它是中国人自己的CAD软件,不但有自主版权,而且符合中国人的习惯,全部中文菜单和中文在线帮助,不必忍受那些洋人的CAD软件,要进行汉化或需特定的中文平台或中文外壳,去实现中文文字的标注,且还经常出现汉字标注发生困难的窘境。洋人的CAD软件与中文平台或中文外壳与西文操作系统之间的兼容性和系统设置的复杂性,更让一般用户想起来就头痛。显然,中国人自己的CAD软件,自己用起来得心应手。该软件宣传广告声称,软件全面采用国标设计,符合中老年工程师要求操作命令简单、自然和方便的特点,是人人学得会的傻瓜软件,工程师的好帮手。
CAXA电子图板97对软硬件的环境要求很低,386/4M以上PC机DOS操作系统即可,系统本身只占硬盘空间12MB,具备图纸管理功能,可与其它CAD系统的图纸进行数据交换,可利用DOS平台上的其它汉字系统的各种输入法输入汉字。从以上这些功能和特点可以看出,CAXA电子图板97的确是一个值得一试的好软件。
2会思维的软件万图Vellum【第3句】:0
CAD软件正朝着智能化方向发展。上海一家公司(嘉宝集团)作为美国Ashlar公司软件的中国总代理,将智能化的Vellum软件引进国内,在本次CAD博览会上展示了该软件。该软件被称为“会思维的软件”,其智能化表现在计算机可以感知人的意图。例如画一条直线,在终点处它会提示你与已经存在的图形的关系,自动捕捉所需要的某一位置,随时告诉操作者,请你选择线的中点、端点、弧的切线、圆的中心等等,很能理解整个图形。
万图Vellum的2D、3D功能相互配合,对于那些机械工程师,可在几分钟内画出一个一般的机器零件的三视图和实体图,所要做的仅仅是用鼠标在屏幕上画出平面图,给出物体的厚度,实体就形成了。已经形成的实体你可以修改任意一个面的形状,形成复杂实体,一个指令,三视图就画成了。软件介绍声称,许多软件公司都曾试着开发在一纯线框几何图形上建造表面模型的智能化软件,但最后均以失败而告终。Vellum成功了,它可以自动构造表面,可理解孔、槽、曲线和自由形状。
注意,这里的自由形状,可以理解为三维空间的任意曲面,其建模问题就是我们一直在探讨的技术难题。耳听为虚,眼见为实。在CAD博览会上,笔者提出了请表演建立任意空间几何图形的要求,操作还不太熟练的演示者表示试试看。他先用鼠标勾画出一条任意曲线,在平行曲线方向拉伸一定距离,一个没有厚度的空间曲面建成了,给出厚度,则成为一等厚度的空间曲面实体。这一实体单从曲面的角度来看,还是较为规则的,尽管构成曲面的曲线是任意的,但整个空间体是在平行曲线的方向上是规则的,厚度是规则的。鉴于此,笔者提出修改已经建好的曲面体,于是,操作者用鼠标拉动曲面的任一点,一个非规则的扭曲面便形成了。能够达到这样的功能,对于建造和修改产状变化波状起伏的地质断层面是完全可能的。
为了验证非规则体在空间上的相交状态,操作者在旁边又画了一个实体,将其移动到与扭曲体相交并穿过扭曲体,居然完全成功,天衣无缝。至于三维实体在空间上的任意旋转,实体的网格化和表面质感化,不同颜色、光源和放大缩小等功能,在此软件中更是信手拈来,十分方便。
可以说,万图Vellum的可视化三维空间实体的建模和编辑修改功能,完全可以与第三十届国际地质大会上展出的工作站级别的软件(已在本刊97年第2期作了介绍)相比,但Vellum仅在奔腾级的PC机上即可运行(见下页万图Vellum的系统要求表),这样的硬件要求我们是可以达到的,或者说配置这样的硬件环境,已经不困难了。
如果说第三十届国际地质大会上展出的工作站级别的CAD软件的价格难以接受,那么万图Vellum的价格也许是可以接受的(单机版基本上与AutoCADR14相当或略高,多用户共享版平摊后一个用户6000元左右,有汉化版),但绝对的比AutoCAD功能更强大,操作简单得多。
据代理商神吹,上海嘉宝集团是电机大型股分制企业,本与电脑行业风马牛不相干,而是出于机械设计CAD应用的需要,鉴于对AutoCAD功能的强烈不满,深信世界上一定还有更好的CAD软件,特派出专家代表团去美国寻宝。代表团到了美国,在Internet上查到Vellum信息后直奔Ashlar公司,当即引进消化汉化,之后确认如此优秀的CAD软件,不向国内用户介绍,简直就是一种技术犯罪。为此,电机集团真是有胆有识,专门组建了嘉宝颐和电脑公司,一方面进行商业汉化,另一方面垄断了Vellum在中国的市场,成为Ashlar公司Vellum软件在中国的总代理。问及为什么美国众多软件硬件厂商都打入了中国市场,而Ashlar公司如此优秀的CAD软件却没有自己来开辟中国市场?答曰:中国市场盗版软件太多,打进来油水不大。
Ashlar公司VellumCAD软件的入侵,听起来颇具故事情节。故事告诉我们,这就是改革开放后市场经济的'基本规律和典型实例。可以相信,由于Vellum软件本身的强大优势和嘉宝集团的市场头脑及人才优势,Vellum在中国CAD市场上将获得成功;国内CAD用户也多了一个可供选择的商品软件,这对于动摇AutoCAD在中国CAD市场上的垄断地位无疑是一把撒手锏。
【第3句】:CAD软件的发展方向
由于Internet/Intranet企业#39;);">企业级应用的发展,CAD软件的发展除了上述的智能化以外,正在朝着网络化方向迈进。传统的CAD软件产品在升级版权中增加了网络功能,可在CAD软件里浏览Web主页、发E-mail、查看网上图纸,在网上与同事或用户共享图纸资料,挂接网络地址(URL)等等。今年上半年Autodesk公司向全球发布的AutoCADR14即具备这种网络功能。GIS系统中的一员,MapInfo新的网络版本也提供了Web浏览功能。本文介绍的万图Vellum【第3句】:0,更是运行于NT上的网络CAD软件。在计算机就是网络,网络就是计算机的今天;在全球将被网络一网打尽的明天,CAD软件的网络版本具有其特别的意义和强大的生命力。
毫无疑问,企业级的网络具有Internet/Intranet的若干应用方面的功能优势,但此仅为网络优势的一个方面;另一方面则是计算机应用中成本的大幅度降低。由于PC软件硬件的交替升级,拓宽了PC的应用范围,单机的性能价格比大幅度提高,给PC的普及应用打下了物质基础,但同时也给单位和企业级的应用增加了升级成本和维护成本。我们知道,PC是个好东西,易学易用,娃娃也会玩个天翻地覆,然而,要真正把PC玩通,不是唬你,可不是一般用户能做到的,单是DOS系统的autoexec.bat、config.sys、汉字系统和CAD系统的配置文件、windows系统中的ini文件,就足以把一般用户搞晕头转向,还不说系统破坏或崩溃后的判断与处理系统需随时调试到最佳工作状态等等经验与技巧。这里决没有故意将计算机神秘化的意思,仅仅是为了说明精通PC有一定的难度。鉴于此,业界早已提出了NC(netcomputer)的概念,并已成为当今Wintel与SUN、Oracle等两大阵容争斗的焦点。
进入网络时代,一个单位或企业的CAD或其它应用软件要升级,只在网络服务器上升级换代,不必每台机去升级维护,整体上显然降低了成本,提高了效益。硬件同样如此,在强大的网络上,PC不必频繁升级淘汰,作为客户端应用,只需充分共享和利用网络服务器的功能,这就是简单易用少升级低成本的NC。就像单位的内部电话改国际国内直拨时,只需更换总机,不需更新每个办公室的电话机一样。
综上所述,CAD软件的现状是单机与网络并存,初步具备了智能化功能。在智能化方面,发展方向是人工智能与CAD相结合的产物--智能CAD(IntelligentCAD,即ICAD),ICAD将有力地支持强烈依赖于设计者思维的可行性设计和概念设计,其高度智能化集成化可以使一般设计者设计出大师级产品。在网络化方面,用PC、NC也可设计出工作站级别的复杂产品。
手持设备应用软件的开发课程教学研究论文
1前言
Android是Google于2007年11月推出的基于Linux内核的开源手机操作系统,是HTC、Motorola、华为等企业多款智能手机的操作系统平台。市场调研公司Canalys于2011年5月4日发布的一季度全球智能手机市场统计报告显示,Android系统机型继续领跑智能机市场,份额达到35%[1]。
手持设备应用软件开发课程是长沙学院软件工程专业嵌入式系统方向的限选课,以及其他专业方向的选修课。在过去几年,该课程的教学内容是基于J2ME软件开发,教学没有针对具体的硬件或系统平台,实验课没有配备特定硬件设备,软件仅在模拟器上运行,不适合进行与硬件相关的程序设计。从2010年开始,Google开始与高校合作,帮助中国高校建立起智能手机移动应用开发课程体系,培养移动应用开发人才。在此战略的推动下,长沙学院已经于2011年上学年将该课程的教学内容更改为基于Android平台的智能手机软件开发技术。
2教学方法的实施
【第2句】:1前期准备工作
1)师资培训。近年来随着嵌入式技术的迅猛发展,嵌入式系统平台越来越丰富,如WindowsCE、Linux、Symbian、BlackBerry、Android、iPhoneOS等。通常,不同的系统平台有不同的应用程序开发技术,Android平台出现的时间不长,因此,目前国内熟练掌握Android平台应用程序开发技术的教师还很少,建议选派具有嵌入式系统和Java编程基础的教师参加培训和课程研讨会,并与先期已开设类似课程的高校加强交流,课程资料还可以从http://www.google.com/intl/zh-CN/corporate/university/courses.html处下载。
2)软件、硬件试验平台的配备。①开发环境:IDE——Eclipse【第3句】:3,【第3句】:4,【第3句】:5,【第3句】:6(helios);Eclipseplug-in——ADT【第1句】:0或者http://dl-ssl.google.com/android/eclipse/;AndroidSDK;JDK5orJDK6(单独的JRE不可以,必须要有JDK)。②AndroidSDK所支持的操作系统:WindowsXP(32-bit)orVista(32-or64-bit);MacOSX【第10句】:【第4句】:8orlater(x86only);Linux(testedonLinuxUbuntuDapperDrake);③智能手机:华为E8500;MotoMilestone。
【第2句】:2前期教学内容的组织
本课程的学习可以分为两个阶段:基础知识学习阶段和软件开发的项目教学法实施阶段。在学习基于Android平台的智能手机软件开发技术之前,必须让学生对Android平台有宏观上的认知。
1)Android的系统架构。Android是一个开放的软件系统,为用户提供丰富的移动设备开发功能,从下至上包括4个层次:如图1所示Android的系统架构。
第一层是Linux内核层,包括Linux操作系统及驱动,依赖于Linux【第2句】:6内核。
第二层是核心的扩展类库,如SQLite、WebKit、OpenGL等,它们可以通过Java本地调用JNI(JavaNativeInterface)的接口函数实现和上层之间的通信。该层由Android的Java虚拟机Dalvik和基础的Java库为Java运行环境提供Java编程语言核心库的大多数功能。
第三层是包含所有开发所用的SDK类库和某些未公开接口类库的框架层,是整个Android平台核心机制的体现。
第四层是应用层。系统部分应用和第三方开发的应用都位于该层,两者不尽相同,其中系统应用会用一些隐藏的类,而第三方应用是基于SDK基础上开发。一般Android开发是在SDK基础上用Java编写应用程序,但本机开发程序包NDK提供应用层穿越Java框架层直接和底层包含JNI接口的C/C++库直接通信的方法。
2)Java语言。Android所支持的Java语言是J2SE的子集,而J2ME的功能相对较弱。如果J2ME工程师想转行做Android,那么他要付出的代价比J2SE或J2EE工程师要大得多。最理想的情况是,该课程开设时学生已经具备J2EE的相关知识。
3)Android平台具有的特点:与硬件交互方便,像摄像头、GPS等,对其操作都较简单;具有自己的运行时和虚拟机,以及优秀的内存管理能力;提供丰富的界面控件供开发者使用,允许可视化开发;提供轻量级的进程间通信机制;支持无界面的后台服务类应用程序;支持高效、快速的数据存取。
4)Android应用程序的组成。嵌入式系统是各种资源受限的系统,应用程序的构成方式与基于PC机的应用程序有很大的不同。Android应用程序主要由4部分组成:活动(Activity),一个活动就是手机屏幕的一屏;意图(Intent),一个意图就是一次对将要执行的操作的抽象描述;服务(Service),一个服务就是一个没有界面、后台运行的程序,如音乐播放器;内容提供者(ContentProvider),是封装在自定义API中的一组数据,可以读取该数据和向API中写入数据。例如,Google为联系人程序提供一个内容提供者,任何需要使用联系人信息的应用程序都可共享其中的所有信息,包括姓名、地址、电话号码等。
5)独特的编程风格:用户体验至上原则。与其他应用程序开发相比,对于智能手机软件,用户体验凌驾于技术之上,优秀的用户体验可以起到事半功倍的效果。对于同类软件,在互联网上的软件下载排行中,下载量最大的,一定是让用户用着感觉最舒服的,哪怕它的功能并不比其他的产品出色。对于不同的触摸屏的技术,相应的屏幕界面的设计风格也不尽相同。对于电阻式触摸屏,通常会用笔尖或指甲来点击图标,那么界面的图标稍小、排列紧密可以容忍;而对于电容式触摸屏,用户更习惯使用指腹而非指甲点击屏幕,这就要求界面图标布局不太密、图标较大,这样不一定好看,但是好用。
在学生具备以上基础知识以后,再通过实施项目教学法,培养学生的'智能手机软件开发能力。
【第2句】:3项目教学法的实施
项目教学法是由美国教育家凯兹博士和加拿大教育家查德博士在合著的《项目教学法》中共同提出的一种以学生为中心的教学方法[2],学生在教师的指导下亲自处理一个项目的全过程,在这一过程中学习掌握教学内容。学生独立组织、安排学习行为,解决在项目实施中遇到的困难,提高学习兴趣,能调动学习积极性。心理学研究结果表明:当感受类型是“听”时,记忆保持率为20%;当感受类型是“看”时,记忆保持率为30%;当感受类型是“听+看”时,记忆保持率为50%;当感受类型是“亲身实践”时,记忆保持率为90%[3]。
可选用以下几个案例程序作为教学项目:RSS阅读器、豆瓣网客户端、在线音乐播放器、手机短信查看软件、个人移动地图。项目选取的原则是既要包含基本的教学知识点,又要难度适中,能调动学生的积极性和主动性,在教学中还要注重师生共同参与。
项目教学法的教学过程分为7个步骤:明确任务、收集信息、制定计划、进行决策、组织实施、过程检查、结果评估。
明确任务:教师指定教学项目,帮助学生理解任务;学生知道自己要做什么,要学习哪方面的知识,要练习哪方面的技能。
获取信息:教师提供相关参考资料供学生查阅以获取有关信息,补充必要的知识和技能,教师答疑解惑。
制定计划:学生明确任务后组成学习小组,小组合作学习,制定可行的工作计划。分组要注意基础好和基础一般学生的合理搭配,以便学生互相学习和项目的按时完成。
做出决定:各小组制定计划、提出方案,由全班讨论,教师适时评判,确立本项目的最佳实施方案。
组织实施:将大项目分成几个模块分别实现。项目实施时,教师在理论课上做示范,学生可以随时提问题,教师对学生提出的问题做出解答;在实验课上,学生根据计划完成自己的任务,教师观看、指导。学生按计划实施,在实施过程中能具体地对自己所负责的项目模块所涉及的知识点进行学习。
过程检查:学生在完成项目的过程中,自己检查工作过程、结果,出现问题时请老师和同学帮助解决。
结果评估:学生完成项目后,对成果进行展示与自我评价。教师对学生在整个学习过程中出现的问题予以评价,对于学生在设计与实现过程中出现的问题要及时纠正。
学生亲身经历从项目规划到生产出产品的整个过程,就能够感受到成功的喜悦,激发自主学习的欲望,从而能以更大的热情投入下一个项目的学习。
【第2句】:4教学效果的评价
考核方法以项目为主,体现能力培养特色。考核方式分为标准考核和加分两种方法。标准考核通过者或免试资格获得者即达到该课程的考核要求并获得响应学分。标准考核为全面考核方式,总分值为100分,其中理论考试40分,项目完成情况60分。理论考试为闭卷考试,考试时间为1小时,着重考核相关理论知识;在项目开发环节,学生可根据自身在项目中担任的角色和完成工作量的情况,获得不同的分数。本课程鼓励学生独立或组队参加校级以上学科竞赛,在国内外相关竞赛中的获奖者都可以在期末总评成绩中视获奖情况酌情加分,省级以上相关竞赛的获奖者即可得到本课程的满分成绩。
3总结
教学实践表明,实施该教学方法后,大多数学生的Android应用程序开发能力得到较大提高,紧接着还安排与该课程配合的课程设计培养环节,使学生基本具备Android应用程序开发能力。目前,国内熟悉该开发技术的人才还十分有限,企业对相关技术人才需求却不断增加,因此很多学生毕业后已在沿海地区从事Android应用程序开发工作,待遇较好,这样将更加激发下一届学生对该课程的学习热情。同时教师经过教学实践,教学水平也得到提高。
参考文献
[1]晓明.Android智能机一季度全球份额升至35%[EB/OL].
[2]肖胜阳.在计算机课程教学中开展项目教学法的研究[J].电化教育研究,2003(10):72-76
[3]刘卫珍.项目教学法[EB/OL].
[4]靳岩,姚尚朗.GoogleAndroid开发入门与实战[M].北京:人民邮电出版社,2009
基于JavaWeb的软件开发综合实训平台的功能设计与实现论文
软件开发综合实训平台是高校近些年来实施CDIO项目教学的重要组成部分,本文介绍了软件开发综合实训平台的功能设计与实现过程。
本系统采用B/S结构,使用Java语言编写,利用计算机运算速度快、存储信息容量大、处理逻辑问题强、功能强大的优势,利用本系统从管理的需求出发,帮助教师实现实训信息化管理,激励学生按时完成任务,起到督促学生学习的作用,培养学生守时、惜时的观念。
目前,国家大力推进创新型工程人才培养,并启动了“卓越工程师培养计划”,目的都是为了打造创新实践型工程人才。
在高校中,实践教学是培养和提升学生工程实践能力的重要一环,如何充分利用此环节,发挥实践教学的作用,让学生真正的融入企业真实的工程流程,需要研发出适应学生创新、工程实践能力培养需求的综合实训平台,针对计算机类专业,打造软件系统开发综合实训平台,依托我校计算机专业校企融合,充分利用企业的有利条件和资源,将真实的IT工程流程融入到实践教学中,提升学生的实践能力,使其学而有用、学以致用。
从而,推进整个计算机类专业的实践教学改革,使其形成比较鲜明的办学特色,使学生具有良好的工程实践能力和创新能力,从而具备较强的就业竞争力。
【第1句】:可行性研究
【第1句】:技术可行性
技术可行性要对开发的项目功能、开发软件和硬件环境要求来分析现有技术是否能实现待开发的软件。
本系统是B/S模式,使用Java语言开发,数据库使用SQLServer2008数据库。
【第2句】:经济可行性
经济可行性首先要进行待开发软件的成本估算和成本/效益分析,以确定待开发软件是否有开发的`价值。
本系统作为软件开发综合实训平台,可以满足教师对学生实训进度的规划及掌握,以及学生对软件开发的流程认识方面的增强及理解。本系统开发需求较低,加上成熟的软硬件环境,无须多少经济的投入,所以此系统在经济上是可行性的。
【第3句】:操作可行性
本系统有较高的可移植性,可以在多种操作系统上运行,可以在WindowsServer,Linux,UNIX等操作平台上运行。Web服务器为Tomcat【第8句】:0,数据库服务器为MicrosoftSQLServer2008,开发工具采用的MyEclipse2022和DreamWeaver。界面美观、易懂、容易操作、功能齐全。
【第2句】:需求分析
本系统是针对实际需求开发设计的。解决以往实训过程出现的问题,教师检查、跟进的效率低;学生的自主学习性较差,存在依赖性等。本系统能够实现由教师发布实训信息、试题信息及学生信息等管理;学生可以查看信息并提交相应的数据及文件,同时,学生需要完成每个阶段的在线测试,而且,根据自己的系统,设定自己需要完成的功能模块,也可以利用平台进行团队沟通与交流。
在调动学生学习积极性的同时,培养了学生的创新能力、工程实践能力和团队协作能力。利用计算机运算速度快、存储信息容量大、处理逻辑问题强、功能强大的优势,从管理的需求出发,帮助教师实现实训信息化管理,以提高工作效率。
【第3句】:系统功能模块设计
软件系统开发综合实训平台功能结构图如图1所示
软件系统开发综合实训平台是一个典型的数据库应用程序,在此系统中共有教师和学生两类用户。
【第1句】:教师模块
教师模块实现了阶段管理、学生管理、文件管理、试卷管理功能。
(1)阶段管理功能使用
实现了添加一级阶段、编辑一级阶段、添加二级阶段、编辑二级阶段、添加三级导航、编辑三级导航功能。通过阶段管理实现了对前台学生菜单的维护,从而实现了对菜单信息的添加、修改和删除,同时可以在三级导航中发布消息。
(2)学生管理功能使用
该功能实现了导入学生信息,查看阶段完成度,开发模块完成度、分组。导入学生信息之后学生可以用自己学号进行登录,并且教师可以对学生的学习任务进行管理;查看阶段完成度实现查看学生答题的情况功能;开发模块完成度是对学生实训报告完成情况的查看;分组是将学生以小组形式管理。
(3)文件管理功能使用
教师可以使用文件管理功能查看并下载学生上传的文件。
(4)试卷管理功能使用
教师可以导入试卷、查看试卷和考试开启/关闭。在导入试卷的时候,可以指定试卷所属阶段;实现了各个阶段的试题查看,同时,可以对试题进行修改和删除;可以设置考试开启/关闭用于控制各个阶段的考试是否启用。
【第2句】:学生模块使用
学生端实现了项目阶段的操作,而且,还可以在线计时测试,并且能够进行团队沟通,上传文件。
(1)项目研发功能使用
学生能够看到教师在后台添加并开放的阶段,能够实现每个阶段教师发布信息的查看,和提交每个阶段的任务。在系统的详细设计与实现阶段,学生可以根据自己项目的需要,添加和维护子阶段。而且,在阶段中,还可以进行测试,测试过程,时间由系统自动更新计算,打完试卷或计时截至,交卷。
(2)团队沟通功能使用
学生登录该系统,可以实现通过该聊天室进行聊天和学习交流。
(3)文件上传功能使用
学生可以实现文件上传,而且可以指定上传某个一级阶段的文件。
【第4句】:数据库设计
本系统采用SQLSERVER2008保存并操作数据。在系统数据库设计阶段,采用专业的数据库设计工具PowerDesigner来进行数据库的设计及表结构的设计。在数据库设计上,增加了新的文件组,并在新的文件组中添加辅助设计文件,将主要数据文件、日志文件和辅助数据文件放在不同的磁盘阵列上,可以防止因硬件故障造成数据的丢失,同时可以提升数据库的读取性能。
【第5句】:功能实现
本系统采用B/S架构,系统编写采用MyEclipse2022及Dreamweaver编写,充分发挥了B/S架构系统使用方便、瘦客户机的优势。
【第6句】:系统测试
本系统基本采用黑盒测试,即不考虑程序的内部结构和处理过程,仅检查程序功能能否按照需求分析中所建立的模块完成相应的功能,及能否达到处理整个工作流程的目的,通过检查程序是否能适当的接收输入数据产生正确的输出信息,并且保持外部信息(数据库)的完整性。测试结果如下:
该软件系统开发综合实训平台在运行过程中,达到了以下的性能目标。
【第1句】:系统运行期间未出现中断情况,系统运行可用性良好。
【第2句】:所使用的主服务器能满足学生同时登陆的需求,学生同时访问的人数在100人左右,数据返回时间在3s以内。
【第3句】:所使用的主服务器内存在正常范围内。
【第4句】:所使用的主存储的IO未出现异常的情况,所使用的数据库的连接在正常范围内。
【第5句】:发现数据库的执行在正常范围内。
【第6句】:数据库日志能正常记录操作过程。
【第7句】:未出现因数据库表空间不足而引发的故障,未出现导致系统不能正常运行的bug。
【第7句】:结论
本系统是一套B/S结构的软件开发综合实训平台。通过该系统,发布实训信息、试题信息及学生信息等管理;学生可以查看信息并提交相应的数据及文件,同时,学生需要完成每个阶段的在线测试,也可以利用平台进行团队沟通与交流。在调动学生学习积极性的同时,培养了学生的创新能力、工程实践能力和团队协作能力,最终实现实训信息化管理。本系统运行稳定,操作简明易懂,计划在本学期末的计算机科学与技术专业实训中投入使用。
上一篇:饭店标语大全搞笑汇聚200条
下一篇:关于手势舞的标语合集3篇