1、软件工程实验教学大纲Software Engineering Practices课程代码: 课程性质:实验实习实训/必修适用专业:信息计算 开课学期:7总学时数:24 总学分数:1.5编写年月:2006 年 6 月 修订年月:2007 年 6 月执笔:李小英,刘伟一、实习的性质和目的通过实习使学生熟悉软件工程的原理、方法和技术,能全面、系统地应用所学的概念、原理和方法完成系统开发的规划、分析、设计和实施工作;掌握软件开发的过程和技术等,以达到对本课程的综合知识的考察和基本技能技巧的运用,培养学生的独立操作能力和团队合作精神。软件工程不等于程序设计,这是本课程需要使学生强化理解之处。传统上的程序
2、设计在一定程度上是偏重于计算机科学的领域,属于较抽象的范畴,而软件工程则需要实实在在地做出一个满足用户需求的系统出来,这是一个很具体的实践过程,因此作为一个软件开发者,就必须具备从事工程实践的技能,包括软件项目的系统分析、编写文档、源码设计与控制、使用工具等等基本技能,这就是本课程实习要实现的一个目标。二、实习内容及学时分配(一)实习内容(1)图书采购系统;(2)学生成绩管理系统;(3)人事工资管理系统;(4)飞机/火车等订票系统;(5)宾馆管理信息系统(实例指导) ;说明:小组从(1)-(4)题目中任选一;若题目自选,须向指导老师报备;具体说明:1、问题理解和分析(分析)充分地分析和理解问题
3、本身,进行问题定义。明确“做什么(What to do?) ”。本阶段要产生软件需求文档,并提交给指导教师审阅。2、确定解决问题的方法(技术方案)主要是构思解决问题的主要思路,明确“怎么做(How to do?) ”。在此阶段可考虑系统的功能和模块划分,并产生软件(概要)设计说明书。3、详细设计和编码(设计)本阶段工作主要围绕编写软件详细设计说明书,明确软件处理流程和程序算法,对存在数据(库)设计的题目,需要提供数据(库)设计说明书。之后进行编码(Coding) 。在编程过程中要求程序结构的清晰,避免出现明显的程序逻辑错误和语法错误,提高程序调试效率。4、程序调试和运行(调试)使学生掌握程序调
4、试、排错的基本方法,增加编程及测试的感性认识。本阶段要产生测试分析文档。5、完成实习报告(整理)提交实习报告,本阶段注重学生在项目完成后,整理一个工程项目,以便提交给后来的技术维护人员和提交项目配置管理要求的资料,同时也利于自己提高和撰写科研论文,因此学生必须掌握。(二)学时分配学 时安 排 小计序号 内 容理论课时 上机课时1 集中学习、讨论。给出参考资料,进行资料查阅; 2 22给出多个实习题目,学生可任选一;编写的程序及文档要符合软件工程规范(讲述规范)2 23再次讨论实习中所涉及的问题;检查各小组的实习题目,及审阅软件需求分析文档。4 44分散进行实习。应用已经学过的 C或 C+语言知
5、识,或其它高级语言进行程序设计、编码、调试等。12 125 提交实习成果及文档 4 4总 计 24 24三、实习基本要求实习地点:理学管 613 实习组织:软件工程实习以实际应用中的小型题目为主,要求学生能把软件工程学的基本原理和方法应用到软件的实际开发和设计中,在规定时间内完成。在教师的指导下以软件设计为中心,独立地完成从需求分析、软件设计、编码到软件测试运行的软件开发全过程。1按分组安排,各组在规定时间进行实习,实习期间不得迟到和早退,否则不予登记实习成绩。2各实习小组分别完成各自的实习题目,最后提交相应的实习报告。实习是软件工程课程的重要组成部分,在理论教学结束后进行。实习的成果是实习报
6、告。报告撰写的基本要求是原则上不少于 4000 字,需在封面注明设计选题、班级、姓名、学号及设计日期、地点,其正文至少包括如下几个方面的内容:(1)可行性分析(2)系统分析部分业务流程图,数据流程图,功能分析图,数据字典,数据加工处理的描述,软件系统流程设想图(新系统模型)(3)系统设计部分功能结构图设计,软件处理流程设计,输出设计(主要指打印输出设计) ,存储文件格式设计(数据库结构设计) ,输入设计(主要指数据录入卡设计) ,代码设计,程序设计说明书(4)系统实施部分程序框图,源程序,模拟运行数据,打印报表,软件使用说明书(5)附录或参考资料四、实习成绩评定实习结束后综合考评该实习成绩:
7、文档编写完整规范,包括编写过程符合软件工程开发设计流程等(30%) 。软件功能达到设计要求,实现正确、程序稳定、界面美观大方、编程符合规范、程序具有易读性等(30%)考勤、学习态度、独立工作能力(10%)实习报告(30%)五、本环节与其它课程的联系与分工先修课程:Java 语言、软件工程等六、建议教材及教学参考书教材:软件工程 张海藩编著 人民邮电出版社教学参考书:1 张海藩编著, 软件工程 (第二版) ,人民邮电出版社,2006 年 1 月第 2 版2 郑人杰等编著, 实用软件工程 (第二版) ,清华大学出版社,1997 年 4 月第 2 版3 Jeffrey L.等著, System Analysis and Design Methods, fifth Edition ,高等教育出版社,2001 年 6 月4 Edward Yourdon &Carl Argila 著,殷人昆等译, 实用面向对象软件工程教程 ,电子工业出版社,1998 年 6 月第 1 版5 Mark Fewster & Dorothy Graham 著,舒智勇等译, 软件测试自动化技术与实例详解 ,电子工业出版社,2000 年 1 月