当前位置: 首页 > news >正文

如何成为好的系统分析员

基本功
好的系统分析员都是从优秀的程序员中产生的,坚实的编程功底、丰富的经验是今后做系统分析的基础。
其实在大学的时候我们就应该夯打基础,现在工作之才深深的感到,所以读研期间就恶补基础的东西。
没有对系统本身进行过透彻剖析过,很难领会到其中一些难以言述的精华。但并不等于好的程序员就能够成为好的系统分析员。
合理的知识结构。语言能力、文字表达能力、技术的全面性等是对系统分析员的基本要求。比如说c/s和3 层开发,如果仅仅对Netscape公司的产品熟悉还不够,还需要了解比如微软等产品,并且要了解他们中产生历史,发展思路,技术优劣,以应付各种穷追猛打的提问。但更重要的是,这是你为应用定制技术要求的前提。
思想
  全局观念是系统分析员必须具备的观念。如果系统分析员设计时太注重细节,往往会陷入在某个问题上纠缠不清的泥潭,系统分析员要有面向用户的思想。系统分析员应当有能力将自己扮演成用户,来了解要交付的项目看起来想什么样式,感觉想什么,从而了解用户的想法并挑选出合理部份去开发。从这个意义上说,系统分析员才能获得有意义的见解去引导他的开发组成员。系统分析员头脑中要对项目结局有一个清楚的认识,并保证项目不偏离方向。系统分析员要有根植于技术,高于技术思考问题的思想。纯粹的程序员通常对最终结果考虑的不是很多,当一种新的技术在市场上出现时,他们对能否按时交付的考虑就比较少,而强烈希望他们的计划能够建立在新的技术之上。因此,系统分析员的想法和行动要像一个用户,又要能够站在技术的高度,成为真正的用户、程序员之间的代言人。
任务难度的预测能力
系统分析员要具备快速的任务难度预测能力以及具备快速确定开发小组人员构成和任务划分的能力。昆虫自然会长出翅膀,而思想却需要长期的浸润。要做到这点,需要大量的思考、学习。设计远比编程重要。当今软件业的发展,各种开发工具的出现,编程已经不是什么问题,程序员的工作某种程度上讲是将别人现成的东西拼凑堆砌起来。系统分析员要清楚的认识到,现在大多数程序员没有学会怎么去整体的了解一个系统,有些甚至不了解编程(这不是说他们不会写代码)。可视化的开发工具加五花八门的控件,程序员可以偷点懒了,基于技术,跳出框架。基于现有技术结合用户需求思考问题,设计时跳出框架。
关键
  获得信任。系统分析员最重要的素质是获得信任,这是成为优秀系统分析员的关键。成熟最为关键。成熟可以为整个项目组提供正确的支持,能够理解技术怎样才能解决用户的需求。
