上海财经大学信息管理与工程学院系统分析与设计.pptx
- 文档编号:17402547
- 上传时间:2023-07-25
- 格式:PPTX
- 页数:53
- 大小:2.01MB
上海财经大学信息管理与工程学院系统分析与设计.pptx
《上海财经大学信息管理与工程学院系统分析与设计.pptx》由会员分享,可在线阅读,更多相关《上海财经大学信息管理与工程学院系统分析与设计.pptx(53页珍藏版)》请在冰点文库上搜索。
系统分析与设计,系统开发过程FAST开发过程开发路线和方法自动化工具和技术,本讲主要内容,系统开发过程,什么是过程?
一系列有序活动的集合。
什么是系统开发过程?
一组活动、方法、最佳实践、交付成果和自动化工具,系统关联人员用它们开发和维护信息系统及软件。
可以看成是完成系统开发所需要完成的任务框架。
为什么要使用标准开发过程?
信息系统是复杂产品;涉及各种要素和关联人员。
缺乏标准开发过程的系统项目失败率高。
通过使用开发过程能够把复杂问题简单化。
系统开发过程,使用系统开发过程的优点?
提高效率,管理层可以在项目之间调动资源;产生一致的文档,减少维护系统的生命周期费用;改善质量,满足质量管理要求。
能力成熟度模型产生的背景?
为了保证软件产品的质量,80年代中期,美国联邦政府提出对软件承包商的软件开发能力进行评估的要求。
1987年9月,美国卡内基-梅隆大学软件工程研究所(CMU/SEI)发布了软件过程成熟度框架,并提供了软件过程评估和软件能力评估两种评估方法和软件成熟度提问单。
1991年,SEI将软件过程成熟度框架进化为软件能力成熟度模型(CapabilityMaturityModelForSoftware,简称SW-CMM)。
1991年8月,SEI发布了最早的SW-CMMv1.0。
经过两年的试用,1993年SEI正式发布了SW-CMMv1.1,这是目前使用最为广泛的版本。
目前,CMM认证已经成为世界公认的软件产品进入国际市场的通行证。
系统开发过程,能力成熟度模型的基本出发点?
软件产品质量很大程度上取决于软件开发和维护过程的质量。
软件过程是人员密集和设计密集型的作业过程,从业人员如果缺乏严格训练,难以建立成功改进软件过程的基础。
CMM框架勾画了从无定规的混沌过程向训练有素的成熟过程的演进途径。
软件能力成熟度模型基于众多软件专家的实践经验,是组织进行软件过程改善和软件过程评估的一个有效的指导框架。
系统开发过程,CMM的主要作用?
用于帮助事先确定承包商的软件能力;用于软件组织的过程改进。
思考:
软件能力评估与软件过程评估的区别?
CMM涵盖的主要内容?
CMM1.1版包括两个部分:
软件能力成熟度模型:
描述模型的结构,并给出该模型的基本构件的定义。
能力成熟度模型的过程目标:
详述每个“关键过程域”涉及的“过程目标”。
系统开发过程,CMM模型,系统开发过程,第1级初始级:
系统开发项目没有规定的过程可以遵循开发成败主要取决于项目团队的经验和技能项目开发过程不可预测、不可重复项目之间的文档不一致第2级可重复级:
建立项目管理过程和实践跟踪项目成本、进度、功能组织采用开发过程,但项目与项目之间的开发过程可能不同开发成败仍主要取决于项目团队的经验和技能.可以重复早期项目的成功经验,系统开发过程,第3级已定义级:
标准化系统开发过程(有时称为“方法学”)所有项目都使用这个过程的裁减版本来开发和维护系统或软件每个项目都产生一致且高质量的文档和交付成果开发过程稳定、可预测、可重复第4级已管理级:
建立可度量的质量和生产率目标标准系统开发过程和产品质量的度量数据存在数据库里,并根据数据提高项目管理水平管理层主动而不是被动应对系统开发问题系统遇到不可预期问题时,开发过程仍可以根据对问题的影响的预测和度量进行调整,系统开发过程,第5级优化级:
根据4级建立的度量和数据分析,对标准化过程进行持续监督和改进。
调整开发过程中的技术和最佳实践,包括调整开发过程本身。
经验教训在组织内共享,保证质量,并消除低效率。
注意,每个等级都是下一等级的先决条件。
思考:
成熟度分级的优点是什么?
系统开发过程,CMM的过程目标关键过程域一组关联活动,通过执行这些活动可以实现既定的过程能力。
过程目标是使关键过程方面得以有效实现和制度化的基础设施和活动。
各过程目标按照每个关键过程域的5个公共特性归类,逐一详细描述。
达到某等级的衡量标准是什么?
达到某个关键过程的全部过程目标就认为实现了该关键过程,实现了某成熟度及其低于各级所含的全部关键过程,就认为达到了该级。
系统开发过程,能力成熟度模型的结构,系统开发过程,系统开发过程,含121个过程目标,增含108个过程目标,增含32个过程目标,增含59个过程目标,关键过程域有哪些公共特性?
实施保证(执行承诺)为了建立实施相应KPA必须采取的活动。
包括制定企业范围内的政策和高层管理者的责任。
实施能力实施KPA的前提条件,满足条件后才可能实施。
实施能力主要包括资源保证、人员培训等。
执行活动描述执行KPA所要求的必要角色和步骤。
包括任务计划、执行、执行情况跟踪等。
度量分析描述过程的度量与分析要求,确定执行活动的状态和有效性实施验证(评审与审计)验证执行活动是否与建立的过程一致。
涉及管理评审、审计、质量保证活动。
执行活动是唯一与项目执行相关的属性。
其余四项属性涉及到软件CMM能力基础设施的建立。
系统开发过程,e.g.实施保证(执行承诺)实施能力执行活动度量分析.实施验证(评审与审计).,系统开发过程,实施CMM的效果?
资料来源:
MasterSystems公司,系统开发过程,思考:
实施CMM存在哪些问题和障碍?
系统开发过程,系统生命周期,系统开发方法,什么是系统开发方法?
是一个十分正式且精确的系统开发过程。
为系统开发人员和项目经理定义了一组活动、方法、最佳实践、交付成果和自动化工具。
用来开发和维护大部分或者所有的信息系统和软件。
使用系统开发方法的优点?
提供一个一致而且可再生的方法应用于所有项目。
降低了错误风险。
为各项目产生完整且一致的文档。
所有用户都使用同样过程,可以在项目间灵活分配系统人员。
虽然开发团队和成员不断变化,但后者可以方便获得和理解以前的工作。
系统开发方法,系统开发有哪些基本原理?
让用户参与使用一套问题解决步骤确立开发阶段和开发活动在开发过程中记录文档建立标准管理过程和项目将信息系统作为重要投资不害怕取消和返工分而治之设计系统时考虑到增长和变化,系统开发方法,FAST项目确定项目阶段跨生命周期活动,系统开发方法,项目如何确定?
项目的推动力解决问题利用机会执行指示PIECES框架性能Performance信息Information经济Economics控制Control效率Efficiency服务Service项目指导委员会的作用?
项目指导委员会是由系统所有者和IT经理组成的管理机构。
主要职责是给候选的系统开发项目排序,并批准相应项目。
系统开发方法,FAST方法的经典项目阶段?
范围定义阶段问题分析阶段需求分析阶段逻辑设计阶段决策分析阶段物理设计和集成阶段构造和测试阶段安装和发布阶段,系统开发方法,系统开发方法,有哪些跨生命周期的项目活动?
调查研究(信息收集和数据收集)记录文档和演示汇报可行性分析项目管理和过程管理,系统开发方法,系统开发方法学和策略分类,系统开发方法,开发路线,有哪些主要的开发路线?
模型驱动开发路线快速应用开发路线商用应用软件包开发路线混合开发路线,开发路线,模型驱动开发路线,模型驱动开发路线优点:
需求分析更全面更好地文档化更容易确定、概念化和分析多种技术方案系统设计更合理、稳定、适应性使用全面规格说明,容易正确地构造系统模型驱动开发路线缺点:
项目持续时间长,需要时间收集事实、绘制和验证模型模型能达到的需求理解程度最多和用户理解程度一样降低用户在项目中的主动参与不够灵活,用户在设计之前必须完全说明需求,设计必须完全记录下技术说明才能构造,开发路线,模型驱动开发技术?
过程建模流程图结构图数据建模实体关系图数据库设计对象建模对象,开发路线,开发路线,快速应用开发路线RAD,RAD基本思想:
让用户主动参与到分析、设计和构造活动中让系统开发组成重点突出的研讨会,让所有关联人员一同参与通过一种迭代的构造方法加速需求分析与设计阶段提前用户看到工作系统的时间什么是原型?
小规模、有代表性的或者可工作的模型,这个模型反映了信息系统的用户需求或者建议设计。
任何原型都可能忽略某些功能和特征,直到原型最终完全进化成需求的可接受实现模型为止。
开发路线,时间盒在一段不能延长的时间内(通常60-90天),系统的某个版本必须在这个时间段内投入运行。
优点:
有规律向用户和管理层发布运行系统,提高和保持管理者和用户对项目的热情,因为系统工作版本按照有规律的模式进行发布。
开发路线,RAD优点:
适用于用户需求不确定不明确的项目鼓励用户和管理层主动参与项目具有较高可视性和支持程度用户和管理层看到可工作的方案更快些错误和遗漏更早发现测试和培训是原型法的自然副产品迭代方法更自然,因为变化是必然的RAD缺点:
可能增加运行、支持和维护费用省略问题分析阶段RAD可能不鼓励分析员考虑其他更有价值的技术方案对速度的重视可能会破坏质量抛弃原型可能被视为产品的时间和精力的损失,开发路线,建议申报书Requestforproposal(RFP)与软件供应商交流业务、技术和支持需求的正式文档,这些软件供应商希望竞争销售应用软件包和服务。
报价申报书Requestforquotation(RFQ)与单个软件供应商交流业务、技术和支持需求的正式文档,该软件供应商已经被选中提供应用软件包和服务。
差距分析Gapanalysis将商用软件包的业务和技术需求与特定商用软件包的功能特征比较,以定义不能够满足的需求。
开发路线,商用软件包路线优点更快实现系统将开发费用平摊到客户软件供应商负责对软件进行改进和修改利用同行业的相似性,减少重复开发商用软件包路线缺点形成对供应商的依赖购买系统很少能反映理想方案改善业务过程以适应软件会遇到阻力,开发路线,商用软件包开发路线,开发路线,混合开发路线,开发路线,假设我们要开发一个某大学的人事管理系统,该大学的组织结构如下:
该大学有10个学院,以及学生处、教务处等机构;每个学院有4个年级的本科生,每个年级有10个班,每个班级有30个左右的本科生。
其中牵涉到的范围有上万名学生的学籍管理,上千名教职工的教务、科研管理等工作。
开发时间要求一年左右。
你打算采用哪种软件生命周期模型?
为什么?
课堂讨论,假定你被任命为一家软件公司的项目负责人,你的工作是管理该公司已经被广泛使用的字处理软件的新版本开发。
由于市场竞争激烈,公司规定了严格的完成期限并已经对外公布。
你打算采用哪种软件生命周期模型?
为什么?
课堂讨论,自动化工具和技术,计算机辅助系统工程应用开发环境过程和项目管理器,Computer-aidedsystemsengineering(CASE)使用支持系统模型的绘图和分析的自动化工具。
有些CASE工具提供原型和代码产生能力。
CASE资料库(CASErepository)系统开发人员的数据库,存储系统模型、详细描述和说明、以及系统其他开发产品的地方。
也称字典或者百科全书。
ForwardengineeringCASE工具的一种能力,能够直接从系统模型生成初始的软件或者数据库代码。
ReverseengineeringCASE工具的一种能力,能够直接从软件或者数据库代码生成初始的系统模型。
自动化工具和技术,自动化工具和技术,CASE工具包括:
作图工具字典工具设计工具质量管理工具文档记录工具设计和代码生成工具,自动化工具和技术,自动化工具和技术,传统的系统开发与基于CASE的开发传统的系统开发基于CASE的开发强调编码和测试强调分析和设计基于书面的规范快速交互的原型技术人工编码自动化的编码生成手工文档自动化的文档生成密集的软件测试自动化的设计检测维护代码和文档维护设计规范,自动化工具和技术,CASE工具分类:
需求分析工具:
国产系列playCASE;国外系列Bpwin;RationalRose软件设计工具:
MicrosoftVisio;PowerDesigner;RationalRose数据库设计工具:
数据库设计工具:
Erwin;ER/Studio数据库开发工具:
Oracle/Form,Oracle/Developer;ObjectBrowserforOracle,自动化工具和技术,CASE工具分类:
项目管理工具:
项目管理工具:
MicrosoftProject配置管理工具:
VisualSourceSafe;WinCVS;RationalClearCase程序设计工具:
MS系列:
VisualStudio.NET;Borland系列:
Jbuilder;c+Builder;Delphi;其他PowerBuilder,Macromedia系列测试工具:
自动化系列:
Panorama;非自动化系列SoftIce;Junit,自动化工具和技术,应用开发环境(ADEs)集成化的软件开发工具,提供了以最快速度和最高质量开发新系统程序所需要的全部工具。
也称集成开发环境(IDE)ADE包含哪些工具?
程序语言或者解释器界面构造工具中间件测试工具版本控制工具帮助文件著作工具资料库链接,自动化工具和技术,某大型电气公司ERP会计系统功能:
分散型处理系统,作为会计系统的一部分,其主要功能是进行各种凭证的生成和输出。
开发环境:
OracleDeveloper/2000,SQLOS:
WindowsNT4.0J/95J资产管理系统OS:
Windows98开发环境:
Excel2000,Access2000,VB6.0J功能:
是在财务部门进行物品,财产管理时用来做成台帐及结算资料等的程序系统。
大型电子商务平台功能:
为国际间企业建立会员制的大型电子商务平台。
具备会员管理、网上订购、接受订单、企业检索、网上商业谈判、以及市场、生产、在库信息的互动和信用、决算、交易服务的一系列功能,并具备多国间的语言自动翻译等功能。
开发环境:
IBMWebSphere3.5、DB2、J2EE、EJB某大型电话公司手机上网WEB系统功能:
可用手机上相应WEB网站,具有网站点性功能。
OS:
Linux,开发环境:
PHP4.0,自动化工具和技术,过程管理软件Processmanagerapplication自动化工具,帮助记录文档并管理方法学和路线及其交付成果和质量管理标准。
也称methodware.项目管理软件Projectmanagerapplication自动化工具,帮助规划系统开发活动、古迹和分派资源(人力和经费)、调动活动和资源、按照进度和预算监控进展、控制和修改进度资源、以及报告项目进展。
自动化工具和技术,案例讨论,第3章案例讨论:
为什么要按照一套规定的方法构造信息系统?
FAST与普通开发方法的区别?
购买信息系统同内部构造系统相比,好处是什么?
为什么要对不同的项目调整方法与策略?
Gary和Sandra的角色有何不同?
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 上海财经大学 信息管理 工程学院 系统分析 设计
![提示](https://static.bingdoc.com/images/bang_tan.gif)