四实际项目开发结果.docx
- 文档编号:9654340
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:14
- 大小:754.58KB
四实际项目开发结果.docx
《四实际项目开发结果.docx》由会员分享,可在线阅读,更多相关《四实际项目开发结果.docx(14页珍藏版)》请在冰点文库上搜索。
四实际项目开发结果
年度
2008年
项目类别
√创新大赛
□通信大赛
编号
学科分类
√计算机类
□电子类
中山大学信息科学与技术学院
第三届科技创新大赛
项目结题报告书
项目名称:
软件工程虚拟实验室的研究设计与实现(S.ELab++)
项目编号:
STI-013
所在单位(院系、年级):
信科院计算机系05级
通讯地址:
广东省广州市番禺大学城中山大学至善园6号208
邮政编码:
5100006
联系电话(手机):
138********
结题日期:
2008年9月9日
中山大学学生信息科技发展中心
填报说明:
一、填写结题报告书各项内容,要实事求是,逐项认真总结。
表达要明确、严谨,字迹要清晰易辩。
外语要同时用原文和中文表达。
第一次出现的缩写词,须标注出全称。
二、结题报告书为A4开本,复印时用A4复印纸,于左侧装订成册。
报告书页数除制式规定填写页外,可据项目结题内容自行决定。
一式两份。
三、撰写时,应在封面“项目编号”一栏填写予以立项时学院公布的编号(各项目编号请参见
四、结题报告目录应单独成页,报告撰写完成提交时应更新目录(作者可根据报告层次结构需要增设二级以下标题)。
五、报告内容中应加入相关表、图、截图等图像材料。
六、本报告用于本届科技创新大赛有关项目。
结题报告目录
一、项目简介
1、项目名称
软件工程虚拟实验室的研究设计与实现(S.ELab++)
2、项目组成员(附团队照片)
钟沛杨潇胡杨郑寅鹏洪小宇
3、项目完成时间
2008-09-09
4、项目摘要主要电路图(附作品图片)
二、项目课题的提出
1、研究意义
S.ELab++研究和实现大学本科阶段软件工程课程的虚拟实验室,达到克服当前软件工程实验教学弱点、改进实验教学质量的目的。
通过接触各种实际案例,强化学生的软件工程理论知识、训练实践操作能力、加强标准化的文档编写及设计实现能力,通过网络化的系统加强学生互助、师生交流、以及学生学习过程的可监测性。
因此本项目对于科软件工程教学是一个很大促进,同时也是对于传统软件教学方法的一种挑战和革新,让软件工程教学从课室走到了宿舍,走到了学生身边。
2、立论依据
在大学三年的学习中,我们发现,许多专业必修课,如C++程序设计、数据库原理等,其实验课的目的性、可操作性均较强,实验环境和条件也较完备;在实验室,根据课程内容,学生使用IDE(集成开发环境,如MicrosoftVisualStudio)或者DBMS(数据库管理系统,如MicrosoftSQLServer),完成老师布置的题目,根据题目有效地学习专业知识和培养能力;又比如需要特定硬件进行实验的必修课——数字电路分析与设计,同学们可以到数字电路实验室,在俗称“面包板”的数字电路板上反复进行训练,同时加深对老师课堂讲解的理解。
但是软件工程这门课程却缺乏这样直观有效的实验手段。
软件工程是大学计算机学科群中一门比较重要的高年级必修课程,此课程对于培养、训练、提高大学生建立软件开发工程化的思想理念、掌握软件分析和设计的基本理论原则、掌握规范和开发技术、了解和掌握软件实现过程管理的知识、以及积累项目经验都非常重要。
然而,由于软件工程课程(简称SE)是一个理论结合实践、管理结合技术的学科,对于基本没有实际工程经验和管理理论背景的计算机系大学生,此课程难以掌握,大部分同学感觉到此课程很抽象,学习的效果不好。
传统模式下的软件工程教学存在三个很明显的缺陷。
缺少实践训练。
缺乏比较完善的实验环境和工具支持学生,有效的培养软件工程课程的实践技能。
目前的SE实验支持软件只有RationalRose、MicrosoftProject等,几个过于“通用”的专业设计软件。
缺少结合最新SE技术的案例分析,没有问题背景、知识要点,在做实验时,通常首先由同学们凭空想象出一个软件项目,然后自己解决在软件设计中遇到的问题,缺乏一个规范的对实验结果的评价标准,即针对软件工程的教学辅助软件极度缺乏。
课堂知识抽象。
老师在课堂上的讲授侧重于软件工程概念部分,着重阐述面向对象、结构化、以及软件项目管理的基本概念和理论。
听完之后了解了概念,却还是不明白为什么会有这个概念,知其然而不知其所以然,更加不知如何运用到实际的工程实践中。
参考资料分散。
SE在网络上有大量的资源,但软件工程是一个很大的学科,而且网络资料基本上不会与课程教学同步,学生急需一个软件把老师的授课资料统一起来,加上专门的背景训练、案例介绍和分析,让同学们不仅可以复习老师课上讲授的知识,还能在机房或者宿舍随时随地锻炼实验技能。
3、研究综述
本项目旨在开发一套实用性强的软件工程课程实验装置,为学习者营造一个分阶段、循序渐进并且带有明确目标、进度指示和定量评价手段的学习过程。
在循序渐进的学习过程中,学习者将加深对软件工程核心思想的体会,逐步掌握软件开发流程中各个阶段所需的实验技能。
明确的学习目标和交互式的学习手段,有助于帮助初学者克服对软件工程实验“纸上谈兵”般难以入手的尴尬,总结出实实在在的体会和收获。
本项目研究的主要着眼点在于如何利用计算机辅助教学(CAI)技术,实现软件工程实验课程理论与实践的紧密结合;研究内容将包括教学辅助软件界面的设计,知识点相关案例的展示方式,对学习进度的定量、自动化评价和管理,个人资料、案例、习题、知识点等信息的表示(用适当的数据结构)和存储等主题。
本项目针对当前软件工程实验课程的情况,主要解决软件工程实验装置没有充分体现学科特点及教学要求这一问题;具体上通过将教学系统、评价系统与可视化的分析、设计工具相结合,将知识点的讲授、案例的演示与学习者的动手实践相结合,培养学习者的理解、分析、设计以及表达能力,并以习题的方式对其知识点掌握情况进行评估。
S.ELab++可同时在Windows、Linux、Mac等主流平台上部署,它将是一个可跨平台的软件。
任何学习者都能获得为其量身定做的可运行版本。
本项目的具体特色如下:
1)提供虚拟学习环境。
使用者通过S.ELab++提供的具体案例训练,获得软件工程中各环节的基本技能(包括需求分析、系统分析与设计这样的设计技能,以及图表绘制、各种文档的标准格式等操作技能),
2)提供面向教师的学习进度监测、管理功能和学习社区功能。
学习者登入联机系统时,学习的进度、质量将会汇总到服务器供教师参考;教师也可以自由定制需要学习者完成的测试。
同时,通过记录各使用者的学习进度细况,一个使用者在需要帮助时,可以了解到哪些使用者已经顺利完成了自己正在学习的知识点,从而可以向这些使用者发送消息并请求帮助。
学习者在学习社区内可以轻松地就软件工程课程请求帮助、提供帮助和发表意见。
3)两大突出技术特点:
大规模,高性能,并发网络连接的支持。
模拟现实批改自然语言的试题的人工智能的研究。
4)提供SE实验软件装置。
虚拟实验室提供的各种虚拟实验装置,如各种图表绘制工具,例如UML绘制、数据流图绘制等,和各种标准格式的文档又为进行软件工程实验提供了有力工具。
三、研究过程
1、研究方法
以软件工程权威文献、行业国家标准为主导,辅以主流软件开发规范,以“研究→实现→再研究→再实现”的迭代开发方式来实现此项目。
2、研究进度
●2008-3-01–2008-4-30:
进行需求分析,与老师和同学交流,得出共识。
项目组进一步完成,问题陈述,用例分析,用例规约,活动图。
。
等初期文档
●2008-5-1–2008-5-31:
开始宏观上进行系统的架构设计。
●2008-6-1–2008-6-30:
开始系统底层逻辑结构的设计,反思之前的2步不足的地方,进行评估修改。
●2008-7-1–2008-8-28:
开始正式进行代码的编写工作,预计此时可以完成一个带有完整软件工程案例的软件工程虚拟实验室的例子。
●2008-9-1–2008-10-1
在最终完成作品的基础上进行单元回归测试,发现以及纠正必要的问题。
等诸类成员再也不能发现问题的时候正式投入使用,部署,进入软件项目管理的过程。
3、技术路线
采用跨平台的C++类库QT来实现平台无关性,使用SQLite实现数据库存储访问,以在线团队协作和项目管理平台EveryDo来实现项目的管理、任务日程安排、文档、代码的更新和成员交流,以boost库的智能指针、函数绑定、信号-槽机制来加强项目实现的稳定性及组件化。
4、实验方案
1)需求分析:
通过负责软件工程教学的衣杨老师的指导,自己的上课的亲身经历和与感受,与同学之间的沟通与交流,发现目前教学中的不足和需要改进的地方.
2)系统架构设计:
通过第一步,得知客户(学生)对软件工程教学的需求,开始思索整个程序的架构设计.
3)系统静态逻辑结构的设计:
设计好宏观以及总体的系统架构以后,小组会一个星期开一次会慢慢讨论底层的静态逻辑架构的建设.
4)代码编写:
在每个架构都设计和构思好以后,开始按照之前的需求分析和方案开始编写程序以及代码
5)项目单元测试:
在代码编写完成以后,项目组成员内开始对已完成的项目软件进行分步骤,有条理的单元回归测试,以及压力测试.以便及时发现问题,修改问题.
6)项目管理:
在通过系统的测试以后,开始正式投入使用,部署。
而且及时和用户沟通,不断了解新的形势和变化,进一步完善功能,提高用户满意度。
四、实际项目开发结果
1、作品描述
本软件是集教师教学与学生学习为一体的软件工程课程辅助软件
2、主要功能和性能
本软件主要包括以下功能:
i.经典案例解析。
汇集了大量软件工程教学用的经典案例,并可方便取用。
ii.课后习题训练
数据库中存储足够多的课后习题,同时教师也能灵活添加和修改习题,满足教学要求
iii.UML类图设计
非常实用的设计工具,也是软件工程学习不可或缺的工具
iv.师生互动
提供师生课后交流经验感想的场所,有助于进一步提高教学效果
v.学生讨论社区
学生之间交流学习的地方,即学习论坛。
3、技术优势评价
功能齐全
4、市场分析预测
本软件整合了软件工程学习中的各个重要环节,并配以方便实用的辅助工具,能极大地提高教学的质量。
本软件本着“以人为本”的理念进行设计,产品中处处体现出人性化的设计方式,例如清晰明了的界面,简明易学的操作方式,齐全周到的功能等等。
如今软件工程教学软件还不成熟,以单个教学环节为主的软件较为常见。
本软件探索性地将各个环节整合起来,汲取了在各个单项教学中比较突出的软件的长处,在软件工程教学软件设计的领域具有较大的意义。
综上所述,本软件在良好的基础上,辅以优秀的测试和改进方案,再加上良好的推广策略,具有较好的市场前景。
五、开发工作评价
1、对项目开发效率的评价
本软件的开发严格执行了工程启动初期所预定的进度方案,个别部分超额或提前完成预定目标。
2、对项目质量的评价
本软件完成了预定的功能目标,拥有较高的测试通过率。
本软件拥有较好的正确率和较高的软件运行效率。
3、出错原因的分析
a)设计疏忽
b)偶然因素
4、经验与教训
1.本软件的设计过程也是一次软件工程学习的演练,因此遵循软件工程的分析和设计步骤是必要的。
通过这次学习,大家进一步体会到科学的工程方法能极大地提升工程效率。
2.通过这次设计,巩固了我们对各种编程技巧的掌握和运用。
通过实战演练达到了提升自我的目的。
3.这次也让我们体会到了团队合作的强大力量。
从软件工程项目启动之初到最后的收尾,我们的工作一直进行得井井有条,相互合作,但是却没有重复的工作,可谓配合默契,极大地提升了开发效率。
六、项目经费开支列表
开支事由
金额(人民币)
金额大写
交通费
271
贰佰柒拾壹元整
开题动员
150
壹佰伍拾元整
结题动员
150
壹佰伍拾元整
耗材、设备仪器费
215
贰佰壹拾伍元整
合计
786
786
七、参考文献
MITSoftwareEngineeringCourse
1.http:
//ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/6-171Fall2003/CourseHome/
UIUCSoftwareEngineeringCourse
2.http:
//www.cs.uiuc.edu/undergraduate/courses.php?
course=cs428
StanfordSoftwareEngineeringCourse
3.http:
//www.stanford.edu/class/cs295/
4.RogerSPressman.《SoftwareEngineering:
APractitioner'sApproach,6thEdition》
NewYork:
McGraw-Hill,2005
5.钱乐秋,赵文耘,牛军钰.《软件工程》清华大学出版社
6.郑人杰,殷人昆,陶永雷.《实用软件工程》清华大学出版社
八、附录
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实际 项目 开发 结果