| 信息安全
软件工程 课程教学大纲
Course Outline
课程基本信息(Course Information) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
课程代码 (Course Code) |
SE407 |
*学时 (Credit Hours) |
16 |
*学分 (Credits) |
1 |
||||||||||||||||||||||||||||||||||||||||||||||||||
(Course Title) |
(中文)软件工程 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
(英文)Software Engineering |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
*课程性质 (Course Type) |
必修 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
授课对象 (Target Audience) |
本科二年级 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
*授课语言 (Language of Instruction) |
中文 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
*开课院系 (School) |
信息安全工程学院 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
先修课程 (Prerequisite) |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
授课教师 (Instructor) |
马颖华 |
课程网址 (Course Webpage) |
ftp://ma-yinghua:public@public.sjtu.edu.cn/ |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||
*课程简介(Description) |
软件工程课程是信息类的专业课程,主要介绍软件的制作过程,能够使学生了解软件生成的过程,了解并实践安全有效地完成软件开发全部过程的各类方法,了解成功的软件开发过程的要素和理念。 本课程共八周,其中前三周为集中授课,主要授课内容包括:软件需求分析;测试驱动的开发;软件过程包括瀑布等经典过程,以及敏捷过程和极限开发;软件设计中重点介绍软件模式和重构。课程后几周,学生7人一组进行自选题目的项目开发,作为课程的考核内容。其中第四周老师和学生共同确定项目分组和开发内容。项目要求每一个小组完成两轮开发迭代。在整个项目开发期间,教师将根据学生实际情况,安排单独的小组答疑或者集体答疑。 通过本门课程的授课和实践过程,学生应能够理解软件开发过程及其要素,在实践中深化对软件工程的理解,体会人的因素在软件工程中所起的重要作用,与此同时,加强学生的动手实践能力和创造能力。 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
*课程简介(Description) |
Software Engineering is a professional course for students of Information Technology related majors. It introduces software developing process, many kinds of methods which are used in the software developing process, and important principles which helps to lead software developing to a success. The course takes eight weeks( two hours per week), among these, the first three weeks are taken in classroom where we will learn how to analysis requirement, what is about test-driven developing(TDD), varied software procedures, agile development and the relationship among software design and refactoring. In the rest of this course, students will be organized into small groups each includes 7-8 student, to develop a software as the long-term homework which is the course evaluation. During long-term homework period, student can contact with teacher and ask for classroom QA or group QA. With this course, student would be able to understand software engineering process and its essential factors, and deepen those understanding in practicing, so as to comprehend the important role the factor of human being playing in software engineering, and at the same time, creativity and practical ability would also be enhanced. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
课程教学大纲(course syllabus) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
*学习目标(Learning Outcomes) |
1.了解需求分析及管理的方法,并实践其中一种方法 2.了解多种软件过程,并在大作业中实践敏捷开发过程 3.了解测试驱动开发,并在大作业中实践自动测试系统 4.了解软件设计的设计模式和重构 5.了解人的因素在软件开发中的重要作用,并在大作业的团队管理中加以实践 6.了解软件开发的各类工具,例如代码管理、过程管理等,并在大作业中加以应用 7.形成对软件过程的整体认知,具备一定的软件开发经验。 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
*教学内容、进度安排及要求 (Class Schedule &Requirements) |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
*考核方式 (Grading) |
(成绩构成)课后作业5%;大作业95%(其中,项目组总评40%,个人总结60%) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
*教材或参考资料 (Textbooks & Other Materials) |
《需求:缔造伟大商业传奇的根本力量 》 《用户故事和敏捷方法》 《测试驱动开发》 《验收测试驱动开发》 《硝烟中的Scrum和XP》 《敏捷软件开发——原则、模式与实践》 《 Scrum敏捷软件开发 》 《重构:改善既有代码的设计》 《设计模式:可复用面向对象软件的基础》 http://www.extremeprogramming.org
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
其它 (More) |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
备注 (Notes) |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
备注说明:
1.带*内容为必填项。
2.课程简介字数为300-500字;课程大纲以表述清楚教学安排为宜,字数不限。