[软件与数据库开发实训]
本科课程教学大纲(理工医类/电气学院)
课程信息 | |||
开课单位 | 电气与计算机工程学院 | 开课学年学期 | 2017学年第2学期 |
授课年级 | 15级 | 授课对象专业 | 计算机 |
课程学分 | 2 | 课程学时 | 48 |
课程性质 | ¨专业必修 ¨专业选修 ¨公共必修 ¨公共选修 ¨成长必修 R专业限选 ¨公共限选 | ||
先修课程要求 | 数据库系统概述、Java程序设计、程序设计实训 | ||
教师信息 | |||
授课教师 | 温泉思、谢小棉 | 联系电话 | 17688478681 |
答疑地点 | 2教104b | 答疑时间 | 周一上午10:30-12:00 |
电子邮件 | qwen2012@foxmail.com |
(一)课程描述
《软件与数据库开发实训》是计算机科学与技术专业的一门专业必修综合实践设计课程。本课程是在学生学习计算机专业理论知识、专业技能的基础上,要求学生将所学知识和技能与常用开发工具相结合,以解决实际问题,最终培养学生的综合实践动手能力。
在项目实训中要求学生以团队形式、综合运用所学知识完成一个中型以上项目的设计与实现。在课程实践中,学生要将专业知识、专业技能与实际需求相结合,熟悉项目开发的各个步骤和流程,面向实际的应用领域,从项目的需求分析到系统设计、编码、测试等实践过程,最终完成项目的预期目标。通过本课程的学习,学生应达到以下目标:
(1)根据实训要求和项目的技术需求,学生要具备查阅、理解、归纳、整理资料的能力,在不同阶段生成相关的技术报告。
(2)培养学生综合应用所学专业知识和技能,分析、解决实际问题的能力,并进一步巩固、加深和拓宽所学的专业知识。
(3)提高使用常用应用软件的能力。在项目实践中,项目实训可能会用到C语言、C++语言、Java语言等,绘图可能会用到Visio、Power Designer、Rose Rational等软件,在撰写报告时会用到Word、Power Point等办公软件,以及其它的开发平台或开源工具,学生要在项目实践中掌握各种软件的使用方法和技巧。
(4)加深对本专业主干专业课程的理解。某些类型的项目可能与相关的专业课程结合,通过课程设计可以加深对相关知识的理解。
(5)为毕业设计打下基础。本实训课程所提供的项目题目综合性强,为学生后期的毕业设计提供项目实践机会。
(6)培养团队合作的精神,每个项目由1-5人组队、合作完成,需要同学之间分工明确,通力合作。
为配合学生的从业方向和兴趣,实训项目主要来自于以下方向:
(1) Java Web/PHP应用开发
(2 )Android/微信应用系统开发
(3)网络设计与综合管理
(4)Windows PC 软件开发
(二)课程目标
毕业要求 | 具体指标点 | 课程教学目标 |
1. 问题分析 | (1)针对实际问题选择恰当的计算机相关知识进行推理分析; (2)能够运用计算机相关知识分析复杂环境工程问题,并结合数据库专业知识对复杂工程问题进行识别、表达与实施; (3)在充分理解和掌握专业知识的基础上,能够运用所学知识开展文献检索和资料查询。 | 目标1:掌握编程语言和数据库编写技能,能够熟练使用数据库工具和编程语言解决实际问题。 |
2. 设计/开发解决方案 | (1)掌握解决复杂项目工程问题的基础计算机知识; (2)掌握解决复杂项目问题的专业编程知识; (3)能够综合运用理论和技术手段解决实际问题;(4)培养具有一定创新意识的工程人才。 | 目标2:职业素质养成目标,养成认真仔细分析问题的习惯,提高分析和解决问题的能力,树立IT职业人吃苦耐劳的敬业精神,培养团结协作的工作作风和严谨求实的工作态度 |
3. 个人和团队 | (1)能够理解团队合作的意义,能与团队成员有效沟通,用人单位和社会评价好; (2)能够在团队中根据角色要求发挥应起的作用,工作能力得到充分体现。 | 目标3:能够综合运用所学编程和数据库知识,使用增量式的项目开发方法,编写程序完成实训项目;将实验或实训的完成情况,撰写一份完整的实验报告。 |
主要实训内容:
1.1 团队建设:分组及选题、制定项目目标
1.2 项目可行性分析
实训要求:本次实训要求各团队经过分析、讨论完成项目分组及选题、对所选项目进行可行性分析,并完成可行性分析报告;课下讨论并完成会议记录。
重点:团队建设、项目可行性分析。
难点:团队合作。
采用的教学方法:实际案例分析、课堂讨论。
参考案例:课程设计管理系统。
实训学时:3学时
(二)实训二 项目需求分析
主要实训内容:
2.1 项目开发流程介绍
2.2 项目需求分析
实训要求: 本次实训要求各团队经过调查、讨论,对项目进行需求分析,并撰写完成需求规格说明书
重点:团队建设、项目可行性分析。
难点:团队合作。
采用的教学方法:实际案例分析、课堂讨论。
参考案例:课程设计管理系统。
实训学时:3学时
(三)实训三 系统设计
主要实训内容:
3.1 项目计划
3.2 系统概要设计
3.3 系统详细设计
3.4 界面设计
实训要求: 本次实训要求各团队以周为单位安排项目计划,项目计划要细分到每周、每人;完成系统的概要设计和详细设计。
重点: 由组长统筹、安排每位成员的项目任务,每位成员需根据项目任务安排各自的学习计划、项目计划;如何进行系统的概要设计和详细设计。
难点: 概要设计和详细设计。
采用的教学方法:实际案例分析、课堂讨论。
参考案例:课程设计管理系统。
实训学时:9学时
(四)实训四 环境搭建与配置、数据库设计
主要实训内容:
4.1 安装并配置实训环境
4.2 数据库设计
实训要求:本次实训要求团队内的开发人员搭建并配置好项目开发环境;数据库设计人员根据系统设计,进行数据库设计。
重点:不同系统下环境的搭建与配置,数据库设计方法。
难点:根据需求文档、系统设计文档,如何进行数据库的概念结构设计和逻辑结构设计。
采用的教学方法:实际案例分析、课堂讨论。
参考案例:课程设计管理系统。
实训学时:3学时
(五)实训5 项目开发(阶段1)
主要实训内容:
5.1 项目编码
5.2 项目测试
实训要求:按照项目计划开展第一阶段任务,完成第一阶段的项目编码、测试工作,并撰写相关的测试文档;课堂讨论在实训过程中遇到的问题及解决办法;课堂验收本阶段任务。
重点:本阶段项目的编码和测试。
难点:如何去调查实训过程中遇到新问题的解决办法。
采用的教学方法:实际案例分析、课堂讨论、项目演示。
参考案例:课程设计管理系统。
实训学时:12学时
(六)实训6 项目开发(阶段2)
主要实训内容:
6.1 项目编码
6.2 项目测试
实训要求:按照项目计划开展第二阶段任务,完成第一阶段的项目编码、测试工作,并撰写相关的测试文档;课堂讨论在实训过程中遇到的问题及解决办法;整合项目;项目验收。
重点:本阶段项目的编码和测试。
难点:如何去调查实训过程中遇到新问题的解决办法,整合项目后如何做测试,如何解决测试中出现的问题。
采用的教学方法:实际案例分析、课堂讨论、项目演示。
参考案例:课程设计管理系统。
实训学时:18学时
1、掌握项目开发的流程及方法;
2、掌握系统分析与设计方法;
3、提高学生的项目综合实训能力;
4、提高查阅资料的能力、自学能力;
5、提高团队合作的能力。:
(一)出勤
学生应积极参与课堂教学并完成相关的作业、实验内容。
(二)阅读资料
学生应认真进行课前预习,阅读教材和指定参考书及重要的参考文献。
(三)课堂展示
根据时间及课堂班人数,在可能的情况下安排小组实验课程讨论与效果演示。
(四)课外实践
本课程是理论与实验结合的课程,实验课程单独开设,理论课也穿插相关技术的应用案例展示。
(五)小考与期末考
安排课堂讨论、项目演示。
(六)学术诚信
按中山大学南方学院相关规定执行。
(七)剽窃的定义以及相应的惩罚
剽窃是严重违反学校规章制度的行为。一经发现,将上报相关部门,并受到包 括开除学籍在内的严厉处罚。
(一)教科书-必读
1、[美] 约翰 W.萨茨辛格 著;沈群力 译. 系统分析与设计:敏捷迭代方法(原书第6版). 机械工业出版社, 2017-01.
(二)教科书-强烈推荐
无
(三)文章-必读
1、CSDN论坛. http://bbs.csdn.net/home.
2、电子发烧友论坛. http://bbs.elecfans.com/zhuti_emb_1.html.
3、Java Web开发. http://javaweb.group.iteye.com/
(四)文章-强烈推荐
1、CSDN论坛. http://bbs.csdn.net/home.
(五)其他参考资料
1、[日] BePROUD股份有限公司 著, 支鹏浩 译. Python项目开发实战(第2版).人民邮电出版社,2016-12.
2、王翠萍 著. Android经典项目开发实战. 清华大学出版社 ,2015-08.
3、[美] Joseph Howse 著,张弢 译. OpenCV项目开发实战. 清华大学出版社, 2016-10.
4、贾蓓,镇明敏,杜磊 .Java Web整合开发实战:基于Struts 2+Hibernate+Spring. 清华大学出版社, 2013-07.
5、软件开发技术联盟. 编软件开发实战:PHP+MySQL开发实战. 清华大学出版社, 2013-09.
(一)教学活动
1、课下自学
2、课堂案例讲解
3、课堂讨论
4、课堂实训
5、课下实训
6、项目验收
(二)对预期学习成果的考察
预期学习成果 | 教学活动 | 学习成果考察内容:作业/课程实验 |
1 项目立项 | 1、2、3、4、5、6、 | 实训内容: (1)项目分组与选题、确定项目目标 (2)项目可行性分析 课后作业: (1)完成项目可行性分析报告 (2)学习新技术 (3)分组讨论,完成每周会议记录 |
实训2 项目需求分析 | 1、2、3、4、5、6、 | 实训内容: (1)项目需求分析 课后作业: (1)完成项目需求分析报告 (2)学习新技术 (3)分组讨论,完成每周会议记录 |
实训3 系统设计 | 1、2、3、4、5、6、 | 实训内容: (1)项目进度计划 (2)系统概要设计 (3)系统详细设计 (4)界面设计 课后作业: (1)完成项目的进度计划、系统设计、界面设计报告 (2)学习新技术 (3)分组讨论,完成每周会议记录 |
实训4 环境搭建与配置、数据库设计 | 1、2、3、4、5、6、 | 实训内容: (1)环境搭建及配置 (2)数据库设计 课后作业: (1)完成数据库设计报告 (2)学习新技术 (3)分组讨论,完成每周会议记录 |
实训5 项目开发(阶段1) | 1、2、3、4、5、6、 | 实训内容: (1)完成阶段1的项目编码、测试、文档 课后作业: (1)项目功能实现及测试 (2)学习新技术 (3)分组讨论,完成每周会议记录 |
实训6 项目开发(阶段2) | 1、2、3、4、5、6、 | 实训内容: (1)完成阶段2的项目编码、测试、文档 课后作业: (1)项目功能实现及测试 (2)学习新技术 (3)分组讨论,完成每周会议记录 |
(一)评分体系
1、出勤率: 20%
2、课堂参与:25%
3、课题实训: 10%
4、项目实训: 45%
(二)课程的教学目标与评估方式的对应关系
编号 | 课程教学目标 | 评估方式 |
1 | 目标1:掌握编程语言和数据库编写技能,能够熟练使用数据库工具和编程语言解决实际问题。 | 随堂提问、课堂实验、项目验收。 |
2 | 目标2:职业素质养成目标,养成认真仔细分析问题的习惯,提高分析和解决问题的能力,树立IT职业人吃苦耐劳的敬业精神,培养团结协作的工作作风和严谨求实的工作态度 | 随堂提问、课堂实验、项目验收。 |
3 | 目标3:能够综合运用所学编程和数据库知识,使用增量式的项目开发方法,编写程序完成实训项目;将实验或实训的完成情况,撰写一份完整的实验报告。 | 随堂提问、课堂实验、项目验收。 |
职业素质(20分) |
1)考勤:缺勤一次扣2分;迟到一次扣1分;早退一次扣1分。 |
过程能力(25分) |
1)团队合作:20分,包括沟通、态度、团队建设、问题解决能力; 2)表达:5分,包括课堂回答问题,项目答辩。 |
技术能力 (45分) |
1)文档:25分,系统各阶段文档; 2)源代码:10分,代码的规范性和编写代码的能力; 3)项目:10分,项目完成情况。 |
课堂技术分享(10分) |
1)针对某个问题,以案例形式讲解技术使用及实现。 |
周次 | 课程要点 | 理论学时 | 实验学时 | 习题学时 |
1 | 实训1 项目立项 | 1 | 2 | |
2 | 实训2 项目需求分析 | 1 | 2 | |
3 | 实训3 系统设计(1)--进度计划 | 1 | 2 | |
4 | 实训3 系统设计(2)--概要设计 | 1 | 2 | |
5 | 实训3 系统设计(3)--详细设计 | 1 | 2 | |
6 | 实训4 环境搭建与配置、数据库设计 | 1 | 2 | |
7 | 实训5 项目开发(阶段1) --编码 | 3 | ||
8 | 实训5 项目开发(阶段1) --测试 | 3 | ||
9 | 实训5 项目开发(阶段1) --编码 | 3 | ||
10 | 实训5 项目开发(阶段1) --测试、阶段验收 | 3 | ||
11 | 实训6 项目开发(阶段2)--编码 | 3 | ||
12 | 实训6 项目开发(阶段2)--编码 | 3 | ||
13 | 实训6 项目开发(阶段2)--测试 | 3 | ||
14 | 实训6 项目开发(阶段2)--编码 | 3 | ||
15 | 实训6 项目开发(阶段2)--测试 | 3 | ||
16 | 实训6 项目验收 | 3 | ||
17 | ||||
18 | ||||
19 | ||||
20 | ||||
总学时 | 6 | 42 |
注:此表一式三份,于开学两周内填好,一份送教务与科研部,一份开课单位留存,一份自留。