1.问答题

简述系统分析的实施过程。急考试用谢谢... 简述系统分析的实施过程。

急 考试用 谢谢
展开
 我来答
yangliqin0816
2008-05-24 · TA获得超过5857个赞
知道小有建树答主
回答量:938
采纳率:0%
帮助的人:0
展开全部
一、什么是系统分析
在具体的研究需求分析之前,我们先了解一下软件工程这个概念。软件工程分为三个层次,过程层、方法层、工具层。在最基础的过程层,最重要的就是一组被称为关键过程区域(KPAs)的框架(KPA的概念在讨论CMM的书中有详细的概念说明)。关键过程区域构成了软件项目的管理控制的基础,并且确立了上下文各区域的关系,其中规定了技术方法的采用、工程产品的,模型、文档、数据、报告、表格等,等的产生、里程碑的建立、质量的保证及变化的适当管理。方法层主要是过程在技术上的实现。它解决的问题是如何做。软件工程方法涵盖了一系列的任务:需求分析、设计、编程、测试、维护。同时他还包括了一组基本原则,控制了每一个的关键过程区域。工具层就很好理解了,他对过程层和方法层提供了自动和半自动的支持。这些辅助工具就称为CASE。事实上需求分析是跨越了软件工程的三个层次的。这一点是和其他的过程是一样的。

可以看到需求分析的位置,它是我们软件开发的第一步。是对用户需求的定义,对软件系统的描述。系统分析的任务:将用户的业务逻辑转化为程序逻辑,计算时间和成本。根据开发人员的理论知识和实际的经验,人们会采用各种满足实际情况的系统分析、开发方
法、步骤以及文档等等。一般情况下,在系统分析书中应该有以下内容(视项目而定):

1、 系统需求说明 说明系统是一个什么样的系统,用市场上现有的系统来类比,
用客户(或是我们自己)需要一个什么样的系统进行说明,力求完整。并对系统的发展
可扩充性进行描述(现在没有哪个系统是一次OK的)。说明与现有的系统有什么相同什
么不同,说明未来系统的发展方面以及可移值性等能预见的事情。

2、 系统资源说明 对系统所需要的软件、硬件资源进行说明。描述系统所需要的
所有的TCO成本。包括人员、时间、设备、系统、一次性投入资金、持续性投入资金这样
的所有资源。

3、 系统可行性分析 对系统的实施中的资源进行分析,说明投入的合理性和必然
性,对其中的所有不可预见性的投入进行合理的量化说明,来说明系统的实施的可行性


二、系统分析员与程序员
大家应该对这两个词很熟悉了,但是对词里包含的意义可能并不是特别清楚。首先必须说明的是,程序员和系统分析员不存在谁高级谁低级的分别,他们是两种职业,对职业技能的要求完全不同。所以厉害的程序员就是系统分析员的说法是不对的。当然,系统分析员的技能要求他必须要懂得如何写程序,但是他的重心在于如何把一个很大的项目切割成适合个人的小块,然后将这些小块组织起来。程序员的职责就是如何更好更快的实现这些小块。

三、系统分析的方法和工具
UML全称:Unified Modeling Language,统一建模语言,是面向对象的建模语言,主要用于软件系统的面向对象建模。
UML是以面向对象图的方式来描述任何类型的系统,具有很广泛的应用领域。特别是在建立软件系统模型中,它支持从系统需求、系统分析到系统设计的整个建模过程。由于UML建模是一门专门的科学,而我们这门课程的任务是数据库系统开发,所以对于UML我们将有限的注意力集中在认识UML各种图示上。

可以使用Rational Rose 2003来建立UML模型
1) 建立角色
2) 创建用例
3) 创建角色用例关系图
4) 创建时序图
5) 创建协作图

四、系统分析员思想

全局观念是系统分析员必须具备的观念。

