1.对用户所提出的软件系统进行可行性分析 系统可行性分析报告 - 电脑|办公 - 电脑办公-杀毒安全-网络-V3学习网
微商网
 
 
导航:首页 |电脑|办公|正文

1.对用户所提出的软件系统进行可行性分析 系统可行性分析报告

时间:2021-03-31 08:42:05
如何对软件项目进行可行性分析 可行性分析与需求分析可行性分析是要决定“做还是不做”。需求分析是要决定“做什么,不做什么”。即使可行性分析是客观的、科学的,但决策仍有可能是错误的。因为决策者是人,人会冲
作者:

1.对用户所提出的软件系统进行可行性分析

如何对软件项目进行可行性分析

可行性分析与需求分析可行性分析是要决定“做还是不做”。

需求分析是要决定“做什么,不做什么”。

即使可行性分析是客观的、科学的,但决策仍有可能是错误的。

因为决策者是人,人会冲动,有赌博心态。

如果可行性分析表明做某件事的成功率是10%,失败率是90%,倘若该事情的意义非常大,决策者也许会一拍脑袋:“豁出去,干!”于是这世界就多了一份极喜与极悲。

4.1节讲述可行性分析的四大要素:经济、技术、社会环境和人。

目前国内很多软件公司做系统集成项目,如果谈谈系统集成项目的可行性分析将很有意思。

可是那些系统集成项目大多是政府机构的,由于软件行业尚不规范并且客户方存在腐败现象,所以业内流传“没有做不了的系统集成项目”

谈一谈对软件工程专业的认识

软件工程涉及的资源有:人力、资金、时间的合理分配,涉及到文化与管理等,及各种规划化。

软件开发是一个把用户需要转化为软件需求,把软件需求转化为软件设计,用软件代码来实现软件设计,对软件代码进行测试,并签署确认它可以投入运行使用的过程。

在这个过程中的每一阶段,都包含有相应的文档编制工作。

软件开发过程当中,遵循一定的流程,主要包括系统分析、系统设计、系统编码、系统测试以及系统的维护等几个阶段。

依次概述如下: 1、系统分析 系统分析包括软件需求分析和系统可行性分析。

软件需求分析就是回答做什么的问题。

它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。

系统可行性分析就是通过需求调查来确定此系统是否具有可行性。

2、系统设计 系统设计可以分为概要设计和详细设计两个阶段。

实际上软件设计的主要任务就是将软件分解成模块。

概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。

详细设计的首要任务就是设计模块的程序流程、算法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。

3、系统编码 系统编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的"源程序清单"。

4、系统测试 系统测试的目的不是验证软件的正确性,而是以较小的代价发现尽可能多的错误。

测试从需求阶段开始,此后与整个开发过程并行,换句话说,伴随着开发过程的每一个阶段,都有一个重要的测试活动,它是预期内按时交付高质量的软件的保证。

5、系统维护 系统维护是指在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对软件产品所进行的一些软件工程的活动。

即根据软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠正运行中发现的错误。

编写软件问题报告、软件修改报告。

在实际开发过程中,软件开发并不是从第一步进行到最后一步,而是在任何阶段,在进入下一阶段前一般都有一步或几步的回溯。

在测试过程中的问题可能要求修改设计,用户可能会提出一些需要来修改需求说明书等。

总的说来,软件开发是一个环环相扣的设计和实施过程,整个系统开发的过程当中,系统分析和设计是重中之重。

只有把握好系统分析,才能使后续改动尽可能多的减少;只有把握好系统设计,才能保证软件的根基比较稳固。

也即是它们很大程度上决定着软件开发的周期以及寿命。

另外,完美的开发团队和开发过程的合理控制是软件成功开发关键要素之一。

>> 软件工程 过去几十年,软件技术经历了一系列重要的变化和发展,构成软件的软件实体的粒度不断增大,软件基本模型越来越符合人类的思维模式;软件运行平台的能力不断增强,越来越多地屏蔽掉计算机底层的复杂性;软件支撑平台的能力不断增强,越来越多地屏蔽了软件开发过程的复杂性;软件技术的应用范围不断扩大,越来越广地渗透到人类生活的各个方面。

网络技术的发展日新月异,基于新一代网络技术的各种应用的融合是大势所趋。

网络新技术与软件新技术的相互促进必将为人类创造一个更为灿烂多彩的IT世界。

这世上同时存在着两种对立的声音:本质决定成败和细节决定成败。

偏好本质的人喜欢说本质论。

偏好细节的人则喜欢说精细化管理。

