《软件工程专业导论幻灯片.ppt》由会员分享,可在线阅读,更多相关《软件工程专业导论幻灯片.ppt(52页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、软件工程专业导论第1页,共52页,编辑于2022年,星期三讲授内容讲授内容1.专业背景、目标和发展趋势2.专业知识体系3.专业的思想、方法和过程4.专业的建模、环境和工具5.专业人才岗位和能力要求6.专业课程体系介绍与分析7.学好专业的方法研讨第2页,共52页,编辑于2022年,星期三1 软件工程背景、目标和发展趋势 n1 软件特性与问题n2 软件工程的产生n3 软件工程的目标要求n4 软件工程发展趋势第3页,共52页,编辑于2022年,星期三第4页,共52页,编辑于2022年,星期三2 软件工程知识体系nSE的问题空间n知识结构:n SWEBOK:SWEBOK:学科的基石学科的基石n SEE
2、K:SEEK:软件工程本科教学计划指南软件工程本科教学计划指南n n SE的三层次知识结构的三层次知识结构第5页,共52页,编辑于2022年,星期三SESE的问题空间的问题空间理论理论原理原理创新创新应用应用部署部署配置配置开发开发倾向理论倾向理论倾向应用倾向应用组织系统行为组织系统行为应用技术应用技术软件开发软件开发系统平台结构系统平台结构计算机硬件体系计算机硬件体系SESE摘自CC2005第6页,共52页,编辑于2022年,星期三知识结构知识结构nSWEBOK:软件工程学科的基石nSEEK:制定软件工程本科教学计划的指南n软件工程本科的三层次知识结构第7页,共52页,编辑于2022年,星期
3、三1 1)SWEBOK:SWEBOK:软件工程学科的基石软件工程学科的基石SWEBOK的十一个领域 软件需求 软件设计 软件构造 软件测试 软件维护 软件配置管理 软件工程管理 软件工程过程 软件工程工具和方法 软件质量 相关知识 第8页,共52页,编辑于2022年,星期三软件工程知识体系指南(SWEBOK2004)软件需求软件需求基础需求过程软件获取需求分析需求规格说明需求确认实际考虑软件构造软件构造基础管理构造实际考虑软件测试软件测试基础测试级别测试技术需求分析测试度量测试过程软件维护软件维护基础软件维护关键问题维护过程维护技术软件工程知识体系指南(SWEBOK2004)软件需求软件需求基
4、础需求过程软件获取需求分析需求规格说明需求确认实际考虑软件设计软件设计基础软件设计关键问题体系结构设计质量分析设计符号策略与方法软件构造软件构造基础管理构造实际考虑软件测试软件测试基础测试级别测试技术需求分析测试度量测试过程软件维护软件维护基础软件维护关键问题维护过程维护技术第9页,共52页,编辑于2022年,星期三配置管理过程管理配置标识配置控制状态报告配置审计发布管理项目管理范围定义项目计划项目实施评审评价项目收尾工程度量软件过程实施变更过程定义过程评定过程度量工具方法软件质量相关知识计算机工程计算机科学管理数学项目管理质量管理人类工程学系统工程配置管理过程管理配置标识配置控制状态报告配置
5、审计发布管理项目管理范围定义项目计划项目实施评审评价项目收尾工程度量软件过程实施变更过程定义过程评定过程度量工具方法软件质量相关知识计算机工程计算机科学管理数学项目管理质量管理人类工程学系统工程配置管理过程管理配置标识配置控制状态报告配置审计发布管理项目管理范围定义项目计划项目实施评审评价项目收尾工程度量软件过程实施变更过程定义过程评定过程度量工具方法软件工具需求工具软件工程方法启发式方法形式化方法原型方法软件质量质量基础质量过程实际考虑相关知识计算机工程计算机科学管理数学项目管理质量管理人类工程学系统工程设计工具构造工具测试工具维护工具配置管理工具质量管理工具项目管理工具其他工具问题第10页
6、,共52页,编辑于2022年,星期三SWEBOK:SWEBOK:软件工程学科的基石软件工程学科的基石n软件工程的相关学科 认知科学和人的因素 计算机科学 计算机工程 管理和管理科学 项目管理 系统工程 数学n软件工程作为知识领域被其他计算学科引用 计算机科学 计算机工程 计算机信息系统 计算机信息技术 第11页,共52页,编辑于2022年,星期三2 2)SEEK:SEEK:制定软件工程本科教学计划的指南制定软件工程本科教学计划的指南 SEEK的主要框架 知识领域、知识单元、知识点 知识单元的参考学时 学生掌握知识点的方式 知识 理解 应用 标识知识点的重要程度 核心 必修 选修 用SEEK制定
7、课程计划的途径第12页,共52页,编辑于2022年,星期三(1 1)SEEKSEEK的的1010个知识领域个知识领域 494494计算基础 172数学和工程基础 89职业实践 35软件建模与分析 53软件设计 45软件验证与确认 42软件进化 10软件过程 13软件质量 16软件管理 19第13页,共52页,编辑于2022年,星期三(2 2)应用知识领域)应用知识领域n以网络为中心的系统以网络为中心的系统 n信息系统和数据处理信息系统和数据处理 n金融和电子商务系统金融和电子商务系统n容错和可存活系统容错和可存活系统n高安全系统高安全系统n安全攸关系统安全攸关系统n嵌入式和实时系统嵌入式和实时
8、系统n生物学系统生物学系统n科学计算系统科学计算系统n电信系统 n航空和交通系统 n工业过程控制系统n多媒体、游戏和娱乐系统n小型移动平台系统 n基于Agent的系统n中文信息处理 n 第14页,共52页,编辑于2022年,星期三3 3)SESE三层次知识结构三层次知识结构第15页,共52页,编辑于2022年,星期三3 软件工程思想、方法和过程n1 软件工程核心思想n2 软件工程基本方法n3 软件工程过程第16页,共52页,编辑于2022年,星期三第17页,共52页,编辑于2022年,星期三问题定义问题定义软件需求软件需求总体设计总体设计详细设计详细设计编程调试编程调试运行维护运行维护定义阶段
9、开发阶段维护阶段第18页,共52页,编辑于2022年,星期三4 软件工程模型、环境和工具n1 软件建模n2 软件开发的组织、文化和基础设施n3 常用软件分析设计和开发工具第19页,共52页,编辑于2022年,星期三5 5 软件工程专业人才岗位与能力要求软件工程专业人才岗位与能力要求n1 软件企业岗位分析n2 能力要求n3 培养定位n4 软件人员职称考试第20页,共52页,编辑于2022年,星期三软件经理/主管系统测试组组长系统设计组组长软件设计组组长软件质量保证SQA软件配置管理组系统工程师1系统工程师2系统测试工程师。系统测试工程师。软件结构工程师设计工程师。软件配置工程师软件文档工程师。第
10、21页,共52页,编辑于2022年,星期三2.2.能力要求能力要求软件工程师的能力和品质能运用理论、模型和技术对问题进行识别和分析,能进行软件设计、开发、实现、验证和文档化,交付高质量的软件产品能理解各种工程设计方法的优缺点,根据情况选择符合道德、社会、法律、安全和经济规范的合适方法第22页,共52页,编辑于2022年,星期三能力要求能力要求重视产品交付期限、面对有限的资源、系统和组织能对各种矛盾进行协调、折衷和决策能遵守纪律、交流和合作、能够评价人和团队的能力,了解团队和团队行为及角色外语的表达与交流能力第23页,共52页,编辑于2022年,星期三高级软件人才职位 1 软件项目经理 2 需求
11、分析师 3 软件构架师 4 软件测试师 5 软件工程师第24页,共52页,编辑于2022年,星期三软件项目经理n软件项目经理是整个项目的协调者和组织者,主要的职能是保证开发团队协调一致地工作。对内:做好团队内的沟通,保证大家的工作协调一致,不会产生冲突;对外:团队和客户沟通的桥梁。了解客户对项目功能和进度的期望要求,并根据团队的开发情况及时给出反馈,才能保证项目进展比较顺畅。第25页,共52页,编辑于2022年,星期三需求分析师 软件需求分析师从用户的业务中提取出软件系统能够帮助用户解决的业务问题,通过对用户业务问题的分析,规划出软件产品。负责进行产品/项目需求调研、需求分析、业务建模、系统建
12、模;负责编写产品/项目需求调研报告,撰写需求规格说明书。第26页,共52页,编辑于2022年,星期三 软件架构师n软件架构师在一个软件项目开发过程中,将客户的需求转换为规范的开发计划及文本,并制定这个项目的总体架构,指导整个开发团队完成这个计划。架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作。他必须对开发技术非常了解,并且需要有良好的组织管理能力。可以这样说,一个架构师工作的好坏决定了整个软件开发项目的成败。第27页,共52页,编辑于2022年,星期三软件测试工程师n软件测试工程师通过编写测试方案并按照测试方案和流程对软件产品进行功能和性能测试,检查产品是否有缺陷
13、,性能是否稳定,并给出相应的评价的那些专业技术人员。作为软件开发的重要环节,软件测试越来越受到人们的重视。第28页,共52页,编辑于2022年,星期三软件工程师软件工程师既要有熟练的掌握软件编程的动手操作能力,又要了解对软件工程的规范,能进行软件开发和基本的软件架构能力。第29页,共52页,编辑于2022年,星期三 人才培养的基本定位人才培养的基本定位n培养目标 软件工程师n学生毕业后,应具备软件工程师从事软件工程实践所需要的素质、知识和能力n软件工程专业的学制一般为4年,授予工学学士学位第30页,共52页,编辑于2022年,星期三专业领域计算机软件计算机网络高级资格信息系统系统分析师系统架构
14、项目管理师(原系统分析员)设计师中级资格软件评测师软件设计师(原高级程序员)网络工程师 初级资格程序员(原程序员、初级程序员)网络管理员 第31页,共52页,编辑于2022年,星期三专业领域计算机应用技术 信息系统 高级资格信息系统系统分析师系统架构项目管理师(原系统分析员)设计师中级资格多媒体应用设计师嵌入式系统设计师计算机辅助设计师电子商务设计师 信息系统监理师数据库系统工程师信息系统管理工程师 初级资格多媒体应用制作技术员电子商务技术员 信息系统运行管理员 第32页,共52页,编辑于2022年,星期三专业领域信息服务 高级资格信息系统系统分析师系统架构项目管理师(原系统分析员)设计师中级
15、资格信息技术支持工程师 初级资格信息处理技术员 第33页,共52页,编辑于2022年,星期三6 6 软件工程专业课程体系分析软件工程专业课程体系分析 规范设计五组课程,以此为基础制定参规范设计五组课程,以此为基础制定参考教学计划考教学计划第34页,共52页,编辑于2022年,星期三第35页,共52页,编辑于2022年,星期三1 1)课程设计)课程设计A 计算机科学优先课程计算机科学优先课程B 软件工程优先课程软件工程优先课程C 共性基础和专业课程共性基础和专业课程D 软件工程核心课程一组软件工程核心课程一组 E 软件工程核心课程二组软件工程核心课程二组 第36页,共52页,编辑于2022年,星
16、期三A A 计算机科学优先课程计算机科学优先课程 109109n程序设计基础程序设计基础 39,4816n面向对象方法学面向对象方法学 36,4816n软件工程导论软件工程导论 34,4816第37页,共52页,编辑于2022年,星期三B B 软件工程优先课程软件工程优先课程 109109n软件工程与计算软件工程与计算 35,4816n软件工程与计算软件工程与计算 36,4816n软件工程与计算软件工程与计算 38,4816第38页,共52页,编辑于2022年,星期三C C 共性基础和专业课程共性基础和专业课程数学基础课程数学基础课程 51 离散结构离散结构 24,48 离散结构离散结构 27
17、,48技术基础课程技术基础课程 75 数据结构和算法数据结构和算法 31,4816 计算机体系结构计算机体系结构 15,4816 操作系统和网络操作系统和网络 16,4816 数据库数据库 13,4816第39页,共52页,编辑于2022年,星期三 共性基础和专业课程共性基础和专业课程非技术基础课程非技术基础课程 38 工程经济学工程经济学 13,32 团队激励和沟通团队激励和沟通 11,168 软件工程职业实践软件工程职业实践 14,16共性专业课程共性专业课程 53 人机交互的软件工程方法人机交互的软件工程方法 25,3216 软件工程综合实习(含毕业设计)软件工程综合实习(含毕业设计)2
18、8,420第40页,共52页,编辑于2022年,星期三D D 软件工程核心软件工程核心课程一组课程一组 150 n“软件构造技术软件构造技术”36,4816n“软件设计与体系结构软件设计与体系结构”33,3216n“软件质量保证与测试软件质量保证与测试”37,3216n“软件需求分析软件需求分析”18,328n“软件项目管理软件项目管理”26,328第41页,共52页,编辑于2022年,星期三E E 软件工程核心课程二组软件工程核心课程二组 150150 n“大型软件系统设计与软件体系结构大型软件系统设计与软件体系结构”28,3216n“软件测试软件测试”23,328n“软件详细设计软件详细设
19、计”26,3216n“软件工程的形式化方法软件工程的形式化方法”34,3216n“软件过程与管理软件过程与管理”39,488第42页,共52页,编辑于2022年,星期三2 2)制定参考教学计划)制定参考教学计划 制定软件工程教学计划的原则制定软件工程教学计划的原则 中国高等学校本科生在校学时分析中国高等学校本科生在校学时分析 四种参考教学计划四种参考教学计划第43页,共52页,编辑于2022年,星期三 制定软件工程教学计划的原则制定软件工程教学计划的原则n借鉴借鉴CCSE2004,满足,满足SEEK最小核心要求最小核心要求n加强计算机学科基础加强计算机学科基础n增强软件工程能力培养增强软件工程
20、能力培养 n加强团队精神和交流能力加强团队精神和交流能力n与应用领域相结合与应用领域相结合n课内课内/外相结合外相结合n符合中国高等教育的实际情况符合中国高等教育的实际情况第44页,共52页,编辑于2022年,星期三 中国高等学校中国高等学校 本科生在校学时分析本科生在校学时分析n在校在校166周周 共共8个学期个学期n最后一学期实习和毕业设计最后一学期实习和毕业设计 n每学期课内外总学时每学期课内外总学时 9学时学时/天天x5天天/周周x22周周=990学时学时n七个学期总学时七个学期总学时 990学时学时x7=6930学时学时n课内学时减少课外学时应増加,反之课内学时增加课外课内学时减少课
21、外学时应増加,反之课内学时增加课外学时应减少。学时应减少。第45页,共52页,编辑于2022年,星期三 公共课学时分析公共课学时分析n数学数学(高等数学、线性代数、概率统计)(高等数学、线性代数、概率统计)250n海洋类知识海洋类知识 200n外语外语 250n政治政治 250n体育体育 100n课内学时总计课内学时总计 1050 n课内学时:课外学时课内学时:课外学时=1:2 n课内外学时总计课内外学时总计 3150 第46页,共52页,编辑于2022年,星期三 四种参考教学计划四种参考教学计划(A)计算机科学优先课程计算机科学优先课程(B)软件工程优先课程软件工程优先课程(C)共性基础和专
22、业课程共性基础和专业课程(D)软件工程核心课程一组软件工程核心课程一组 (E)软件工程核心课程二组软件工程核心课程二组计划计划1 A C D计划计划2 A C E 计划计划3 B C D计划计划4 B C E 选修课可选十五个应用领域选修课可选十五个应用领域,或其他内容或其他内容ADBCE第47页,共52页,编辑于2022年,星期三 软件工程专业课时分析软件工程专业课时分析课内课时模式课内课时模式 课时课时内外课时比内外课时比总计总计最小课内课时最小课内课时 494 1:31976一般课内课时一般课内课时 764 1:2.52674最大课内课时最大课内课时 900 1:22700三种参考课时的
23、教学模式三种参考课时的教学模式专业课内外总学时(七个学期)专业课内外总学时(七个学期)6930-3150=3780第48页,共52页,编辑于2022年,星期三6.6.要注意的问题要注意的问题1 教学计划要覆盖核心知识点教学计划要覆盖核心知识点2 加强实践性教学环节、熟练使用软件工具加强实践性教学环节、熟练使用软件工具3 强调工程特点、遵循工程规律强调工程特点、遵循工程规律 质量、成本、进度质量、成本、进度、人员、过程、管理、人员、过程、管理4 提高从业人员素质、发挥团队作用、加强提高从业人员素质、发挥团队作用、加强组织建设组织建设第49页,共52页,编辑于2022年,星期三要注意的问题要注意的
24、问题5 强调英语的交流和应用能力强调英语的交流和应用能力 6 充分发挥各高校的优势和潜能,与应用领充分发挥各高校的优势和潜能,与应用领域相结合,培养具有不同特色的复合型软域相结合,培养具有不同特色的复合型软件人才,适应信息社会不同领域的需要件人才,适应信息社会不同领域的需要 海洋、航空、航天、石油、气象、金融、海洋、航空、航天、石油、气象、金融、农业、医疗设备、服装设计、游戏、安全、农业、医疗设备、服装设计、游戏、安全、第50页,共52页,编辑于2022年,星期三7 学好软件工程专业的方法研讨第51页,共52页,编辑于2022年,星期三总总 结结n信息化需要大批软件人才n软件工程人才培养要实用型、国际化n软件工程是一个充满活力的新兴学科n软件工程教育需要领域背景n软件人才的培养应该有自己的定位和特色n要特别重视软件工程的工程能力和素质的培养第52页,共52页,编辑于2022年,星期三