如果系统分析员设计时太注重细节,往往会陷入在某个问题上纠缠不清的泥潭。(93年,我论文指导老师的一席话影响了我随后几年对软件开发的理解——今后计算机会越来越快,多写几行代码少写代码无关紧要,最重要的是整体;一开始就错了,某个部份编得再好,也是没有用的) 系统分析员要有面向用户的思想。系统分析员应当有能力将自己扮演成用户,来了解要交付的项目看起来想什么样式,感觉想什么,从而了解用户的想法并挑选出合理部份去开发。从这个意义上说,系统分析员才能获得有意义的见解去引导他的开发组成员。系统分析员头脑中要对项目结局有一个清楚的认识,并保证项目不偏离方向。系统分析员要有根植于技术,高于技术思考问题的
思想。纯粹的程序员通常对最终结果考虑的不是很多,当一种新的技术在市场上出现时,他们对能否按时交付的考虑就比较少,而强烈希望他们的计划能够建立在新的技术之上。因此,系统分析员的想法和行动要象一个用户,又要能够站在技术的高度,成为真正的用户、程序员之间的代言人。

任务难度的预测能力

系统分析员要具备快速的任务难度预测能力以及具备快速确定开发小组人员构成和任务划分的能力。(我将这条归为思想,而不是能力)昆虫自然会长出翅膀,而思想却需要长期的浸润。要做到这点,需要大量的思考、学习。设计远比编程重要。当今软件业的发展,各种开发工具的出现,编程已经不是什么问题,程序员的工作某种程度上讲是将别人现成的东西拼凑堆砌起来。系统分析员要清楚的认识到,现在大多数程序员没有学会怎么去整体的了解一个系统,有些甚至不了解编程(这不是说他们不会写代码)。可视化的开发工具加五花八门的控件,程序员可以偷点懒了。(这可不是夸大,我好几年的管理工作,接触过大量的程序员)基于技术,跳出框架。基于现有技术结合用户需求思考问题,设计时跳出
框架。

系统分析员的关键

获得信任。系统分析员最重要的素质是获得信任,这是成为优秀系统分析员的关键。成熟最为关键。成熟可以为整个项目组提供正确的支持,能够理解技术怎样才能解决用户的需求。

系统分析员的准备工作

统一的各种文档模式,这其中包括今后软件变量、字段命名规则。我推荐用pb制定的规则做基础,通过改造成为适合自身实用的标准。统一的文档管理。统一的分析软件。比如说rose(uml 太规范,国内的软件管理水平根本用不上,只不过尽量应用,你自己对系统分析的理解有好处)方法是思想的放映,在具体方法上就不多说了。我托人从u$a 弄到几本书,用于面向对象系统开发的使用》、《面向对象的分析》、《项目管理》等都是很不错的,推荐大家看看。

我在拙作" 在中国没有人懂计算机" 里发了点牢骚,听说挨了部份人(习惯性的)骂。其实,bbs 本来就是发泄的地方,在这里从来就罕有有内容的文章。

自从" 维纳斯" 登陆深圳后,大家更着眼于从宏观看中国的it业了。中国it这棵小树,说实在的,长到今天实在是不容易。一些人提出了" 反对微软霸权"的口号,不少人呼唤中国" 硅谷" 的出现。微软的成功不是技术的成功,更多的是商业运作的成功。中国it这棵树能长多高,取决于他所植根于的土壤。而现在
的事实是,这片土壤实在是太贫瘠了!如果按我们现在的思路和搞法,是长不成大树,更别指望能结?quot;微软" ," 硅谷" 这样丰硕的果实。如果说,我们的软件技术落后美国十年,我们的硬件制造技术则落后美国二十年,我们的管理水平落后美国至少三十年。而最终决定发展速率的恰恰是我们的死穴——低劣的管理水平。低劣的管理水平的形成的原因有着深厚的背景和多方面的原因。

系统分析工作是解决一个问题的工作,目标是将一个对计算机应用系统的需求转化成实际的物理实现,其中复杂就复杂在实际的面太多。在系统分析过程之中注意问以下的问题,可能会所进行的系统分析设计工作有帮助