但如果在较长的时间轴上考量这两种观点,就会发现他们之间并不真的对立。

----------------------------程序员几个发展方向: 走向管理:有两种原因会使部分程序员走上管理的道路,一是与生俱来的对 权力的欲望;一是在程序员的岗位上对自我价值重新认知。

对于前者如果欲望过去强烈就会急功进利,很容易走捷径,会出现不能服众的情况。

对于后者自我价值的重新认知是一个缓慢的过程,一个程序员在长期的开发过程中会慢慢发现一个人的力量是有限的,做一件事情必须要借助其他人的帮助,如果需要别人的帮助就必须能影响他人。

从而认识到一个人的价值对公司来说几乎是不值一文,如果想让自己的价值得到提升必须要影响到他人,借助他人的力量使自己的价值得到最大提升。

走向行业:即成为某个行业的行业专家。

一般来说走这个方面需要机遇,需 要长时间的从事某一个领域的开发与管理工作,对某个行业无论是大局还是细节都了如指掌。

走向专业:即成为架构师。

一般来说这些人对开发有狂热的兴趣,逐渐的从代码的编写中认识到设计与软件架构的重要性,并对软件设计乐此不疲。

自已干:这些人是野心家,也是风险最大的一条路。

好多程序员都认为软件开发不需要什么成本,只要能接到单子完全可以自己干,自己当老板。

然而很少了解只有长期持续的订单才是一个企业不断稳定发展的最重要因素。

------------------------------程序员具备:恒心、耐心、细心 兴趣决定一切:当一个人把自己的职业仅当成谋生的手段时,那他的人生将会失去很多乐趣。

如果你不喜欢软件开发,那最好离开这个职业,没有兴趣只会让你一事无成。

自我学习:做程序员就是这样,走上了一条永无止境的学习之路,不学习新知就会...

怎样做软件的需求分析?

软件需求的定义:(1)用户解决问题或达到目标所需的条件或能力。

(2)系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或能力。

(3)一种反映上面(1)或(2)所描述的条件或权能的文档说明。

实通俗的讲,“需求”就是用户的需要,它包括用户要解决的问题、达到的目标、以及实现这些目标所需要的条件,它是一个程序或系统开发工作的说明,表现形式一般为文档形式。

需求工程的定义:需求分析的过程,也叫做需求工程和需求阶段,它包括了需求开发和需求管理两个部分。

需求开发是指从情况收集、分析和评价到编写文档、评审等一系列产生需求的活动,分为四个阶段:情况获取、分析、制订规格说明和评审。

这四个阶段不一定是遵循线性顺序的,他们的活动是相互独立和反复的。

需求管理是软件项目开发过程中控制和维持需求约定的活动,它包括:变更控制、版本控制、需求跟踪、需求状态跟踪等工作。

需求开发与管理的一些方法:(1)绘制关联图:绘制系统关联图是用于定义系统与系统外部实体间的界限和接口的简单模型。

(2)可行性分析:在允许的成本、性能要求下,分析每项需求实施的可行性,提出需求实现相关风险,包括与其它需求的冲突,对外界因素的依赖和技术障碍。

(4)系统原型:当用户自身对有的需求不十分清楚时,我们可以建立一个系统原型,用户通过评价原型更好地理解所要解决的问题。

(5)图形分析模型:绘制图形分析模型是编制软件需求规格说明重要手段。

它们能帮助分析人员理清数据、业务模式、工作流程以及他们之间的关系,找出遗漏、冗余和不一致的需求。

这样的模型包括数据流图、实体关系图、状态变换图、对话框图、对象类及交互作用图。

(6)数据字典:数据字典是对系统用到的所有数据项和结构的定义,以确保开发人员使用统一的数据定义。

在需求阶段,数据字典至少应定义客户数据项,确保客户与开发小组是使用一致的定义和术语。

需求管理的方法主要包括以下一些方面:1)确定需求变更控制过程。

制定一个选择、分析和决策需求变更的过程,所有的需求变更都需遵循此过程。

2)进行需求变更影响分析。

评估每项需求变更,以确定它对项目计划安排和其它需求的影响,明确与变更相关的任务并评估完成这些任务需要的工作量。

通过这些分析将有助于需求变更控制部门做出更好的决策。

3)建立需求基准版本和需求控制版本文档。

确定需求基准,这是项目各方对需求达成一致认识时刻的一个快照,之后的需求变更遵循变更控制过程即可。

每个版本的需求规格说明都必须是独立说明,以避免将底稿和基准或新旧版本相混淆。

4)维护需求变更的历史记录。

