软件项目开发岗位设置
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2014-6-4 系统分析与设计(UML) 3
本课程相关软件源自文库
操作系统: Windows 2000等 数据库管理系统软件: SQL Server 2000、Access等 开发软件: C#、ASP.NET等
2014-6-4
系统分析与设计(UML)
4
课程的性质和作用
《系统分析与设计(UML)》是计算机软件和计算 机信息管理专业的一门核心专业课程,同时,该课程在
甚大型
极大型
2014-6-4
100~1000
2000~5000
4~5年
5~10年
1M
1~10M
16
系统分析与设计(UML)
例:Windows95有1000万行代码 Windows2000有5000万行代码
Exchange2000和 Windows2000开发人员结构
Exchange2000
项目经理 开发人员 测试人员
获得软件项目开发经验,熟悉软件开发环境和掌握具体
的CASE工具的使用。
2014-6-4 系统分析与设计(UML) 8
学生达到下列基本要求:
掌握软件生存周期模型及软件工程的基本概念 掌握软件生产的管理手段 掌握需求分析的方法,掌握数据流图和数据字 典的用途和编写 掌握总体设计和详细设计的方法和工具 掌握面向对象的分析和设计方法 掌握Power Designer的使用 能熟练地用PD工具绘出实际的概念数据模型 (CDM)、物理数据模型(PDM)、面向对象 模型(OOM)图。
法(特别是要具有系统分析与设计的能力),为学生今
后从事软件开发打下良好基础。该课程采用教学与实践 相结合,在教学设计中按照实际的软件企业开发流程让 学生自主完成项目开发的形式,组队合作完成(每队3-4, 少数工作量大的可以5人,原则上不得少于3人)。
2014-6-4 系统分析与设计(UML) 7
本课程的目标
系统分析与设计(UML) 10
2014-6-4
课程安排
本课程采用平时成绩(包括出勤考核,平时作 业,课堂发言等)、实践(实验和课程设计)和
理论考试相结合的考核方法。总评成绩中平时成
绩占20%,实践成绩占20%,期末考试占60%。
课程设计要求学生按小组完成项目设计,并以软
件验收书面报告的形式上交。
2014-6-4 系统分析与设计(UML) 11
系统分析与设计(UML)
计算机应用、计算机网络等诸多计算机类专业中也是一
门非常重要的专业学习领域课程。软件开发是建立计算 机应用系统的重要环节,通过软件工程学把软件开发纳 入工程化的轨道,而系统分析与设计是用以指导软件人 员进行软件的开发、设计的科学。
2014-6-4 系统分析与设计(UML) 5
课程的性质和作用
《系统分析与设计(UML)》作为计算机软件类教 学体系中的一门核心课程,其教学效果直接决定学生毕 业以后从事实际工作期间的软件开发设计能力。
软件工程概述
( 1 )需求分析:弄清用户对软件系统的全部需求, 主要是确定目标系统必须具备哪些功能。
( 2 )总体设计:设计软件的结构,即确定程序由哪 些模块组成以及模块间的关系。 (3)详细设计:针对单个模块的设计。
( 4 )编码:按照选定的语言,把模块的过程性描述 翻译为源程序。
(5)测试:通过各种类型的测试(及相应的调试)使软 件达到预定的要求。
二、软件开发模型 1. 瀑布模型:将软件生存周期的各项活动规 定为依照固定顺序连接的若干阶段工作, 形如瀑布流水,最终得到软件产品。
2014-6-4
系统分析与设计(UML)
26
2014-6-4
系统分析与设计(UML)
27
第 1章
软件工程概述
2. 螺旋模型:为了克服瀑布模型的不足,螺 旋模型于 1988 年提出。该模型中加入了风 险分析,通常用来指导大型软件项目的开 发。
使学生掌握系统分析与设计的基本概念、基本原理、
面向对象的软件开发方法和CASE技术,了解软件工程 各领域的发展动向;开发软件项目的工程化的方法及在开 发过程中应遵循的流程、准则、标准和规范等,使学生 掌握开发高质量软件的方法,加强学生软件开发和系统 设计能力的培养,提高学生撰写项目技术文档能力,综 合实践软件技术专业课程中所学习的理论、方法和技术,
第三代(从20世纪70年代中期到80年代中期):软件 工程阶段。
第四代(从20世纪80年代中期至今):软件产业在世 界经济中已经占有举足轻重的地位。
2014-6-4 系统分析与设计(UML) 18
第 1章
二、软件危机
软件工程概述
20世纪60年代末70年代初,西方工业发达国家 经历了一场“软件危机”。这场软件危机表现在: 一方面软件十分复杂,价格昂贵,供需差日益增 大,另一方面软件开发时又常常受挫,质量差, 指定的进度表和完成日期很少能按时实现,研制 过程很难管理,即软件的研制往往失去控制。我 们称软件开发和维护过程中所中遇到的这一系列 严重问题为软件危机。
2014-6-4
Windows2000
约250人 约1700人 约3200人
17
25人 140人 350人
系统分析与设计(UML)
第 1章
软件工程概述
1.2 软件的发展和软件危机
一、计算机系统的发展历程 第一代(20世纪60年代中期以前):程序设计阶段。 第二代(从20世纪60年代中期到70年代中期):程序 系统阶段——“软件工程” 学科诞生。
2014-6-4
系统分析与设计(UML)
13
第 1章
二、软件的特点
软件工程概述
(1)软件是一种逻辑实体。 ( 2 )软件的开发,是人的智力的高度发挥,而不是 传统意义上的硬件制造。 (3)软件维护与硬件的维修有着本质的差别。 ( 4 )软件的开发和运行常常受到计算机系统的限制, 对计算机系统有着不同程度的依赖性。 ( 5 )软件的开发至今尚未完全摆脱手工艺的开发方 式,使软件的开发效率受到很大限制。 (6)软件的开发是一个复杂的过程。 (7)软件的成本非常高昂。
2014-6-4 系统分析与设计(UML) 29
2014-6-4
系统分析与设计(UML)
30
第 1章
软件工程概述
3.喷泉模型:体现了软件创建所固有的 迭代和无间隙的特征。
2014-6-4
系统分析与设计(UML)
31
喷泉模型
迭代
重复 演进
无间隙
各阶段间无明显界限
2014-6-4
系统分析与设计(UML)
授课教师:李成大
计算机工程系
2014-6-4 系统分析与设计(UML) 1
教材:
《面向对象软件工程与UML》
参考资料:
张京等 人民邮电出版社
《数据库原理与CASE技术教程》刘甫迎等 人民邮电出版社
《软件工程导论》张海藩 等 《实用软件工程 》 机械工业出版社
清华大学出版社 清华大学出版社
2014-6-4 系统分析与设计(UML) 20
第 1章
二、软件工程方法学
软件工程概述
通常把在软件生命周期全过程中使用的一整套技 术的集合,称为软件工程方法学。软件工程方法学 包括三个要素:方法、工具和过程。 其中:软件工程方法是完成软件开发的各项任务 的技术方法,为软件开发提供了“如何做”的技术。 软件工具为软件工程方法提供了自动的或半自动的 软件支撑环境。软件工程的过程则是将软件工程的 方法和工具综合起来以达到合理、及时地进行计算 机软件开发的目的。 注:传统方法学和面向对象方法学是目前使用得最广 2014-6-4 21 系统分析与设计(UML) 泛的两种软件工程方法学。
第 1章
1.4
一、软件生存期
软件工程概述
软件生存期和软件开发模型
如同任何其他事物一样,软件也有一个孕育、 诞生、成长、成熟、衰亡的生存过程,一般称之 为计算机软件的生存期。 一般说来,软件生命期由软件定义、软件开 发和软件维护三个时期组成,每个时期又可进一 步划分成若干个阶段。
2014-6-4
系统分析与设计(UML)
22
第 1章
1.软件定义时期
软件工程概述
(1)问题定义:这是软件生存期的第一个阶段, 主要任务是弄清用户要计算机解决的问题是什么。 (2)可行性研究:任务是为前一阶段提出的问 题寻求一种至数种在技术上可行、且在经济上有 较高效益的解决方案。
2014-6-4
系统分析与设计(UML)
23
第 1章
2.软件开发时期
第 1章
软件工程概述
什么是软件 软件的特点 软件的分类 软件的发展和软件危机 软件工程 软件生存期和软件开发模型
系统分析与设计(UML) 12
2014-6-4
第 1章
1.1
一、 软件的概念
软件工程概述
软件的概念、特点和分类
软件是计算机系统中与硬件相互依存的另一部分,它 是包括程序、数据及其相关文档的完整集合。 程序是按事先设计的功能和性能要求编写的指令序列; 数据是使程序能正常操纵信息的数据结构; 文档是与程序开发、维护和使用有关的图文材料。 注:程序并不是软件,程序只是软件的组成部分。
2014-6-4
系统分析与设计(UML)
28
螺旋模型
螺旋模型沿着螺线旋转,在四个象限上 分别表达四个方面的活动,即: 制定计划──确定软件目标,选定实施方 案,弄清项目开发的限制 风险分析──分析所选方案,考虑如何识 别和消除风险 实施工程──实施软件开发 客户评估──评价开发工作,提出修正建 议
郑人杰 等
《软件工程 -实践者的研究方法》 Roger S. Pressman
《面向对象的分析与设计 》苑延闿
参考网址:
2014-6-4
清华大学出版社
软件工程专家网
www.51cmm.com
2
系统分析与设计(UML)
相关知识
具备的相关知识 : 计算机专业的基础知识,掌握程序 设计基础、数据库原理、数据结构、操 作系统等知识;具有一定的编程能力。 用途: 指导软件设计开发——商用软件、 网站(电子商务、电子政务)设计开发 规范; 计算机相关专业毕业设计。
系统分析与设计(UML) 9
2014-6-4
教学内容的组织
项目驱动模式(项目制) 融合了面向对象程序设计、数据 库、.NET/JAVA等多门课程,通过一个实际需 求的项目开发,使学生对项目全过程有一个深 刻的认识,并着重强化软件分析、设计技能;
角色模式(团队合作) 采用团队合作开发模式,所有人员都担任程序 员角色,并且兼任1-2个项目团队其他角色(如: 项目经理、配置经理、需求分析员、设计员、 测试员等)。
本课程与前导课程——“面向对象程序设计”和后续
课程——“项目管理及软件测试”是计算机软件、计算机 信息管理专业最重要的三门专业课程,是培养学生职业 能力最重要的三个环节。在这三者之中,本课程又起到 承上启下的作用,显得更加重要。
2014-6-4 系统分析与设计(UML) 6
课程的主要任务
通过课堂教学和实习指导使学生较全面地了解软件 开发和维护各个阶段的具体工作步骤及使用的技术和方
2014-6-4 系统分析与设计(UML) 24
第 1章
3.软件运行时期
软件工程概述
是软件生存周期的最后一个时期。软件人员 在这一时期的工作,主要是做好软件维护。维 护的目的,是使软件在整个生存周期内保证满 足用户的需求和延长软件的使用寿命。
2014-6-4
系统分析与设计(UML)
25
第 1章
软件工程概述
2014-6-4 系统分析与设计(UML) 14
第 1章
三、软件的分类
软件工程概述
系统软件 应用软件 支撑软件 实时处理软件 分时软件 交互式软件 批处理软件
15
1.基于软件功能的划分
2.基于软件工作方式的划分
2014-6-4
系统分析与设计(UML)
根据规模进行软件分类
软件规模类别 微型 小型 中型 大型 参加人员数 1 1 2~5 5~20 开发期限 1~4周 1~6月 1~2年 2~3年 产品规模(源代码行数) 0.5k 1~2k 5~50k 50~100k
软件危机包含下述两方面的问题:如何开发软 件,以满足对软件日益增长的需求;如何维护数 量不断膨胀的已有软件。
2014-6-4 系统分析与设计(UML) 19
第 1章
一、软件工程的定义
软件工程概述
1.3 软件工程
软件工程是指研究软件生产的一门学科,也就 是将完善的工程原理应用于经济地生产既可靠又 能在实际机器上有效运行的软件。 1983年美国《IEEE软件工程标准术语》对软件 工程下的定义为:软件工程是开发、运行、维护 和修复软件的系统方法,其中“软件”的定义为: 计算机程序、方法、规则、相关的文档资料以及 在计事机上运行时所必需的数据。
本课程相关软件源自文库
操作系统: Windows 2000等 数据库管理系统软件: SQL Server 2000、Access等 开发软件: C#、ASP.NET等
2014-6-4
系统分析与设计(UML)
4
课程的性质和作用
《系统分析与设计(UML)》是计算机软件和计算 机信息管理专业的一门核心专业课程,同时,该课程在
甚大型
极大型
2014-6-4
100~1000
2000~5000
4~5年
5~10年
1M
1~10M
16
系统分析与设计(UML)
例:Windows95有1000万行代码 Windows2000有5000万行代码
Exchange2000和 Windows2000开发人员结构
Exchange2000
项目经理 开发人员 测试人员
获得软件项目开发经验,熟悉软件开发环境和掌握具体
的CASE工具的使用。
2014-6-4 系统分析与设计(UML) 8
学生达到下列基本要求:
掌握软件生存周期模型及软件工程的基本概念 掌握软件生产的管理手段 掌握需求分析的方法,掌握数据流图和数据字 典的用途和编写 掌握总体设计和详细设计的方法和工具 掌握面向对象的分析和设计方法 掌握Power Designer的使用 能熟练地用PD工具绘出实际的概念数据模型 (CDM)、物理数据模型(PDM)、面向对象 模型(OOM)图。
法(特别是要具有系统分析与设计的能力),为学生今
后从事软件开发打下良好基础。该课程采用教学与实践 相结合,在教学设计中按照实际的软件企业开发流程让 学生自主完成项目开发的形式,组队合作完成(每队3-4, 少数工作量大的可以5人,原则上不得少于3人)。
2014-6-4 系统分析与设计(UML) 7
本课程的目标
系统分析与设计(UML) 10
2014-6-4
课程安排
本课程采用平时成绩(包括出勤考核,平时作 业,课堂发言等)、实践(实验和课程设计)和
理论考试相结合的考核方法。总评成绩中平时成
绩占20%,实践成绩占20%,期末考试占60%。
课程设计要求学生按小组完成项目设计,并以软
件验收书面报告的形式上交。
2014-6-4 系统分析与设计(UML) 11
系统分析与设计(UML)
计算机应用、计算机网络等诸多计算机类专业中也是一
门非常重要的专业学习领域课程。软件开发是建立计算 机应用系统的重要环节,通过软件工程学把软件开发纳 入工程化的轨道,而系统分析与设计是用以指导软件人 员进行软件的开发、设计的科学。
2014-6-4 系统分析与设计(UML) 5
课程的性质和作用
《系统分析与设计(UML)》作为计算机软件类教 学体系中的一门核心课程,其教学效果直接决定学生毕 业以后从事实际工作期间的软件开发设计能力。
软件工程概述
( 1 )需求分析:弄清用户对软件系统的全部需求, 主要是确定目标系统必须具备哪些功能。
( 2 )总体设计:设计软件的结构,即确定程序由哪 些模块组成以及模块间的关系。 (3)详细设计:针对单个模块的设计。
( 4 )编码:按照选定的语言,把模块的过程性描述 翻译为源程序。
(5)测试:通过各种类型的测试(及相应的调试)使软 件达到预定的要求。
二、软件开发模型 1. 瀑布模型:将软件生存周期的各项活动规 定为依照固定顺序连接的若干阶段工作, 形如瀑布流水,最终得到软件产品。
2014-6-4
系统分析与设计(UML)
26
2014-6-4
系统分析与设计(UML)
27
第 1章
软件工程概述
2. 螺旋模型:为了克服瀑布模型的不足,螺 旋模型于 1988 年提出。该模型中加入了风 险分析,通常用来指导大型软件项目的开 发。
使学生掌握系统分析与设计的基本概念、基本原理、
面向对象的软件开发方法和CASE技术,了解软件工程 各领域的发展动向;开发软件项目的工程化的方法及在开 发过程中应遵循的流程、准则、标准和规范等,使学生 掌握开发高质量软件的方法,加强学生软件开发和系统 设计能力的培养,提高学生撰写项目技术文档能力,综 合实践软件技术专业课程中所学习的理论、方法和技术,
第三代(从20世纪70年代中期到80年代中期):软件 工程阶段。
第四代(从20世纪80年代中期至今):软件产业在世 界经济中已经占有举足轻重的地位。
2014-6-4 系统分析与设计(UML) 18
第 1章
二、软件危机
软件工程概述
20世纪60年代末70年代初,西方工业发达国家 经历了一场“软件危机”。这场软件危机表现在: 一方面软件十分复杂,价格昂贵,供需差日益增 大,另一方面软件开发时又常常受挫,质量差, 指定的进度表和完成日期很少能按时实现,研制 过程很难管理,即软件的研制往往失去控制。我 们称软件开发和维护过程中所中遇到的这一系列 严重问题为软件危机。
2014-6-4
Windows2000
约250人 约1700人 约3200人
17
25人 140人 350人
系统分析与设计(UML)
第 1章
软件工程概述
1.2 软件的发展和软件危机
一、计算机系统的发展历程 第一代(20世纪60年代中期以前):程序设计阶段。 第二代(从20世纪60年代中期到70年代中期):程序 系统阶段——“软件工程” 学科诞生。
2014-6-4
系统分析与设计(UML)
13
第 1章
二、软件的特点
软件工程概述
(1)软件是一种逻辑实体。 ( 2 )软件的开发,是人的智力的高度发挥,而不是 传统意义上的硬件制造。 (3)软件维护与硬件的维修有着本质的差别。 ( 4 )软件的开发和运行常常受到计算机系统的限制, 对计算机系统有着不同程度的依赖性。 ( 5 )软件的开发至今尚未完全摆脱手工艺的开发方 式,使软件的开发效率受到很大限制。 (6)软件的开发是一个复杂的过程。 (7)软件的成本非常高昂。
2014-6-4 系统分析与设计(UML) 29
2014-6-4
系统分析与设计(UML)
30
第 1章
软件工程概述
3.喷泉模型:体现了软件创建所固有的 迭代和无间隙的特征。
2014-6-4
系统分析与设计(UML)
31
喷泉模型
迭代
重复 演进
无间隙
各阶段间无明显界限
2014-6-4
系统分析与设计(UML)
授课教师:李成大
计算机工程系
2014-6-4 系统分析与设计(UML) 1
教材:
《面向对象软件工程与UML》
参考资料:
张京等 人民邮电出版社
《数据库原理与CASE技术教程》刘甫迎等 人民邮电出版社
《软件工程导论》张海藩 等 《实用软件工程 》 机械工业出版社
清华大学出版社 清华大学出版社
2014-6-4 系统分析与设计(UML) 20
第 1章
二、软件工程方法学
软件工程概述
通常把在软件生命周期全过程中使用的一整套技 术的集合,称为软件工程方法学。软件工程方法学 包括三个要素:方法、工具和过程。 其中:软件工程方法是完成软件开发的各项任务 的技术方法,为软件开发提供了“如何做”的技术。 软件工具为软件工程方法提供了自动的或半自动的 软件支撑环境。软件工程的过程则是将软件工程的 方法和工具综合起来以达到合理、及时地进行计算 机软件开发的目的。 注:传统方法学和面向对象方法学是目前使用得最广 2014-6-4 21 系统分析与设计(UML) 泛的两种软件工程方法学。
第 1章
1.4
一、软件生存期
软件工程概述
软件生存期和软件开发模型
如同任何其他事物一样,软件也有一个孕育、 诞生、成长、成熟、衰亡的生存过程,一般称之 为计算机软件的生存期。 一般说来,软件生命期由软件定义、软件开 发和软件维护三个时期组成,每个时期又可进一 步划分成若干个阶段。
2014-6-4
系统分析与设计(UML)
22
第 1章
1.软件定义时期
软件工程概述
(1)问题定义:这是软件生存期的第一个阶段, 主要任务是弄清用户要计算机解决的问题是什么。 (2)可行性研究:任务是为前一阶段提出的问 题寻求一种至数种在技术上可行、且在经济上有 较高效益的解决方案。
2014-6-4
系统分析与设计(UML)
23
第 1章
2.软件开发时期
第 1章
软件工程概述
什么是软件 软件的特点 软件的分类 软件的发展和软件危机 软件工程 软件生存期和软件开发模型
系统分析与设计(UML) 12
2014-6-4
第 1章
1.1
一、 软件的概念
软件工程概述
软件的概念、特点和分类
软件是计算机系统中与硬件相互依存的另一部分,它 是包括程序、数据及其相关文档的完整集合。 程序是按事先设计的功能和性能要求编写的指令序列; 数据是使程序能正常操纵信息的数据结构; 文档是与程序开发、维护和使用有关的图文材料。 注:程序并不是软件,程序只是软件的组成部分。
2014-6-4
系统分析与设计(UML)
28
螺旋模型
螺旋模型沿着螺线旋转,在四个象限上 分别表达四个方面的活动,即: 制定计划──确定软件目标,选定实施方 案,弄清项目开发的限制 风险分析──分析所选方案,考虑如何识 别和消除风险 实施工程──实施软件开发 客户评估──评价开发工作,提出修正建 议
郑人杰 等
《软件工程 -实践者的研究方法》 Roger S. Pressman
《面向对象的分析与设计 》苑延闿
参考网址:
2014-6-4
清华大学出版社
软件工程专家网
www.51cmm.com
2
系统分析与设计(UML)
相关知识
具备的相关知识 : 计算机专业的基础知识,掌握程序 设计基础、数据库原理、数据结构、操 作系统等知识;具有一定的编程能力。 用途: 指导软件设计开发——商用软件、 网站(电子商务、电子政务)设计开发 规范; 计算机相关专业毕业设计。
系统分析与设计(UML) 9
2014-6-4
教学内容的组织
项目驱动模式(项目制) 融合了面向对象程序设计、数据 库、.NET/JAVA等多门课程,通过一个实际需 求的项目开发,使学生对项目全过程有一个深 刻的认识,并着重强化软件分析、设计技能;
角色模式(团队合作) 采用团队合作开发模式,所有人员都担任程序 员角色,并且兼任1-2个项目团队其他角色(如: 项目经理、配置经理、需求分析员、设计员、 测试员等)。
本课程与前导课程——“面向对象程序设计”和后续
课程——“项目管理及软件测试”是计算机软件、计算机 信息管理专业最重要的三门专业课程,是培养学生职业 能力最重要的三个环节。在这三者之中,本课程又起到 承上启下的作用,显得更加重要。
2014-6-4 系统分析与设计(UML) 6
课程的主要任务
通过课堂教学和实习指导使学生较全面地了解软件 开发和维护各个阶段的具体工作步骤及使用的技术和方
2014-6-4 系统分析与设计(UML) 24
第 1章
3.软件运行时期
软件工程概述
是软件生存周期的最后一个时期。软件人员 在这一时期的工作,主要是做好软件维护。维 护的目的,是使软件在整个生存周期内保证满 足用户的需求和延长软件的使用寿命。
2014-6-4
系统分析与设计(UML)
25
第 1章
软件工程概述
2014-6-4 系统分析与设计(UML) 14
第 1章
三、软件的分类
软件工程概述
系统软件 应用软件 支撑软件 实时处理软件 分时软件 交互式软件 批处理软件
15
1.基于软件功能的划分
2.基于软件工作方式的划分
2014-6-4
系统分析与设计(UML)
根据规模进行软件分类
软件规模类别 微型 小型 中型 大型 参加人员数 1 1 2~5 5~20 开发期限 1~4周 1~6月 1~2年 2~3年 产品规模(源代码行数) 0.5k 1~2k 5~50k 50~100k
软件危机包含下述两方面的问题:如何开发软 件,以满足对软件日益增长的需求;如何维护数 量不断膨胀的已有软件。
2014-6-4 系统分析与设计(UML) 19
第 1章
一、软件工程的定义
软件工程概述
1.3 软件工程
软件工程是指研究软件生产的一门学科,也就 是将完善的工程原理应用于经济地生产既可靠又 能在实际机器上有效运行的软件。 1983年美国《IEEE软件工程标准术语》对软件 工程下的定义为:软件工程是开发、运行、维护 和修复软件的系统方法,其中“软件”的定义为: 计算机程序、方法、规则、相关的文档资料以及 在计事机上运行时所必需的数据。