1 )您所完成的系统目的是什么?注意不是功能要求,而是目的。也就是为什么要建设、为什么要现代建设。在考虑系统目的时,我更多的侧重于系统的最终目标考虑,因为一个系统不可能一下子完美,为系统留些余地。

2 )您所完成的系统有哪些方面参与,各方面的初衷是什么?那些人可能在系统建设中起重要作用,他们会采取什么样的态度?你对他们有多少影响力?中国it行业的失败之一就是人" 太年轻" ,一定要有领导的支持,否则完蛋。不要认为自己对他们会有多少影响力,即便有,也要尽可能的认为是决策者再影响他们。在中国,一个技术员,你算老几?说到这里我很悲哀。哪些人在系统中起重要作用并弄清楚他们的态度,这点十分关键。

3 )您的系统是否有一个明确的评价标准?最好从参与的各方面都进行考虑。
不知道这样说对不对,在系统建设之前,对你的程序员、对你的领导要有至少不同的两种评价。

4 )你的系统设计思想是什么?是否能够得到各方面的认可。如果高明,对领导、对程序员都采用引导,得到认可的最好办法,就是让他们认可他们自己的想法。(我力图这样做,但做得不好,系统分析员有一点要学会韬光养晦,忍)

5 )你对参与系统设计开发的人员了解吗?他们的特长在哪里,是否愿意与你合作,为什么?你对他们有足够的影响力吗?软件发展到一定的程度,不是编程,不是数学,而是管理。

6 )你的系统开发计划是否完善?你的计划表有明确的阶段吗?任何一阶段都应该怎样完成?如何对这一阶段完成的情况进行评价?

7 )你对所采用的系统开发方法以及工具是否熟悉?你的夥伴是否熟悉?事实上,不是每种好的工具都要使用,也并不一定都要他们熟练掌握。提醒诸位一句,当你将方案做得可以不依赖某个程序员,你在程序员面前就无信任可言,因为从此程序员将受到更大的生存压力。我坚决不在公司使用rose.

8 )你所完成的系统是否有原型?计算机的或者物理的。

系统分析员基本功

以上的几个问题都是在系统分析以及系统规划时涉及到的,供各位参考。

这文章很好,我的话是:" 需求分析实际应该是问题分析".含义是系统要解决的是问题。而不是用户提出的需求。经常发现系统完成后,客户说" 我的问题还没有解决".可是,需求分析稿上的目标都搞定了。

既然是问题分析,所以,熟悉目标系统的知识就是必要的。甚至,可以说,一个好的系统分析员也应该是好的业务专家。

我很高兴在这里遇到许多分析高手,可以交流分析中的问题。我赞同从来的观点。在中国作分析重要的是人气,因为中国的企业级信息系统的建设在很大程度上可以说并非确有需求,而是迫于某种压力。用户在很多时候考虑的不是系统的长远发展,而只是短期的成果,要求开发单位在很短的时间内完成一个很大的系统的开发,没有时间对系统进行周密的分析,在这种情况下,很多开发商就会粗分析,粗设计,尽快进入编码阶段,这样的系统的生命周期肯定不会很长。说了这么多,只是想说,系统分析员确实应是业务和管理专家,并且需要有很好的语言组织能力,他需要根据问题域中存在的问题去尽力说服用户,引导用户需求,毕竟,我们是专家,如果让用户牵着鼻子走,系统不会是成功的系统。(当然了,这要建立在用户是可引导的前提下)本人拙见。

在理解和分析用户的需求时,应说服用户明白:建立计算机应用系统并不是简单地用计算机代替手工劳作,它更应该是管理思想的一次革命,是现用户模式的一次升华和提高。如果系统不能高于现实,开发的系统将长期陷入需求的反复修改,其软件的生命周期也短了。
参考资料:http://www.chinaitpower.net/A200508/2005-08-07/183576.html
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
祎开济Ge
2008-05-24 · TA获得超过3468个赞
知道小有建树答主
回答量:656
采纳率:0%
帮助的人:0
展开全部
科学吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式