将需求变更情况写成文档,记录变更日期、原因、负责人、版本号等内容,及时通知到项目开发所涉及的人员。

为了尽量减少困惑、冲突、误传,应指定专人来负责更新需求。

5)跟踪每项需求的状态。

可以把每一项需求的状态属性(如已推荐的,已通过的,已实施的,或已验证的)保存在数据库中,这样可以在任何时候得到每个状态类的需求数量。

6)衡量需求稳定性。

可以定期把需求数量和需求变更(添加、修改、删除)数量进行比较。

过多的需求变更"是一个报警信号",意味着问题并未真正弄清楚。

4.需求分析评价标准(1)清晰:目前大多数的需求分析采用的仍然是自然语言,自然语言对需求分析最大的弊病就是它的二义性,所以开发人员需要对需求分析中采用的语言做某些限制。

例如尽量采用主语+动作的简单表达方式。

需求分析中的描述一定要简单,千万不要采用疑问句、修饰这些复杂的表达方式。

除了语言的二义性之外,注意不要使用行话,就是计算机术语。

需求分析最重要的是和用户沟通,可是用户多半不是计算机的专业人士,如果在需求分析中使用了行话,就会造成用户理解上的困难。

(2)完整:需求的完整性是非常重要的,如果有遗漏需求,则不得不返工,在软件开发过程中,最糟糕的事情莫过于在软件开发接近完成时发现遗漏了一项需求。

但实际情况是,需求的遗漏是常发生的事情,这不仅仅是开发人员的问题,更多发生在用户那里。

要做到需求的完整性是很艰难的一件事情,它涉及到需求分析过程的各个方面,贯穿整个过程,从最初的需求计划制定到最后的需求评审。

(3)一致:一致性是指用户需求必须和业务需求一致,功能需求必须和用户需求一致。

在需求过程中,开发人员需要把一致性关系进行细化,比如用户需求不能超出预前指定的范围。

严格的遵守不同层次间的一致性关系,就可以保证最后开发出来的软件系统不会偏离最初的实现目标。

(4)可测试:一个项目的测试从什么时候开始呢?有人说是从编码完成后开始,有人说是编码的时候同时进行单元测试,编码完成后进行系统测试,这些结论都不完全正确。

实际上,测试是从需求分析过程就开始了,因为需求是测试计划的输入和参照。

这就要求需求分析是可测试的,只有系统的所有需求都是可以被测试的,才能够保证软件始终围绕着用户的需要,保证软件系统是成功的。

什么是软件生命周期,分为什么阶段

软件生命周期(SDLC,Systems Development Life Cycle,SDLC)是软件的产生直到报废或停止使用的生命周期.周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。

但随着新的面向对象的设计方法和技术的成熟,软件生命周期设计方法的指导意义正在逐步减少。

阶段同任何事物一样,一个软件产品或软件系统也要经历孕育、诞生、成长、成熟、衰亡等阶段,一般称为软件生存周期(软件生命周期)。

把整个软件生存周期划分为若干阶段,使得每个阶段有明确的任务,使规模大,结构复杂和管理复杂的软件开发变的容易控制和管理。

通常,软件生存周期包括:一,问题定义。

要求系统分析员与用户进行交流,弄清“用户需要计算机解决什么问题”然后提出关于“系统目标与范围的说明”,提交用户审查和确认。

二,可行性研究。

一方面在于把待开发的系统的目标以明确的语言描述出来,另一方面从经济、技术、法律等多方面进行可行性分析。

三,需求分析。

弄清用户对软件系统的...软件生命周期(SDLC,Systems Development Life Cycle,SDLC)是软件的产生直到报废或停止使用的生命周期.周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。

但随着新的面向对象的设计方法和技术的成熟,软件生命周期设计方法的指导意义正在逐步减少。

阶段同任何事物一样,一个软件产品或软件系统也要经历孕育、诞生、成长、成熟、衰亡等阶段,一般称为软件生存周期(软件生命周期)。

把整个软件生存周期划分为若干阶段,使得每个阶段有明确的任务,使规模大,结构复杂和管理复杂的软件开发变的容易控制和管理。

通常,软件生存周期包括:一,问题定义。

要求系统分析员与用户进行交流,弄清“用户需要计算机解决什么问题”然后提出关于“系统目标与范围的说明”,提交用户审查和确认。

二,可行性研究。

一方面在于把待开发的系统的目标以明确的语言描述出来,另一方面从经济、技术、法律等多方面进行可行性分析。

三,需求分析。

