客户管理

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

《软件工程》学习情境一:客户管理葛文庚客户管理主要内容一软件的生存周期二软件开发模型三可行性分析四可行性分析文档一软件生存周期软件生存周期(SoftwareDevelopmentLifeCycle,SDLC)又名软件生命周期软件生存周期可划分为定义、开发和运行三个时期,每个时期又可以划分若干阶段。软件生存周期通常包括可行性分析、需求分析、软件设计、软件实现、软件测试、运行与维护软件生存周期阶段任务及说明参与者输出可行性分析对项目的技术,功能需求和市场进行调研和初步分析,确定是否需要启动项目项目经理核心技术人员可行性分析报告需求分析对项目详细需求分析,编写需求文档,对B/S结构的系统应制作静态演示页面。系统分析师需求分析师网页设计师需求分析说明书软件设计根据需求分析进行概要设计。包括程序系统流程、组织结构、模块划分、功能分配、接口设计。运行设计、数据结构设计和出错处理设计等。系统架构师数据库设计师软件设计师设计说明书编码实现根据设计开发项目,同时有美工对操作界面进行美化软件工程师程序员项目规范软件测试项目小组配合测试部门修改软件中的错误软件测试师测试计划测试报告运行维护项目验收实施实施工程师项目所有文档和程序软考类别级别资格名称考试科目高级信息系统项目管理师综合知识案例分析论文系统分析师中级软件设计师基础知识应用技术网络工程师信息系统监理师信息系统管理工程师数据库系统工程师初级程序员网络管理员全国计算机技术与软件专业技术资格(水平)考试二软件开发模型软件生存周期模型是软件工程思想的具体化,是跨越软件生存周期的系统开发、运行、维护所实施的全部活动和任务的过程框架。常用的软件生存周期模型有瀑布模型,演化模型,螺旋模型,增量模型,喷泉模型,快速应用开发(RAD)模型。1瀑布模型瀑布模型(waterfallmodel)将生存期的计划时期、开发时期和运行时期。计划时期可分为问题定义、可行性研究、需求分析3个阶段开发时期分为概要设计、详细设计、软件实现、软件测试等阶段运行时期则需要不断进行运行维护,需要不断修改错误、排除故障,或以用户需求、运行环境改变进行改更调整。1瀑布模型图1瀑布模型图中的实线箭头表示开发流程,每个阶段顺序进行,有时会返工;虚线箭头表示维护工作的流程,根据不同情况返回到不同的阶段进行维护。瀑布模型利用瀑布模型开发软件有3个特点:(1)开发过程的顺序性。瀑布模型开发适用于软件需求明确,开发技术成熟,工程管理较严格的场合下使用。(2)统筹兼顾不过早编程。在编码前安排分析和设计阶段,只考虑逻辑模型,不涉及物理实现。(3)严格要求保证质量。每个阶段必须完成规定的文档,并进行审核,尽早发现问题,消除隐患。2原型模型原型模型需要先建造一个快速原型。如操作窗口及界面等,进行客户或潜在用户与系统间的交流,用户/客户可以通过对原型的评价及改进意见,进一步细化待开发软件的需求,通过逐步调整原型达到客户要求,从中确定客户的具体需求;然后按照需求开发软件。如图所示。此模型最适合于可以先尽快构建成一个原型的应用系统。2原型模型3增量模型利用增量模型开发的软件被作为一系列的增量构件来进行设计、实现集成和测试,每个构件具有一定功能,并最终能组合成一个具有完整功能软件的模块。如图所示。软件开发模型选取最常用的是瀑布模型和原型模型,其次是增量模型各种模型各有其特点和优缺点。选择模型时需要综合考虑以下6点:(1)符合软件本身的性质,包括规模、复杂性等;(2)满足软件应用系统整体开发进度要求;(3)尽可能控制并消除软件开发风险;(4)具有计算机辅助工具快速的支持,如快速原型工具;(5)与用户和软件开发人员的知识和技能匹配;(6)有利于软件开发的管理与控制。在实际软件开发过程中,开发模型的选定并非直接照抄照搬、一成不变,有时还需要根据实际开发目标要求进行裁剪、修改、确定和综合运用。三可行性分析可行性分析是要决定项目“做还是不做”。分析什么?怎样分析??工作流程开始问题定义可行性研究可行否?项目实施计划终止项目的建议结束YN1问题定义问题定义是指在初步调研的基础上,逐步搞清拟研发软件开发的具体问题。用户根据实际需要粗略地描述其基本意向,而对软件的具体目标、问题范围、功能性能、规模和环境等方面表述不一定很准确,因此,对用户提出的开发问题,还需要从专业技术方面进行更深层次的细致调研、分析和定义。调研内容1.软件名称软件名称准确描述软件问题的内涵、主要用途及规模的项目名称,与所开发的项目内容相一致。2.项目提出的背景软件所服务的行业属性、主要业务及特征、目前存在的主要问题、需要改进的具体方面及要求、本项目开发所能够带来的经济/社会效益和前景。3.软件目标软件目标是指软件项目所要达到的最终目的指标和具体结果,具有可度量性和预测性。4.软件类型项目性质用于描述软件的主要特性,为此还要确定软件的应用特性,如通用软件或专用软件。5.软件服务范围确定软件所服务行业及领域的界限,本软件服务的领域用户对象、及应用范畴,主要从总体上确定软件的具体应用领域和服务范畴。6.基本需求明确软件问题定义的主要内容,包括整体需求、功能需求、性能需求和时限要求等。7.软件环境软件环境包括服务领域、运行环境和外部系统等方面。8.主要技术开发软件所需要的主要技术,以及关键技术路线。主要包括分析、建模、设计、编程、测试、集成、切换等相关的软件开发技术,以及软件管理与维护技术、软件度量技术、软件支撑技术等。9.基础条件软件开发的基础条件包括:软件的业务基础、技术基础和支撑基础等。问题定义调研内容正泰集团管理系统软件名称正泰集团进销存管理系统项目提出背景产品种类多、客户多、业务复杂软件目标进销存规范化、提供效率软件类型应用软件软件服务范围进销存基本需求采购、销售、财会、客户软件环境Sql2005、tomcat6.0主要技术数据库技术、后台技术、前台技术基础条件团队、公司代表2可行性分析不是解决问题,而是确定问题是否可解,是否值得去解,一般可行性分析的成本只占预期工程成本的5%-8%。-技术上:咱们有能力吗?-经济上:能赚钱吗?-操作上:用户愿意这么用吗?-法律上:开发、使用该系统不违法吧?-社会上:社会需要这个系统吗?-......技术可行性技术可行性分析至少要考虑以下几方面因素:(1)在给定的时间内能否实现需求说明中的功能。(2)软件的质量如何?有些应用对实时性要求很高,如果软件运行慢如蜗牛,即便功能具备也毫无实用价值。(3)软件的生产率如何?如果生产率低下,能赚到的钱就少,并且会逐渐丧失竞争力。技术可行性分析可以简单地表述为:做得了吗?做得好吗?做得快吗?经济可行性经济可行性分析主要包括:“成本——收益”分析和“短期——长远利益”分析。(1)成本——收益如果是为客户做软件项目,收益就写在合同中。如果是做自己的软件产品,收益就是销售额。要考虑的成本有:办公室房租、办公用品等。(2)短期——长远利益短期利益和长远利益兼得是人们梦寐以求的事。在商业上,这等好事可不会轻易降临。短期利益容易把握,风险较低。长远利益难以把握,风险较大。社会可行性社会可行性至少包括两种因素:市场与政策。市场分为未成熟的市场、成熟的市场和将消亡的市场。涉足未成熟的市场要冒很大的风险,能准确地估计市场有多大?自己能占多少份额?多长时间能实现?挤进成熟的市场,风险不高,油水也不多。如果软件开发公司多,项目少,在竞标时会出现恶性杀价。将要消亡的市场就别进去了。尽管很多程序员怀念DOS时代编程,可现在没人要DOS应用软件了。政策对软件公司的生存与发展影响非常大。政策不当将阻碍软件公司的健康发展,可最怕的还是政府干预企业的正当行为。运行可行性新软件运行可行性分析包括5个方面:(1)原业务与新系统流程的相近程度和差异。(2)业务处理的专业化程度,功能、性能、安全性、可靠性及接口等。(3)对用户操作方式及具体使用要求。(4)新软件界面的友好程度及操作的便捷程度。(5)用户的具体实际应用能力及存在的问题等。可行性分析的结论,概括起来有3种情况:(1)可行。“可行”结论表明可以按初步方案和计划进行立项并开发。(2)基本可行。对软件项目内容或方案进行必要修改后,可以进行开发。(3)不可行。软件项目不能进行立项或确定项目终止。案例分析我从本科三年级开始编写图形程序。1997年春季,我到了向往已久的浙江大学CAD&CG国家重点实验室读博士学位。1997年8月,我去北京参加首届中国大学生电脑大赛软件展示。路费也是借的,同学为我壮胆时说:“如果不能获奖,就回到实验室干活吧。”于是我拿了第一名,号称大学生“软件明星”。我选择了一位年龄比我大一倍、非常精明的商人作合伙人,10月成立了“杭州临境软件开发有限公司”。彼时,我可谓光芒四射,卓而不群,名片上印着“以振兴民族软件产业为已任,做真实、正直、优秀的科技人员。”我当时想开发一套名为Soft3D的图形系统,此系统下至开发工具,上至应用软件,无所不包。我从实验室挖来一位聪明绝顶的师弟做技术伙伴。一想到Microsoft公司的二维Windows系统即将被Soft3D打击得狼狈不堪时,我们就乐不可支,冲劲十足。到了1998年7月份,我们做了一套既不是科研又不全象商品的软件,我宣传了几个月都没有人要。1998年10月份,我用光了30万元资金,只好关闭公司。上海漫索计算机科技有限公司林锐可行性分析工具当我们在进行可行性研究时需要了解和分析现有的系统,而系统流程图就是以图的形式表达对现有系统的认识;而且它能很清楚地表达信息在系统各部件之间流动的情况。系统流程图:SystemFlowDiagram,描绘物理系统反映信息在各部分间流动情况不等于控制信息,不是程序流程图基本符号流程符号含义流程符号含义数据加工符号换页连接输入/输出符号磁带符号连接点符号文档符号人工操作多文档符号显示器或终端机数据流符号磁盘机或数据库流程开始与结束案例分析正泰集团仓库中现有许多种元器件及其数量等项数据。需要加工的数据是每当仓库中的元器件数量发生变化时,就应该及时修改库存清单,如果那种元器件的库存量少于它的库存临界值,则应该报告个采购部门以便定货,规定每天向采购部门送一次定货报告。库存清单程序订货报告事务订货信息结束报告生成程序库存清单项目计划在可行性分析之后,项目计划与质量管理将贯穿需求分析、系统设计、程序设计、测试、维护等软件工程环节。项目计划是要提供一份合理的进程表,让所有开发人员任务明确、步调一致,最终共同准时地完成项目。项目计划是要付诸实施的,不象用嘴巴喊政治口号,可以很夸张。软件的项目计划重在“准确”而非“快速”。一、把握资源:项目的资源分为三类:“人”、“可复用的软构件”和“软硬件环境”。二、进度安排:(1)制定进度表的人最好就是项目负责人,他最了解项目和开发人员。(2)进度安排并不见得一定要符合逻辑顺序。应尽可能地先做技术难度高的事,后做难度低的事。四可行性分析文档1引言2引用文件3可行性分析的前提4可选的方案5所建议的系统6经济可行性(成本----效益分析)7技术可行性(技术风险评价)8法律可行性9运行可行性小结软件开发方法学是编制软件的系统方法,它确定软件开发的各个阶段,规定每一阶段的活动、产品、验收的步骤和完成准则。常用的软件开发方法有结构化方法、面向数据结构方法和面向对象方法等。可行性分析不是决定系统如何做,而是确定项目是否可行。思考1.软件的什么周期是什么?2.过程模型有哪些?哪一个适合你的项目开发?3.可行性分析的主要内容是什么?实验二1每个同学选择一个熟悉的项目2回顾可行性分析主要内容3完成可行性分析文档可以选择的项目实验教学管理系统图书管理系统医药销售系统学生选课系统人事档案系统服装销售系统其他系统

1 / 38
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功