准备工作
统一的各种文档模式,这其中包括今后软件变量、字段命名规则。我推荐用 Java 制定的规则做基础,通过改造成为适合自身实用的标准。统一的文档管理。统一的分析软件。比如说rose(UML太规范,国内的软件管理水平根本用不上,只不过尽量应用,你自己对系统分析的理解有好处)方法是思想的放映.
我在拙作"在中国没有人懂计算机"里发了点牢骚,听说挨了部分人(习惯性的)骂。其实,bbs本来就是发泄的地方,在这里从来就罕有有内容的文章。
自从"维纳斯"登陆深圳后,大家更着眼于从宏观看中国的IT业了。中国IT这棵小树,说实在的,长到今天实在是不容易。一些人提出了"反对微软霸权"的口号,不少人呼唤中国"硅谷"的出现。微软的成功不是技术的成功,更多的是商业运作的成功。中国IT这棵树能长多高,取决于他所植根于的土壤。而现在的事实是,这片土壤实在是太贫瘠了!如果按我们现在的思路和搞法,是长不成大树,更别指望能结出像“微软”、“硅谷”这样丰硕的果实。如果说,我们的软件技术落后美国十年,我们的硬件制造技术则落后美国二十年,我们的管理水平落后美国至少三十年。而最终决定发展速率的恰恰是我们的死穴---低劣的管理水平。低劣的管理水平的形成的原因有着深厚的背景和多方面的原因。
系统分析工作是解决一个问题的工作,目标是将一个对计算机应用系统的需求转化成实际的物理实现,其中复杂就复杂在实际的面太多。在系统分析过程之中注意问以下的问题,可能会所进行的系统分析设计工作有帮助。
(1)您所完成的系统目的是什么?注意不是功能要求,而是目的.也就是为什么要建设、为什么要现在建设。在考虑系统目的时,我更多的侧重于系统的最终目标考虑,因为一个系统不可能一下子完美,为系统留些余地。
(2)您所完成的系统有哪些方面参与,各方面的初衷是什么?那些人可能在系统建设中起重要作用,他们会采取什么样的态度?你对他们有多少影响力?中国IT行业的失败之一就是人"太年轻",一定要有领导的支持,否则完蛋。不要认为自己对他们会有多少影响力,即便有,也要尽可能的认为是决策者再影响他们。在中国,一个技术员,你算老几?说到这里我很悲哀。哪些人在系统中起重要作用并弄清楚他们的态度,这点十分关键。
(3)您的系统是否有一个明确的评价标准?最好从参与的各方面都进行考虑。不知道这样说对不对,在系统建设之前,对你的程序员、对你的领导要有至少不同的两种评价。
(4)你的系统设计思想是什么?是否能够得到各方面的认可。如果高明,对领导、对程序员都采用引导,得到认可的最好办法,就是让他们认可他们自己的想法。
(5)你对参与系统设计开发的人员了解吗?他们的特长在哪里,是否愿意与你合作,为什么?你对他们有足够的影响力吗?软件发展到一定的程度,不是编程,不是数学,而是管理。
(6)你的系统开发计划是否完善?你的计划表有明确的阶段吗?任何一阶段都应该怎样完成?如何对这一阶段完成的情况进行评价?
(7)你对所采用的系统开发方法以及工具是否熟悉?你的夥伴是否熟悉?事实上,不是每种好的工具都要使用,也并不一定都要他们熟练掌握。提醒诸位一句,当你将方案做得可以不依赖某个程序员,你在程序员面前就无信任可言,因为从此程序员将受到更大的生存压力。我坚决不在公司使用rose。
(8)你所完成的系统是否有原型?计算机的或者物理的。

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

本文转自BlogJava 新浪blog的博客,原文链接:如何成为好的系统分析员,如需转载请自行联系原博主。

相关文章:

  • 分布式监控系统Zabbix3.2给异常添加邮件报警
  • 如何保证用户密码安全
  • Lintcode123 Word Search solution 题解
  • The Little Prince-12/08
  • React中路由传参及接收参数的方式
  • 移动硬盘做pe启动盘
  • Java爬虫——人人网模拟登录
  • 服务器小白-MYSQL基础安装配置
  • [译] 听说你想学 React.js ?
  • 学习CSS的思路(转)
  • Js基础知识学习
  • 对PostgreSQL源代码中的is_pushed_down的理解
  • Readings in Databases
  • 使用python处理selenium中的鼠标悬停问题
  • nginx 防火墙、权限问题
  • 【140天】尚学堂高淇Java300集视频精华笔记(86-87)
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • Cumulo 的 ClojureScript 模块已经成型
  • iOS小技巧之UIImagePickerController实现头像选择
  • JavaScript类型识别
  • maven工程打包jar以及java jar命令的classpath使用
  • mongodb--安装和初步使用教程
  • PhantomJS 安装
  • Phpstorm怎样批量删除空行?
  • 初识 webpack
  • 前端自动化解决方案
  • 入口文件开始,分析Vue源码实现
  • 协程
  • Java数据解析之JSON
  • Python 之网络式编程
  • ​业务双活的数据切换思路设计(下)
  • #android不同版本废弃api,新api。
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (webRTC、RecordRTC):navigator.mediaDevices undefined
  • (附源码)ssm跨平台教学系统 毕业设计 280843
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • (转)Sublime Text3配置Lua运行环境
  • (转)微软牛津计划介绍——屌爆了的自然数据处理解决方案(人脸/语音识别,计算机视觉与语言理解)...
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • **CI中自动类加载的用法总结
  • .mkp勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .net通用权限框架B/S (三)--MODEL层(2)
  • ??在JSP中,java和JavaScript如何交互?
  • @Transactional 详解
  • [20180129]bash显示path环境变量.txt
  • [Git].gitignore失效的原因
  • [HJ73 计算日期到天数转换]
  • [HTML]Web前端开发技术29(HTML5、CSS3、JavaScript )JavaScript基础——喵喵画网页
  • [iOS]随机生成UUID通用唯一识别码
  • [leetcode] Multiply Strings
  • [LeetCode] Ransom Note 赎金条
  • [LuoguP1141]01迷宫