弄清用户对软件系统的全部需求,编写需求规格说明书和初步的用户手册,提交评审。

四,开发阶段。

开发阶段由三个阶段组成:1,设计2,实现:根据选定的程序设计语言完成源程序的编码。

3,测试五,维护:维护包括四个方面1,改正性维护:在软件交付使用后,由于开发测试时的不彻底、不完全、必然会有一部分隐藏的错误被带到运行阶段,这些隐藏的错误在某些特定的使用环境下就会暴露。

2,适应性维护:是为适应环境的变化而修改软件的活动。

3,完善性维护[1] :是根据用户在使用过程中提出的一些建设性意见而进行的维护活动。

4,预防性维护:是为了进一步改善软件系统的可维护性和可靠性,并为以后的改进奠定基础。

如何系统的进行用户需求分析

项目管理以及相关项目功能中都起了重要的作用:&quot:定义需求基线(迅速制定需求文档的主体),因为另外一些可能属于子系统(或软件部件).作为功能需求的补充,软件需求规格说明还应包括非功能需求,它描述了系统展现给用户的行为和执行的操作等.它包括产品必须遵从的标准,即便并非出于商业目的的软件需求也是必须的.例如库、组件和工具这些供开发小组内部使用的软件.当然你可能偶尔勿需文档说明就能与其他人意见较为一致,但更常见的是出现重复返工这种不可避免的后果,而重新编制代码的代价远远超过重写一份需求文档的代价,这些血的教训正在国内的软件开发者身上发生.结果这个小组只好手工抄写源代码文档以供代码检查.客户的接受仅是需求成功的一半,开发人员也必须能够接受他们,并真正把需求应用到产品中.1.这种合同都包含在编写的需求文档与模型中,现在我要的就是给我编一个系统&quot,这在使用实例(use case)文档或方案脚本说明中予以说明.3.功能需求(functional requirement)定义了开发人员必须实现的软件功能.需求分析的任务开发软件系统最为困难的部分就是准确说明开发什么.最为困难的概念性工作便是编写出详细技术需求,这包括所有面向用户、面向机器和其它软件系统的接口.他们依据需求对系统进行测试时,此系统不仅非常清晰地实现了所有必需功能,而且未发现任何错误.事实上,需求文档在开发过程中一直起指导作用.3.需求分析过程可把整个软件需求工程研究领域划分为需求开发和需求管理两部分更合适.估计变更需求所产生影响并在此基础上协商新的承诺.分析源于用户的信息以区别用户任务需求、功能需求、业务规则、质量属性、评价、编写文档等所有活动.需求开发活动包括以下几个方面,当他们开发完这个工具后.同时这也是一旦做错.将所收集的用户需求编写成文档和模型、产品高层次的目标要求,它们在项目视图与范围文档中予以说明.2.用户需求(user requirement) 文档描述了用户使用产品必须要完成的任务、用户需求和功能需求(也包括非功能需求).将系统级的需求分为几个子系统,并将需求中的一部份分配给软件组件,如图4-1所示,而并非产品是怎样设计、构造的.而下面的定义则从用户需要进一步转移到了系统特性:需求是指明必须实现什么的规格说明.了解相关质量属性的重要性.商讨实施优先级的划分.所以如果只有一堆邮件、会谈记录或一些零碎的未整理的对话,企业信息系统和软件作为一个大系统的一部分的产品是显而易见的.评审需求规格说明,确保对用户需求达到共同的理解与认识,并在整个开发小组接受说明之前将问题都弄清楚.需求管理需要"建立并维护在软件工程中同客户达成的合同&quot,发现这个工具不能打印出源代码文件,使用者当然希望有这个功能;性能要求;设计或实现的约束条件及质量属性.所谓约束是指对开发人员在软件产品设计和构造上的限制.质量属性是通过多种角度对产品的特点进行描述,从而反映产品功能.多角度描述产品对用户和开发人员都极为重要.下面以一个字处理程序为例来说明需求的不同种类.业务需求可能是:"用户能有效地纠正文档中的拼写错误",该产品的包装盒封面上可能会标明这是个满足业务需求的拼写检查器.而对应的用户需求可能是"找出文档中的拼写错误并通过一个提供的替换项列表来供选择替换拼错的词".同时,该拼写检查器还有许多功能需求,如找到并高亮度提示错词的操作;显示提供替换词的对话框以及实现整个文档范围的替换.从以上定义可以发现,需求并未包括设计细节、实现细节、项目计划信息或测试信息.需求与这些没有关系,它关注的是充分说明你究竟想开发什么.项目也有其它方面的需求,如开发环境需求或发布产品及移植到支撑环境的需求.尽管这些需求对项目成功也至关重要,但它们并非本书所要讨论的.5.需求分析的原则不重视需求过程的项目队伍将自食其果.需求工程中的缺陷将给项目成功带来极大风险,这里的"成功"是指推出的产品能以合理的价格、及时地在功能、质量上完全满足用户的期望.下面将讨论一些需求风险.不适当的需求过程所引起的一些风险:1. 无足够用户参与客户经常不明白为什么收集需求和确保需求质量需花费那么多功夫,开发人员可能也不重视用户的参与.究其原因:一是因为开发人员感觉与用户合作不如编写代码有意思;二是因为开发人员觉得已经明白用户的需求了.在某些情况下,与实际使用产品的用户直接接触很困难,而客户也不太明白自己的真正需求.但还是应让具有代表性的用户在项目早期直接参与到开发队伍中,并一同经历整个开发过程.系统人员在实践过程中,也有些感觉,在实施一家公司的项目时,若无足够的用户参与,系统人员获得的需求是片面的,不完整的,这样系统在需求之初就埋下风险.2. 用户需求的不断增加在开发中若不断地补充需求,项目就越变越庞大以致超过其计划及预算范围.计划并不总是与项目需求规模与复杂性、风险、开发生产率及需求变更实际情况相一致,这使得问题更难解决.实际上,问题根源在于用户需求的改变和开发者对新需求所作的修改.要想把...

