1、2.1 可行性研究的基本内容可行性研究的基本内容1.目的目的 可行性研究的目的是用最小的代价在尽可能短可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。的时间内确定问题是否能够解决。第第2章章 软件工程的可行性研究软件工程的可行性研究 可行性研究的目的不是解决问题,而是确定问题可行性研究的目的不是解决问题,而是确定问题 是否值得解决。怎样达到这个目的呢?当然不能靠主是否值得解决。怎样达到这个目的呢?当然不能靠主 观猜想而只能靠客观分析,必须分析几种主要的可能观猜想而只能靠客观分析,必须分析几种主要的可能 解法的利弊,从而判定原定的系统目标和规模是否现解法的利弊,从而判定原定
2、的系统目标和规模是否现 实。系统完成后所能带来的效益是否大到值得投资开实。系统完成后所能带来的效益是否大到值得投资开 发这个系统的程度。因此,发这个系统的程度。因此,可行性研究实质上是要进可行性研究实质上是要进 行一次大大压缩简化了的系统分析和设计的过程。行一次大大压缩简化了的系统分析和设计的过程。也也 就是在较高层次上以较抽象的方式进行系统分析和设就是在较高层次上以较抽象的方式进行系统分析和设 计的过程。计的过程。第第2章章 软件工程的可行性研究软件工程的可行性研究2.可行性研究的任务可行性研究的任务(1)经济可行性经济可行性 这个系统的经济效益能超过它的开发成本吗?这个系统的经济效益能超过
3、它的开发成本吗?(2)技术可行性技术可行性 使用现有的技术能实现这个系统吗?分析技术冒使用现有的技术能实现这个系统吗?分析技术冒险的各种因素,例如有关的技术是否已进步到足以支险的各种因素,例如有关的技术是否已进步到足以支持该系统?能否有胜任开发该系统的熟练技术人员?持该系统?能否有胜任开发该系统的熟练技术人员?为开发项目的所有硬、软件资源是否能按期得到?为开发项目的所有硬、软件资源是否能按期得到?第第2章章 软件工程的可行性研究软件工程的可行性研究(3)操作可行性操作可行性 系统的操作方式在这个用户组织内行得通吗?系统的操作方式在这个用户组织内行得通吗?(4)法律可行性法律可行性 确定由于开发
4、软件项目是否会侵犯他人、集体或国家确定由于开发软件项目是否会侵犯他人、集体或国家的利益,是否会违反国家的法律,并由此承担法律责任。的利益,是否会违反国家的法律,并由此承担法律责任。可行性研究最根本的任务是对以后的行动方针提出建议,可行性研究最根本的任务是对以后的行动方针提出建议,如果问题没有可行的解,分析员应该建议停止这项开发工如果问题没有可行的解,分析员应该建议停止这项开发工程以避免时间、资源、人力和金钱的浪费。如果问题值得程以避免时间、资源、人力和金钱的浪费。如果问题值得解,分析员应该推荐一个较好的解决方案,并未工程制定解,分析员应该推荐一个较好的解决方案,并未工程制定一个初步的计划。一个
5、初步的计划。3.可行性研究需要的时间长短取决于工程的规模。可行性研究需要的时间长短取决于工程的规模。一般说来,可行性研究的成本只是工程总一般说来,可行性研究的成本只是工程总成本的成本的510。3、可行性研究的步骤、可行性研究的步骤(1)复查系统规模和目标复查系统规模和目标 分析员访问关键人员,仔细阅读和分析有关的材分析员访问关键人员,仔细阅读和分析有关的材料,以便改正含糊或不正确的叙述,清晰的描述对目料,以便改正含糊或不正确的叙述,清晰的描述对目标系统的一切限制和约束标系统的一切限制和约束(2)研究目前正在使用的系统研究目前正在使用的系统 新系统必须解决旧系统中存在的问题新系统必须解决旧系统中
6、存在的问题 运行使用旧系统所需要的费用是一个重要经济指运行使用旧系统所需要的费用是一个重要经济指标,如果新系统不能增加收入或减少使用费用,那么标,如果新系统不能增加收入或减少使用费用,那么从经济角度看新系统就不如旧系统。从经济角度看新系统就不如旧系统。注意了解并记录现有系统和其它系统之间接口情注意了解并记录现有系统和其它系统之间接口情 况,这是况,这是设计新系统时的重要约束条件。设计新系统时的重要约束条件。常见的错误做法是花费过多时间去分析现有的系统。常见的错误做法是花费过多时间去分析现有的系统。(3)导出新系统的高层逻辑模型导出新系统的高层逻辑模型 优秀的设计过程通常总是从现有的物理系统出发
7、,导出现优秀的设计过程通常总是从现有的物理系统出发,导出现有系统的逻辑模型(有系统的逻辑模型(数据流图和业务流程图数据流图和业务流程图),在参考现有系),在参考现有系统的逻辑模型,设想目标系统的逻辑模型,最后根据目标系统统的逻辑模型,设想目标系统的逻辑模型,最后根据目标系统的逻辑模型建造新的物理系统。的逻辑模型建造新的物理系统。(4)重新定义问题重新定义问题 新系统的逻辑模型实质上表达了分析员对新系统必须做什么的新系统的逻辑模型实质上表达了分析员对新系统必须做什么的看法,用户是否也有同样的看法呢?分析员应该和用户一起再次复看法,用户是否也有同样的看法呢?分析员应该和用户一起再次复查问题定义、工
8、程规模和目标。查问题定义、工程规模和目标。这次复查应把数据流图和数据字典作为讨论的基础。这次复查应把数据流图和数据字典作为讨论的基础。可行性研究的前四个步骤实质上构成一个循环,分析员定义问可行性研究的前四个步骤实质上构成一个循环,分析员定义问题,分析这个问题,导出一个试探性的解,在此基础上再次定义问题,分析这个问题,导出一个试探性的解,在此基础上再次定义问题,再一次分析这个问题,修改这个解,继续这个循环过程,直到题,再一次分析这个问题,修改这个解,继续这个循环过程,直到提出的逻辑模型完全符合系统目标。提出的逻辑模型完全符合系统目标。(5)导出和评价供选的解法导出和评价供选的解法 导出供选择的解
9、法的最简单的途径,是从技术角导出供选择的解法的最简单的途径,是从技术角度出发考虑解决问题的不同方案。度出发考虑解决问题的不同方案。依次从技术可行性、操作可行性、经济可依次从技术可行性、操作可行性、经济可 行性三行性三个方面考虑。个方面考虑。(6)推荐一个方案并说明理由推荐一个方案并说明理由(7)推荐行动方针推荐行动方针(8)书写文档提交审查书写文档提交审查 请用户和使用部门的负责人仔细审查。请用户和使用部门的负责人仔细审查。软件计划以可行性研究报告为基础,由软件人员和用户共软件计划以可行性研究报告为基础,由软件人员和用户共同确立软件的功能和限制,提出软件计划任务书。同确立软件的功能和限制,提出
10、软件计划任务书。一个典型的软件计划计划书的内容应该包括如下四个方面:一个典型的软件计划计划书的内容应该包括如下四个方面:1、软件范围、软件范围 软件计划的第一个任务是确定软件需求描述,主要包括功软件计划的第一个任务是确定软件需求描述,主要包括功能、性能、可靠性和接口等问题。能、性能、可靠性和接口等问题。2、环境资源、环境资源 包括软件、硬件和人,每种资源均从资源的描述,对资源包括软件、硬件和人,每种资源均从资源的描述,对资源要求的日程表时间以及对资源应用的持续时间三个方面来说明。要求的日程表时间以及对资源应用的持续时间三个方面来说明。制定软件计划制定软件计划3、进度安排进度安排 计划者要协调可
11、用资源与项目的工作量,考虑各项任务之间计划者要协调可用资源与项目的工作量,考虑各项任务之间的互相依赖,而在可能时间时就并行地安排工作,预见潜在的问题的互相依赖,而在可能时间时就并行地安排工作,预见潜在的问题或瓶子口,并提供意外事故处理等。或瓶子口,并提供意外事故处理等。进度安排的主要内容进度安排的主要内容 进进度度安安排排的的主主要要工工作作是是制制定定软软件件进进度度表表,以以明明确确开开发发各各阶阶段段的的任任务和时间安排情况。软件进度表的内容包括:务和时间安排情况。软件进度表的内容包括:软件的任务划分情况;软件的任务划分情况;各任务的起始时间和结束时间;各任务的起始时间和结束时间;各任务
12、的工作量和所需的人数;各任务的工作量和所需的人数;各任务之间的衔接关系;各任务之间的衔接关系;各任务所需的资源情况;各任务所需的资源情况;各任务完成后所应提交的文档;各任务完成后所应提交的文档;对各任务的审查和审查记录等。对各任务的审查和审查记录等。制定软件计划制定软件计划3、进度安排、进度安排 软件进度计划的编制方法软件进度计划的编制方法甘特图法甘特图法 甘特图甘特图(Gantt Chart)又称线条图,是一种对各项活动进行又称线条图,是一种对各项活动进行计划调度与控制的图表,它具有简单、醒目和便于编制等特点。计划调度与控制的图表,它具有简单、醒目和便于编制等特点。一般甘特图的横方向表示时间
13、,纵方向列出工作。一般甘特图的横方向表示时间,纵方向列出工作。甘特图的描述符号和示例如图甘特图的描述符号和示例如图2-4、2-5所示(书)。所示(书)。特点:特点:能够动态反映软件项目开发进展的情况。能够动态反映软件项目开发进展的情况。难以反映多个任务之间存在的复杂的逻辑关系。难以反映多个任务之间存在的复杂的逻辑关系。制定软件计划制定软件计划3、进度安排、进度安排 软件进度计划的编制方法软件进度计划的编制方法网络计划法网络计划法 网网络络计计划划法法是是用用网网状状图图表表安安排排与与控控制制各各项项活活动动的的方方法法,可可通通过过对对网网状状图图的的分分析析,方方便便地地确确定定完完成成整
14、整个个工工程程至至少少需需要要多多少少时时间间,以以及及哪哪些些子子工工程程是是影影响响工工程程进进度度的的关关键键。一一般般适适应应于于工工作作步骤密切相关、错综复杂的工程项目的计划管理。步骤密切相关、错综复杂的工程项目的计划管理。制定软件计划制定软件计划成本效益分析的目的:成本效益分析的目的:是从经济角度分析开发一个特定的新系统是否划是从经济角度分析开发一个特定的新系统是否划算,从而帮助客户组织的负责人正确地做出是否投资于算,从而帮助客户组织的负责人正确地做出是否投资于这项开发工程的决定。这项开发工程的决定。成本成本/效益分析效益分析 1、成本估算技术、成本估算技术 常用的成本估算方法常用
15、的成本估算方法:(1)基于代码行的成本估算方法基于代码行的成本估算方法(2)任务分解成本估算任务分解成本估算(3)经验统计估算模型经验统计估算模型 参数方程参数方程 动态多变量参数模型动态多变量参数模型 COCOMO模模 型型(constructive Cost Model)自动估算工具自动估算工具 成本成本/效益分析效益分析 成本成本/效益分析效益分析 2、成本效益分析的方法成本效益分析的方法 在在估估计计开开发发成成本本的的基基础础上上,对对运运行行费费用用和和新新系系统统将将带带来来的的经经济济效效益益进进行行分分析析。运运行行费费用用取取决决于于系系统统的的操操作作费费用用(操操作作员员人人数数,工工作作时时间间,消消耗耗的的物物资资等等等等)和和维维护护费费用用。系系统统的的经经济济效效益益等等于于因因使使用用新新系统而增加的收入加上使用新系统可以节省的运行费用。系统而增加的收入加上使用新系统可以节省的运行费用。通过比较新系统的开发成本和经济效益,从经济角度判断这个系通过比较新系统的开发成本和经济效益,从经济角度判断这个系统是否值得投资。统是否值得投资。对成本对成本/效益分析考虑的问题有:效益分析考虑的问题有:1、货币的时间价值货币的时间价值 2、投资回收期投资回收期 3、纯收入纯收入 4、投资回收率、投资回收率
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1