联系我们
软件工程基础、Python基础、面向对象程序设计、数据库原理、HTML5基础、Java基础等
《软件工程项目化开发》是计算机/软件工程专业的一门工程性基础课程,在软件工程学科人才教育培训体系中占有重要的地位。软件工程学是用以指导软件人员进行软件的开发、维护和管理的科学,而软件开发是建立计算机应用系统的重要环节,人们通过软件工程学把软件开发纳入工程化的轨道。《软件工程建设项目化开发》已成为高等学校计算机软件教学体系中的一门核心课程。
本课程以IEEE最新发布的软件工程知识体系为基础构建内容框架,注重贯穿软件开发整一个完整的过程的系统性认识和实践性应用,以当前流行的统一开发过程、面向对象技术和UML语言作为核心,密切结合软件开发的先进的技术、最佳实践和企业案例,力求从“可实践”软件工程的角度描述需求分析、软件设计、软件测试以及软件开发管理,使学生在理解和实践的基础上掌握当前软件工程的方法、技术和工具。
通过本课程的学习,要求学生能掌握开发软件项目的工程化的方法和技术及在开发过程中应遵循的流程、准则、标准和规范等;学生应能掌握开发高质量软件的方法,以及有效地策划和管理软件开发活动,为学生参加大型软件开发项目打下坚实的理论基础。
本课程注重培育学生理论应用于实践的能力,课堂上教师向学生讲述软件工程建设项目开发中的相关原理和概念,并通过课程设计,培育学生对整个软件开发过程的能力。本课程对提高学生的软件开发能力和项目管理能力有重要的现实意义。
通过本章学习,对软件工程的基本概念与发展、软件生存周期各个阶段的活动以及软件生存周期模型予以了解,学习了软件生存周期各阶段常用的CASE工具。此外,也对Web应用、HTTP请求和前后端进行了一定的认识。
通过本章学习,了解甘特图的概念和作用,掌握Microsoft Project的基本使用方法。
通过本章学习,了解了EA的基本功能,并对基本使用方法加以掌握,最重要的包含了UML图的绘制和双向工程的基本使用方法。
通过本章学习,了解了Power Designer的基本功能,并对基本使用方法加以掌握,包括业务处理模型、概念数据模型、逻辑数据模型和物理数据模型使用的方法。
通过本章学习,了解高效的分布式版本控制管理系统Git,并简要学习了Git相关指令,以及利用Git进行版本控制的策略,对相关办法来进行了实践,包括本地或者远程版本库的初始化、用户授权配置、版本库授权、分支管理、冲突处理等。
通过本章学习,了解了Vue.js框架的使用方法,并对其中部分的概念进行了一定的掌握,包括Vue实例与生命周期、数据绑定、组件化等。同时,还学习了Vue Route、Vuex和Axios,以更简洁的方式开发更强大的应用。
通过本章学习,了解了Django这一Web应用框架的使用方法,以真实开发顺序为引导,从创建项目开始,设计Model层与View层等不同功能模块,开发了一个基于论文检索系统的简单交互接口,一步步展示了Django的开发特性,了解它的具体功能点。
通过本章学习,了解了软件测试的特点、分类和基本流程,学习了测试用例的设计的具体方案,并掌握了Vue Test Utils 、Unit Test和Postman三个自动化测试工具的基本使用方法。在软件开发过程中,可以依据不同的测试内容,选择正真适合的测试工具对前后端的代码进行测试。
通过本章学习,了解了部署、服务器和Nginx的概念,并且还对如何将前后端代码分离部署进行学习。同时,也掌握了一种方式将前后端代码部署在一个服务器(端口)中。
利用本课程所学到的知识,开发一款小型的网站项目,并对网站功能进行答辩展示,以将理论知识应用到实际。
本课程教育学生的方式以教师为主导的启发式讲授教学法为主,讨论(提问)式教学为辅,结合课外学习的教育学生的方式。软件项目开发课程设计以学生动手开发项目为主,教师的启发式讲授教学法为辅,并结合讨论(提问)式教学,以及结合课外学习的教育学生的方式。
1.本课程概念较多,因此教学形式以讲授方式为主。本课程拟采用多媒体PPT的教学方法,增加课堂信息,浅显通俗地对概念、定义和原理进行解释,增加教学的直观性,教学过程中注意各个知识点的关联性,以使学生更好地理解课程内容。
3.为加强和落实动手能力的培养,每章课后应安排作业,帮助学生学习和应用。
1.做好课前预习,预习时以教材为主,了解相关的概念、定义、原理。预习中认真思考,以便带着问题主动地听课。
2.课后要复习,有余力的学生复习时还应阅读参考资料,认真整理课堂听课笔记。
3.要求学生课外自主学习,学生课外阅读的参考资料以本大纲所列参考资料为主。
本课程成绩由平时成绩和期末考核成绩组合而成,课程成绩以百分制计算,分配比例如下:
1.平时成绩占70%,主要考查作业的完成程度,理论课和实验课的出勤率,实验课的考试结果。其中平时作业占15%,课程设计占50%,出勤率占5%。
2.期末成绩占30%,采用上机考试的考核方式。考试采用开卷形式,题型为选择题、判断题、填空题、简答题及应用题。
本课程根据学生组队完成课程设计、课堂讨论、平时考核情况、课后作业以及学生、教学督导等反馈,及时对教学中不足之处进行改进,并在下一轮课程教学中改进。
[1] 吕云翔,黎可为,张中基. 软件工程建设项目化教程[M]. 北京:清华大学出版社,2023.
[1] 吕云翔. 软件工程基础(题库+微课视频版)[M]. 北京:清华大学出版社,2022.
[2] 吕云翔,赵天宇. UML面向对象分析、建模与设计(第2版,微课视频版)[M]. 北京:清华大学出版社,2021.
本书依据典型的软件开发过程组织内容,围绕“论文检索系统”这一实际软件项目设计项目开发实验,旨在培养读者应用软件开发工具和框架进行实际软件项目开发的实践能力。
全书共9章,涉及软件工程理论与发展、软件设计与分析、软件开发、软件测试和代码管理等方面的内容。每章将根据不同工具或框架的特点对其进行详细的介绍,包括软件的基本介绍、版本信息、功能用途、使用步骤、拓展延伸等;每章的最后都配有相关的思考题和实验题,同时还附有本章的参考文献,帮助学生消化理解本章知识和拓展思路。