求一套管理类系统!! 毕业设计`!

人事考勤管理系统 摘 要:本文主要论述了人事管理系统中考勤管理的开发过程。

其中包括前言、系统功能设计、注释、参考文献等内容。

在前言中我将对人事考勤管理的发展过程以及目前我国人事考勤管理发展的现状进行简单的论述,还将阐述我所设计的人事考勤管理系统的目的和意义。

在系统功能设计中将包括:开发环境和应用、系统功能的详细设计过程,其中包括:开发方法、开发平台和工具、系统规划和分析、系统设计、系统的运行与维护、对人事考勤管理系统发展的展望、以及开发总结。

注释中将对系统功能设计中引用他人的观点及原话、主要数据等注明出处,对需要解释的内容,进行加注说明。

在参考文献中将程序设计过程中所用到的参考文献按文中引用出现的顺序列全,附于文末。

论文将采用图、文、表等多种方式进行全面详细地论述,会用到数据库的选用、数据库驱动程序的选择和安装、管理界面的设计,JAVA程序语言、信息的存储和读取、软件工程等知识。

【关键词】:人事考勤管理系统;系统功能设计;数据库;JAVA 目 录 前言 41 可行性分析报告 51.1. 引言 51.1.1. 题目: 51.1.2. 目的: 51.1.3. 开发环境: 51.2. 可行性研究的前提 51.2.1. 系统要求 51.2.2. 系统目标 61.2.3. 现有系统分析 61.3. 可行性分析 61.3.1. 技术可行性性分析 61.3.2. 经济可行性分析 61.3.3. 社会因素可行性分析 62 开发计划 72.1. 项目概述 72.2. 开发步骤 72.2.1. 系统规划 72.2.2. 系统开发 72.3. 开发模型 82.4. 实施计划 82.4.1 开发人数:1人,指导老师1人 82.4.2 开发语言: JAVA 82.4.3 开发进度: 83 系统需求分析 93.1 任务概述 93.1.1 目标 93.1.2 运行环境 93.2 数据描述 93.2.1 数据流图 93.2.2 数据字典 103.2.3 E-R图 113.3 功能需求 114 总体设计 124.1 数据库结构设计 124.1.1 概述 124.1.2 数据库的建立 124.1.3 数据库备份 154.2 系统功能详细设计 164.2.1 登陆界面 164.2.2 人事管理系统主界面 224.2.3 人员信息录入界面 324.2.4 人员信息修改界面 374.2.5 人员信息查询界面 424.2.6 上班登记界面 454.2.7 下班登记界面 504.2.8 人员考勤信息统计界面 535 测试计划与分析 575.1 概述 575.2 测试方法 575.3 测试步骤 575.3.1 分析数据 575.3.2 第一步划分等价类 585.3.3 确定测试用例 585.4 测试结果 586 系统开发总结 596.1 概述 596.2 对人力资源系统的展望 597 系统维护 607.1 概述 607.2 系统维护的内容 607.2.1 系统应用程序维护: 607.2.2 数据维护: 607.2.3 代码维护: 607.2.4 硬件设备维护: 607.3 系统维护的组织与管理 608 致谢 619 参考文献 62 前言 近几年来,随着人事制度改革的不断深化,人事考勤管理工作发展很快,不仅人员的数量成倍增加,而且服务范围也不断拓展,这种新形势给我国的管理工作提出了新的要求,原来手工操作的管理方式已经落伍,面对这种状况,人事考勤管理也已经信息化.人事考勤管理系统充分体现了"管理以人为本"的先进理念,提炼融合了现代人力资源管理思想,有机结合了我国近10年长期档案管理工作的实际经验,从用户实际出发,以建立中央数据库为基础,大大提高了该软件产品的针对性和通用性;利用计算机的自动化操作,自动生成各类文档,报表,彻底改变以往只能借助纸张介质手工操作,不仅效率低,且频繁出错的现状,协助管理者真正实现"办公网络化,管理数字化,决策科学化",是一个理想的数字化工作平台;完善的数据维护功能满足了用户对安全保密性的特殊要求;该软件具有全新的界面风格和视觉效果,丰富的选项与下拉式菜单结构,操作起来更加灵活方便,随着形势的变化和工作实际需要,软件已考虑升级设计。

人事考勤管理系统从产生到现在已经经历了单项数据处理阶段、 综合数据处理阶段 、人事考勤管理系统阶段等几个阶段。

但是在我国,由于各种原因,人事考勤管理系统的发展尚处于初级阶段。

尽管如此,充分利用我们现有的资源和技术力量,开发一些适合本企业或者本行业的人事考勤管理系统,还是非常必要的。

1 可行性分析报告1.1. 引言1.1.1. 题目: 人事考勤管理系统1.1.2. 目的:提高人事考勤管理工作效率,减少人力的资源的浪费, 提高精确度,开发一个使用方便、快捷、精确、安全的人事考勤管理系统。

1.1.3. 开发环境:1) 硬件资源:a) CPU: Pentium(R) 4 1500MHz b) 内存:256MB c) 硬盘:40G d) 显示器:分辩率1440x900的19寸宽屏液晶显示器 2) 软件资源:a) 操作系统: WINDOWS XP b) 数据库:SQL Server 2005 c) 编写语言:JAVA(jdk-1_5_0_12-windows-i586-p) d) 编译器:MyEclipse Enterprise Workbench 5.1.0 GA1.2. 可行性研究的前提1.2.1. 系统要求1) 功能要求:所编系统应具有人员信息添加、修改、删除功能,查询功能,上下班的等级功能,还能将人员考勤信息列表。

人员信息应包括:工号,姓名,性别,年龄,出生日期,户口所在地,政治面貌,职务,工资,入职时间,地址,邮编2) 安全与保密要求:人员个人信息、考勤信息均由人事部主管或系统管理员管理,不允许其他人随便登陆,不允许信息外流。

1.2.2. 系统目标1) 节省人力2) 提高工作效率3) 提高精...

软件开发的主要任务是解决“如何做”的问题

软件开发的主要任务是解决逗如何做地的问题 一、问题识别 首先系统分析人员要研究计划阶段产生的可行性分析报告和软件项目实施计划。

主要是从系统的角度理解软件并评审用于产生计划估算的软件范围是否恰当,确定对目标系统的综合要求,即软件的需求;并提出这些需求的实现条件,以及需求应达到的标准,也就是解决要求所开发软件做什么,做到什么程度。

这些需求包括: (1)功能需求:列举出所开发软件在功能上应做什么,这是最主要的需求。

(2)性能需求:给出所开发软件的技术性能指标,包括存储容量限制、运行时间限制、安全、保密性等。

(3)环境需求:这是对软件系统运行时所处环境的要求。

例如,在硬件方面,采用什么机型、有什么外部设备、数据通信接口等等;在软件方面,采用什么支持系统运行的系统。

(4)可靠性需求:各种软件在运行时,失效的影响各不相同。

在需求分析时,应对所开发软件在投入运行后不发生故障的概率,按实际的运行环境提出要求。

对于那些重要的软件,或是运行失效会造成严重后果的软件,应当提出较高的可靠性要求,以期在开发的过程中采取必要的措施,是软件产品能够高度可靠地稳定运行,避免因运行事故而带来的损失。

(5)安全保密工作需求:工作在不同环境的软件对其安全、保密的要求显然是不同的。

应当把这方面的需求恰当地作出规定,以便对所开发的软件给予特殊的设计,使其在运行中其安全保密方面的性能能得到必要的保证。

(6)用户界面需求:软件与用户界面的友好性是用户能够方便有效地使用软件的关键之一,从市场角度来看,具有友好用户界面的软件有较强的市场竞争力。

因此,必须在需求分析时,为用户界面细致地规定达到的要求。

(7)资源使用需求:这是指所开发软件运行时所需的数据、软件、内存、空间等各项资源。

另外,软件开发时所需的人力、支撑软件、开发设备等属于软件开发的资源,需要在需求分析时加以确定。

(8)软件成本消耗与开发进度需求:在软件项目立项后,要根据合同规定,对软件开发的进度和各步骤的费用提出要求,作为开发管理的依据。

(9)预先估计以后系统可能达到的目标。

这样,在开发过程中,可对系统将来可能的扩充与修改做准备,一旦需要时,就比较容易进行补充和修改。

功能性需求是人们普遍关注的,但对非功能性需求的分析常常被忽视。

其实非功能性需求并不是无关紧要的,它们的主要特点涉及到的方面多而广,却容易被忽略,任何一个软件的非功能性需求都要根据其类型和工作环境来确定。

问题识别的另一项工作是建立分析所需要的通信(沟通)途径,以保证能顺利地对问题进行分析。

分析员必须与用户、软件开发机构的管理部门、软件开发组的人员建立联系。

项目负责人在此过程中起协调人的作用。

分析员通过这种通信途径与各方面商讨,以便能按照用户的要求去识别问题的基本内容。

此外,如果在进行需求分析之前没有做过可行性分析,那么补充完成这部分工作往往是必要的,从问题定义和调查研究入手,与用户密切联系,详细了解问题提出的背景、弄清要解决什么问题,然后从软件系统特性和用户目标出发,做市场调查和现场考察。

仔细收集信息之后进行数据分析和功能分析,建立系统的高层逻辑模型,再进一步做成本/效益分析。

最后提交一份可行性分析报告,从技术、经济、社会效应等方面论证可行性,以确认软件开发的目标是否可行。

二、分析与综合 需求分析的第二步工作是问题分析和方案的综合。

分析员需从数据流和数据结构出发,逐步细化所有软件功能,找出系统各元素之间的联系、接口特性和设计上的限制,分析它们是否满足功能要求,是否合理。

依据功能需求、性能需求和运行环境需求等,剔除其不合理的部分,增加其需要部分。

最终综合成系统的解决方案,给出目标系统的详细逻辑模型。

在这个步骤中,分析和综合工作反复地进行。

在对现行问题和期望的信息(输入和输出)进行分析的基础上,分析员开始综合出一个或几个解决方案,然后检查它的工作是否符合软件计划中规定的范围等等,再进行修改。

总之,对问题进行分析和综合的过程将一直持续到分析员与用户双方都感到有把握正确地制定该软件的规格说明为止 常用的需求分析方法有面向数据流的结构化分析方法(简称SA)、面向数据结构的Jackson方法(简称JSD)、面向对象的分析方法(简称OOA)等,以及用于建立动态模型的状态迁移图或Petri网等。

三、编制需求分析文档 在软件开发的瀑布模型中,每个阶段形成的最终文档是阶段完成的里程碑,因而,需求分析阶段编制文档以备下步评审,也是此阶段的重要任务之一。

以上已经确定的需求应当得到清晰准确的描述。

通常把描述需求的文档叫做软件需求规格说明书。

同时,为了确切表达用户对软件的输入输出要求,还需要制定数据要求说明书及编写初步的用户手册,着重反映被开发软件的用户界面和用户使用的具体要求。

此外,根据在需求分析阶段对系统的进一步分析,从目标系统的精细模型出发,可以更准确地估计所开发项目的成本与进度,从而修改、完善与确定软件开发实施计划。

四、...

工厂可行性研究报告

这个是通用的可行性研究报告模板 可行性研究报告 1引言 1.1编写目的 说明编写本可行性研究报告的目的,指出预期的读者。

1.2背景 说明: A. 所建议开发的软件系统的名称; B. 本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络; C. 该软件系统同其他系统或其他机构的基本的相互来往关系。

1.3定义 列出本文件中用到的专门术语的定义和外文首字母组词的原词组。

1.4参考资料 列出用得着的参考资料,如: 1. 本项目的经核准的计划任务书或合同、上级机关的批文; 2. 属于本项目的其他已发表的文件; 3. 本文件中各处引用的文件、资料,包括所需用到的软件开发标准。

列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。

2可行性研究的前提 说明对所建议的开发项目进行可行性研究的前提,如要求、目标、假定、限制等。

2.1要求 说明对所建议开发的软件的基本要求,如: A. 功能; B. 性能; C. 输出如报告、文件或数据,对每项输出要说明其特征,如用途、产生频度、接口以及分发对象; D. 输入说明系统的输入,包括数据的来源、类型、数量、数据的组织以及提供的频度; E. 处理流程和数据流程用图表的方式表示出最基本的数据流程和处理流程,并辅之以叙述; F. 在安全与保密方面的要求; G. 同本系统相连接的其他系统; H. 完成期限。

2.2目标 说明所建议系统的主要开发目标,如: A. 人力与设备费用的减少; B. 处理速度的提高; C. 控制精度或生产能力的提高; D. 管理信息服务的改进; E. 自动决策系统的改进; F. 人员利用率的改进。

2.3条件、假定和限制 说明对这项开发中给出的条件、假定和所受到的限制,如: a. 所建议系统的运行寿命的最小值; b. 进行系统方案选择比较的时间; c. 经费、投资方面的来源和限制; d. 法律和政策方面的限制; e. 硬件、软件、运行环境和开发环境方面的条件和限制; f. 可利用的信息和资源; g. 系统投入使用的最晚时间。

2.4进行可行性研究的方法 说明这项可行性研究将是如何进行的,所建议的系统将是如何评价的。

摘要说明所使用的基本方法 和策略,如调查、加权、确定模型、建立基准点或仿真等。

2.5评价尺度 说明对系统进行评价时所使用的主要尺度,如费用的多少、各项功能的优先次序、开发时间的长短 及使用中的难易程度。

3对现有系统的分析 这里的现有系统是指当前实际使用的系统,这个系统可能是计算机系统,也可能是一个机械系统甚 至是一个人工系统。

分析现有系统的目的是为了进一步阐明建议中的开发新系统或修改现有系统的必要性。

3.1处理流程和数据流程 说明现有系统的基本的处理流程和数据流程。

此流程可用图表即流程图的形式表示,并加以叙述。

3.2工作负荷 列出现有系统所承担的工作及工作量。

3.3费用开支 列出由于运行现有系统所引起的费用开支,如人力、设备、空间、支持性服务、材料等项开支以及开 支总额。

3.4人员 列出为了现有系统的运行和维护所需要的人员的专业技术类别和数量。

3.5设备 列出现有系统所使用的各种设备。

3.6局限性 列出本系统的主要的局限性,例如处理时间赶不上需要,响应不及时,数据存储能力不足,处理功能 不够等。

并且要说明,为什么对现有系统的改进性维护已经不能解决问题。

4所建议的系统 本章将用来说明所建议系统的目标和要求将如何被满足。

4.1对所建议系统的说明 概括地说明所建议系统,并说明在第2章中列出的那些要求将如何得到满足,说明所使用的基本方法及理论根据。

4.2处理流程和数据流程 给出所建议系统的处理流程和数据流程。

4.3改进之处 按2.2条中列出的目标,逐项说明所建议系统相对于现存系统具有的改进。

4.4影响 说明在建立所建议系统时,预期将带来的影响,包括: 4.4.1对设备的影响 说明新提出的设备要求及对现存系统中尚可使用的设备须作出的修改。

4.4.2对软件的影响 说明为了使现存的应用软件和支持软件能够同所建议系统相适应。

而需要对这些软件所进行的修改和补充。

4.4.3对用户单位机构的影响 说明为了建立和运行所建议系统,对用户单位机构、人员的数量和技术水平等方面的全部要求。

4.4.4对系统运行过程的影响 说明所建议系统对运行过程的影响,如: a. 用户的操作规程; b. 运行中心的操作规程; c. 运行中心与用户之间的关系; d. 源数据的处理; e. 数据进入系统的过程; f. 对数据保存的要求,对数据存储、恢复的处理; g. 输出报告的处理过程、存储媒体和调度方法; h. 系统失效的后果及恢复的处理办法。

4.4.5对开发的影响 说明对开发的影响,如: a. 为了支持所建议系统的开发,用户需进行的工作; b. 为了建立一个数据库所要求的数据资源; c. 为了开发和测验所建议系统而需要的计算机资源; d. 所涉及的保密与安全问题。

4.4.6对地点和设施的影响 说明对建筑物改造的要求及对环境设施的要求。

4.4.7对经费开支的影响 扼要说明为了所建议系统的开发,设计和维持运行而需要的各项经费开支。

4.5局限性 说明所建议系统尚存在的局限性以及这些问题未能消除的原...

大家还关注
    
阅读排行
推荐阅读