
随着人工智能技术的快速发展,软件开发领域正在经历深刻变革。生成式软件开发允许开发者使用自然语言描述需求,通过大模型和Agent等AI技术自动实现完整程序生成甚至部署运行。这种开发模式也被称为氛围编程(Vibe Coding)。对于专业开发者而言,生成式软件开发技术可以帮助他们降低学习成本,提高开发效率;而对于各行各业的非专业开发者而言,生成式软件开发技术可以帮助他们定制工具软件以解决自身的实际问题,甚至将自身的创意和专业知识快速转换为软件产品。
在此背景下,复旦大学计算与智能创新学院全新开设了一门新的AI大课(B1类课程)《生成式软件开发》,并将于2026年春季学期首次开课。该课程专门面向非计算机专业学生设计,旨在帮助同学们掌握生成式软件开发的核心技能,帮助学生延伸AI工具的运用技能,提升跨学科创新能力,为未来科研和职业发展奠定坚实基础。通过这门课程,我们希望同学们不仅能熟悉大模型、Agent、提示工程、上下文工程等AI技术,而且能初步掌握问题拆解、方案规划、过程迭代、代码评审、软件测试等工程化开发能力。
教学理念
1.渐进式教学
从简单的脚本应用开始,逐步引入复杂的应用场景,帮助学生理解生成式软件开发的原理和实践。
2.理论与实践相结合
采用项目、案例驱动的教学模式,每个学习模块都配套相应的实践项目,确保将理论知识转化为实际应用能力,积累具有展示价值的作品集。
3.强调工程化思维
培养学生的工程化意识和质量验证能力,通过系统化的训练,使学生不仅掌握初步的AI辅助编程技术,还具备初步的模块化开发、架构设计和软件测试和验证的综合能力。

课程内容与体系结构
本课程共16周,54学时,采用循序渐进的教学方式,分为五个核心部分:
第1部分:课程背景与基础知识
生成式开发导论:理解生成式软件开发与传统开发的差异,建立工程化开发以及确认与验证意识。
提示工程基础:掌握结构化提示词的设计方法,学习AI生成内容的边界检查与结果验证。
智能开发环境:熟悉面向生成式软件开发的智能化IDE核心功能,掌握Chat、Copilot、Agent三种交互与工作模式。
第2部分:脚本和单文件应用构造
学习生成式软件开发的关键实践:精确描述需求、模块化拆分、快速迭代等。
通过相关案例,掌握数据处理脚本的开发方法。
实现交互式数据可视化应用,学习代码审查与领域相关API的使用。
第3部分:多文件项目管理与全栈开发
掌握上下文工程原理,学习多文件项目的管理策略。
采用API-First模式,完成后端服务开发。
生成前端组件并实现全栈集成,掌握测试与错误排查方法。
第4部分:具有一定复杂度的智能系统构建
学习规格(Spec)驱动开发流程,掌握需求分析与文档评审方法。
理解模型上下文协议(MCP)架构,配置本地知识库连接。
集成智能体系统,构建具备自主决策能力的应用。
建立“AI生成、AI验证”的质量保障闭环。
第5部分:项目展示与行业前瞻
分组进行项目演示与答辩,展示AI应用开发成果
总结课程内容,探讨AI编程的未来趋势与行业发展
修读要求和能力培养目标
1.基础知识要求
掌握至少一门程序设计语言,了解程序设计的基本原理。有初步的编程经验,可以独立完成小规模编程任务。
2.能力培养目标
通过本课程学习,学生将具备以下能力:
熟练运用AI辅助编程工具,提升软件开发效率;
了解系统化的软件工程思维;
能够在AI的帮助下,完成从需求分析到开发部署的完整开发流程。
课程基本信息
课程编号:AIB110005
课程名称:生成式软件开发
英文名称:Generative Software Development
课程周期:16周,54学时
先修要求:C程序设计、Python程序设计、人工智能程序设计等程序设计类课程
授课工具:各类大语言模型及智能化软件开发IDE
学分设置:3学分
授课方式:理论讲授 + 课堂讨论和演示 + 项目实践
考核方式:编程作业 + 课程项目 + 期末上机
授课教授

彭鑫,复旦大学计算与智能创新学院副院长、教授,国家级高层次人才计划入选者。中国计算机学会(CCF)杰出会员、软件工程专委会副主任、开源发展委员会常务委员,中国汽车工程学会汽车基础软件分会副主任,《Journal of Software: Evolution and Process》联合主编(Co-Editor),《ACM Transactions on Software Engineering and Methodology》、《Empirical Software Engineering》、《Automated Software Engineering》、《软件学报》等期刊编委。2016年获得“NASAC青年软件创新奖”,2023年入选上海市东方英才拔尖项目,2024年获得“中创软件人才奖”。主要研究方向包括基于大模型的软件智能化开发、云原生与AI原生系统、智能汽车与智能制造基础软件等。

张天戈,复旦大学计算与智能创新学院工程师。复旦大学计算机软件与理论专业博士,主要从事软件工程领域模型驱动的开发、逆向工程等方面的研究和教学工作。承担软件工程本科专业必修课《面向对象程序设计》、《软件设计》、《模型驱动的系统工程》以及研究生课程《高级软件开发技术》、《软件过程管理》等课程教学工作。在软件工程领域模型驱动设计(MDA)、逆向工程等方面展开了深入的研究,具有丰富的大型的企业级应用软件开发实践经验。

吴毅坚,复旦大学计算与智能创新学院副教授,博士生导师。研究方向包括软件复用、软件演化、软件开发数据分析、软件开发方法与平台等。作为子课题负责人或技术骨干参加多个国家863项目、973项目、重点研发计划、总装备部技术预研项目等,先后主持国家自然科学基金青年项目和面上项目。相关研究成果在软件工程领域的国内外重要会议和期刊上发表论文三十余篇,并开展实践应用。2006年以来向软件工程专业本科生开设了《软件工程》、《软件实践》、《数据库设计》等专业课程。
结语
智能化浪潮已经到来,生成式软件开发正在改变我们编写代码以及开发软件的方式。本课程将为同学们提供掌握这一前沿技术的机会,帮助大家在智能化浪潮中占据技术高地。
我们诚邀有志于技术创新的同学们积极参与,系统学习AI辅助编程及生成式软件开发核心技术,运用AI技术解决实际问题,提升技术视野和创新能力,为未来职业发展奠定坚实基础。

