如何才能成为一名优秀的系统分析员

prettyxx 2003-08-19 02:09:42
提这个问题的时候,我真的有一种很庄重的感觉,因为我在很认真的考虑我今后要走的路和我的梦想
我是一个女生,非计算机本科,但我知道,我喜爱计算机,喜爱编程,为此,我一直在努力,虽然困难重重,收效不大:(,但是我还在努力。
很喜欢到网上看帖子,很多帖子都说女孩不适合做程序,确实让我一次又一次的迷茫,很多帖子说程序员吃青春饭,干不过30岁,让我一再迟疑,就这样,时间一年年流逝,我问自己,究竟想做什么?

我想成为一名优秀的系统分析员。

我现在在读在职软件工程硕士,虽然很多人说这个没有用,但我想,这可以给我一个专业背景,(我曾经一再受此之苦)而且,课程中所学的东西也不是一无是处,如果能够结合项目实践,应该会有不错的收效(虽然我现在还没有这样的项目实践机会,5555555555555)
有了这样的专业背景,我现在最缺乏的就是编程经验、项目经验,所以,我真诚的请教各位前辈,今后的路该如何走,如何才能一步一步的成为一名优秀的系统分析员,非常感谢^_^
...全文
445 128 打赏 收藏 转发到动态 举报
写回复
用AI写文章
128 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangzhenhai 2004-02-06
  • 打赏
  • 举报
回复
很不错,啊,祝你成功.不过如果再让我选择一次的话,我是决不会来写程序.

要搞系分,还是开始学数据结构,数据库原理,操作系统原理,OO理论,总有一天这些会影响你的思考方式,到了一定时候,你就是会思考的人了,只有会思考的人,才是系统分析员.
prettyxx 2004-02-04
  • 打赏
  • 举报
回复
结贴了,感谢大家对我的帮助,我想,我会在自己的努力中不断进步,祝愿这里所有的朋友,好梦成真
mayuming513 2004-01-31
  • 打赏
  • 举报
回复
很经典的帖子,但今天看的脖子都快歪了:) 改天来写写我的想法吧!
Mac112 2004-01-31
  • 打赏
  • 举报
回复
从程序员做到项目经理
majunjie74 2004-01-31
  • 打赏
  • 举报
回复
光想是不会进步的,“做”才最为关键。
如果没有现实项目,可以就一个熟悉的领域按照标准方法做一个虚拟项目。在做的过程中体味软件方法论。再而总结思路和方法。
kinglion 2004-01-31
  • 打赏
  • 举报
回复
找个小公司去工作,这样最有可能接触到项目的整个过程。但是要警惕,不要沾染小公司的某些不好的做法和方法。锻炼观察能力,思维的敏捷性,沟通能力,文字表达能力;学习程序的设计模式和方法,并运用于实践中。咱目前自己还在对自己的能力评估ing~
swinging 2004-01-30
  • 打赏
  • 举报
回复
看得好累。
mengbo 2004-01-30
  • 打赏
  • 举报
回复
我觉得楼上的各位兄弟姐妹们,把几个角色的职责都往系统分析员身上推了,还包括了项目经理、业务分析员、系统设计师的职能!
当然在小项目中是完全可能一个人包揽这些角色的,但我个人觉得稍微大一点的项目都应该分一分,至少有一个BA(项目经理、业务分析)、SA(系统分析、设计)!BA负责业务、SA负责设计开发!我觉得很难有一个人在两个领域中都能够做得很出色!

愚见仅供参考!
shizi_mhy 2003-12-17
  • 打赏
  • 举报
回复
mark
chenlong9610 2003-12-11
  • 打赏
  • 举报
回复
我谈谈我的经历吧:我从原来的公司出来(以前我是程序员);到另一家公司应聘,进去之后。悲,他们没有系统分析,因为我做了三年多的软件设计,对系统分析有一些了解。
后来老总要我带队,可做程序,不能跳过一步啊,没法子,我硬着头皮做了系统分析!在此以前,我从来没有学过软件工程,项目管理!
后来,分司招了一此刚毕业的计算机专业的人员,我开始接触软件工程,项目管理!再结合我以前程序设计、实施的经验,我的软件工程和项目管理学行很快,我能够画简单的数据流图,业务流程序图!我感觉自己的水平太底了,能力不够!我的知识不够广,我了解的各种语言的优势太少了(也就是说,要了解各种开发语言的功能,各种语言实现功能的能力)。
业务知识,需求分析,系统分析!一个系统分析员的基本功,知识面和能力(硬件,软件,网络,开发语言,财务知识,企业管理知识,沟通能力,分析能力,判断能力,经验,实施)!对系统分析员的要求很高,而这些方面往往是决定工程成败的因素!
hufayuzhou 2003-12-11
  • 打赏
  • 举报
回复
转贴
一个普通IT人的十年回顾一小段:
作者: CSDN 网友Bitfan (金旭亮)
http://www.xiaohui.com

对教育的反思与教书生涯

2002年下半年,我参加了北京高校青年教师岗前培训。一位杜教授的两堂课让我印象深刻,其中两句话让我深深震动:

第一句话:我是一个教书匠,教书匠好啊,好就好在“匠心独运”!

第二句话:做什么工作都要达到变魔术的境界!

是的,作为一名教师,就必须起到一个传声筒与放大器的作用,将人类最聪明的人探索世界所得到的知识予以拓宽发展,以便让更多的人能够掌握这些知识并进而应用于实践,从而推动人类的不断进步。

作为一名计算机专业的教师,就要努力把先进的计算机技术以尽可能高的效率传授给广大的学生,引导他们直接面对真实的软件世界,而不是向他们硬灌各种各样的理论知识,强迫他们去死记硬背以应付考试。

我是一个小人物,才低学浅,但我真的认为高校计算机教育存在严重的问题。我在打工期间的开发经历,以及阅读国外相关资料的时候,发现学校中教的和社会上用的差得太远!都已经是什么时代了,许多大学还设立Foxpro课程,难道就不能直接用现代主流的数据库如Oracle,SQL Server,哪怕是Access也好,来讲授数据库知识?还有所谓的计算机等级考试,呵呵,过了三级学生的我见过不少,但他们真正对软件,对计算机又理解多少?

在中国甚至于升职称也要考计算机,我看了一本职称计算机考试教材,里面几乎原样照搬计算机原理课程中的相关章节,弄得我给搞艺术的大嫂讲了一个小时的二进制与八进制、十六进制的转换方法,她还是弄不太清。我都泄气了,对啊,他们搞艺术的,有必要去分清二进制的10与十进制的2有何分别吗?他们八辈子也用不上。但是考试用得上,呵呵,又是中国特色。

拿C++来说,我讲过C++课,许多的国内教材对C++语法下了大功夫,却对体现了C++精华的STL只字不提,对代码背后所体现的软件开发思想与方法更是视而不见,我用C++也编过不少程序了,说句实话,我用到的特性不到C++的三分之一!于是就出现了这种怪现象,许多学生考试可以拿八九十分,给他一个简单的实际问题他却不知如何下手!

还有UML,现在好象很火的样子,我们读研时就开了这门课,讲句实话,当时这门课我就没听懂,可后来我尝试着用C++用面向对象的方法来编程序,然后,由代码倒推回UML类图,一下子就明白了,原来UML只不过是一种描述面向对象系统的符号罢了,如果学生没进行过真正的OOP,那就是为了学UML而学UML,根本就本末倒置。

还有软件工程,我的感觉,一个人如果没写过一万行以上的程序,他看软件工程书就同看政治书差不多,每句都对,呵呵,就不知道为什么对。我完成了那个几万行的VB程序之后,再回过头看看理论,真是句句是真理!每个理论背后都是大量实践经验的总结。

回想我做软件的体会,我发现所有的知识都是一个完整的体系,根本就无法区分哪些知识是本科的,哪些知识是研究生课程。于是,一种想法产生了,我主讲程序语言类的课程,那我就直接以真实的软件开发过程为主线,实践中需要什么我就讲什么。讲C++/Java,我就抛开了指定的教材,C++我讲了STL,Java我讲了OOAD,两者我都讲了用Rose进行双向工程,引导学生去学UML,一开始就用UML去描述自己开发的程序,何必浪费大量的时间去学结构化的编程方法?

我现在简直成了面向对象技术的布道者,我下学期即将开设OOAD基础选修课,从实际项目中抽取典型的案例,讲UML,讲Rose,讲设计模式,讲软件体系结构,例子代码横跨C++/Java和.net下的开发语言(C#和VB.net),这对于我一个技术水平有限公司的董事长而言,实在有点不自量力,我鼻子上才插上几根葱,就想装大象?但我想,如果我能成功地激发出哪怕1%的学生的兴趣,能引导他们走向我认为是正确的方向,能启发他们思考,能直接面向真实的软件开发活动而不是学校的考试,就是我的成绩。我现在正在看引进的原版书籍---《设计模式解析》,时时击节赞叹!《设计模式》经典但难懂难用,而《解析》一书的两位作者既有丰富的从业经验,又对OOAD进行了深入的思索,真知灼见时时展露于书中,我现在刚看了这本书的80%,基本上可以用一个成语来描述这部书:深入浅出!

要做到深入浅出谈何容易!只有同时具备技术专家与文学作家素质的人才能做到!

反观我们国内的大量教材,还有大量的垃圾论文(包括硕士,博士的,本科的就算了,我看绝大部分根本不能称之为论文),全都是“浅入深出”,作者自己都未必明白,就东拼西凑,摆出个样子吓人。本来完全可以用大白话三言两语讲清楚让人明白的道理,有人专门要绕一大圈,专挑用高深的数学公式来表达,唯恐别人容易理解,显得他水平不高!呵呵,什么东西一沾上“数学”,立马身价百倍。我就听过一个北师大的一个在读博士说过:如果一篇博士论文中没有一个数学公式,根本就不算是博士论文。这句话对不对,大家可以多思索。我数学不好,没资格讨论数学,我的直觉:数学是工具,但如果为了发表论文等目的而故弄玄虚,为数学而数学,是不合道理的。中国的学术水平与现状,大家都心知肚明,不用我废话了。

现在每年都毕业大批的计算机专业学生,可其中真正具备扎实根基的可以很快胜任工作的我看只有5%(95%的学生不要扁我,不同意就当我在说胡话,我很瘦的,一扁就没了)。多年以来,我国高校计算机教育是按照计算机科学研究者来培养的,可事实上,有多少学生能从事计算机方面研究的能力?我看应分流,80%的学生按工程师方向来培养,20%的学生按研究者方向来培养,而且应大幅减少必修课的数量,计算机领域太深太广,样样都想教给学生,反而成了夹生饭,一个想从事硬件设计的学生和一个想从事软件开发的学生,能给他们一样的饭吃吗?学校应提供各种条件和资源去引导学生,激发学生的创造性与主动探索性,让他们去尝试,去发现自己的长处,最终找到最适合自己的发展方向。不这样做,中国软件后继乏人,没希望。

5.实践第一

2002年下半年,我和一个朋友去了北京郊区的一家杂志社,看到的情形让我震惊:在信息产业最发达的北京,这家杂志社还用人工查对杂志订单和款单,看着那按省来登记的几大本厚厚的客户登记本,工作人员需要手工来在其中查找相应的信息。这样的工作效率,这样的行业信息化水平!北京如此,全国又如何?

从这件事上,我看到了中国软件业的另一方面。一方面我们没有核心技术,另一方面,已有的技术又根本没推广没用好。追踪世界先进水平,对于我等这种水平的人来说,确实勉为其难,但将已有的技术用于解决实际问题,却是我们可以做的。如果中国各行各业都真正能通过进行信息化而提高生产效益,那中国不就从根本上强大起来了吗(象印度,IT一枝独秀,其他行业没有起色,我称之为跛足的国家,绝不能成为世界强国)?在扎实的社会基础之上,软件业不就有了更大的市场与发展潜力?中国许多行业的信息化水平非常低,而且中国地域广大,发展非常不平衡,有些地方信息化水平甚至为0!努力推动行业信息化,是我们这一代软件开发者的责任!而追赶国外先进水平,恐怕就不是一代两代程序员可以达到目标的,需要长期的努力。作为一名软件开发者,只能脚踏实地,哪怕你只做一个小小的MIS产品,也要尽力把它做好来。

于是,我开始了期刊发行系统的开发,这完全是自发的,没有任何资金投入,只有一种热情在支撑。我开始选择C++ Builder开发,做了几个月,完成了第一个版本,但我发现,我找不到足够水平的C++程序员进行合作开发,而且整个一个EXE文件,在体系结构设计上虽采用了分层分块的设计方案,但却是源代码级别的,要拆分成COM组件难度太大,不是一个人能完成的,于是中途流产。

2003年3月,我开始系统地学习.net,我吃惊地发现,我原来想在C++中实现的许多功能,比如对象串行化为XML,在.net中已有现成的类可用,.net更把OO的功用发挥到了极致,它的混合语言开发,它的反射机制,它的新的自识别的软件组件,以及强大好用的开发环境VS.net,都让我惊叹微软对开发者遇到的困难的深入把握,相比用C++开发,至少可以提高1/3的开发效率。于是一个新的想法产生了,我要把以前的产品用.net重写,利用.net强大的组件模型,将设计模式理论推广应用到组件级别,通过XML和反射机制建立一套可动态装配的软件生产流水线,实现象Dell直销PC那样的软件动态装配直销。只要建立好灵活可不断重构的系统架构,配以对业务领域的深入分析,逐步建立功能强大的业务组件仓库,就可以实现软件系统的动态装配。说干就干,我用VB,net重写了原先用C++编写的系统,将原先的一个EXE变为十几个DLL,而且这些DLL还会随着发展而不断地分裂,也有可能重新组合,利用Refractoring(重构)不断进化,最终形成一整套完备的行业软件组件库。做软件关键因素是变化,只有适应变化的系统才是有生命力的。

我用两个月的时间大体上弄清了.net平台下的主要类库,然后又用两个月的时间再次重新实现了期刊发行系统的C++版本的全部功能,到8月份我写这篇文章之时,第一个产品里程碑已经完成。同样的,除了需求是由另一个合作者去搜集的之外,几乎又是全部由我一个人包揽了所有的系统设计及编码工作!

毫无疑问,我自觉得新系统要比老系统可维护性强得多,真正实现了彻底的全组件化系统开发,计划再有一个月的界面美化,改正Bug,引用多线程提高运行效率,优化系统结构,就可以提供给用户试用了。市场如何,难说难测。

在开发过程中,我再次感到巨大的挑战,不光是技术上的,更是管理上的。人才是我最头痛的问题,没有一流的人才,哪来一流的产品?我们找不到足够水平的程序员一起合作(牛人哪屑于做这样一个小儿科的产品?)我们要走的路还很长。也许我们开发的产品是失败的,但我从来就没指望能用这赚钱,我只是尽一个软件开发者的责任而己,成败已不重要!人生不尝试,怎能体现人活着的价值?

jiejiedou 2003-12-11
  • 打赏
  • 举报
回复
TO:这里的所有所有的女程序员!!!!!
今年夏天我计算机软件专业大学毕业,自然而然地进了软件公司,研发部,职位就是程序员。
工作到现在5个月,加班时间至少3个月。掉头发,黑眼圈,低工资==这些困难在我来说都无所谓-----因为我做着我自己喜欢的工作。可是,让我痛心的是,由于公司方面以及团队领导的某些失策的方法导致本来一个高效率和睦融洽的团队开始解散。一个大型项目虎头蛇尾地结束了。至少在我来说我觉得是一事无成。同事说,中国很多软件公司都这样的。
所以,我考虑去一家国外的软件公司。我想学习别国的软件公司的管理方式。
然后, :*) 呵呵,为中华软件业的发展尽自己的微薄之力。
最后哦,我想我们这些算得上是凤毛麟角的女程序员能否啥时候聚聚呢?!呵呵,工作的,家庭的,很多的矛盾需要通过交流才可能摆平得更好哦。是么?
各位姐姐妹妹,孑孑豆在此有礼啦!!!:*)
jiejiedou 2003-12-11
  • 打赏
  • 举报
回复
请大家不要再把“一个普通IT人的十年回顾一小段”往上贴了,好不好?!
重要的是谈谈自己的经验!而且有两个人都贴了这个帖子。占用空间,浪费资源。不如把网址直接放上去就是了么!!!
netkid 2003-11-11
  • 打赏
  • 举报
回复
mark
prettyxx 2003-11-11
  • 打赏
  • 举报
回复
怎么做广告的帖子都来了,麻烦斑竹给删了好吗,谢谢
vblover2 2003-11-10
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/2099/2099242.xml?temp=.9233362
vblover2 2003-11-10
  • 打赏
  • 举报
回复
一个普通IT人的十年回顾一小段:
作者: CSDN 网友Bitfan (金旭亮)
http://www.xiaohui.com

对教育的反思与教书生涯

2002年下半年,我参加了北京高校青年教师岗前培训。一位杜教授的两堂课让我印象深刻,其中两句话让我深深震动:

第一句话:我是一个教书匠,教书匠好啊,好就好在“匠心独运”!

第二句话:做什么工作都要达到变魔术的境界!

是的,作为一名教师,就必须起到一个传声筒与放大器的作用,将人类最聪明的人探索世界所得到的知识予以拓宽发展,以便让更多的人能够掌握这些知识并进而应用于实践,从而推动人类的不断进步。

作为一名计算机专业的教师,就要努力把先进的计算机技术以尽可能高的效率传授给广大的学生,引导他们直接面对真实的软件世界,而不是向他们硬灌各种各样的理论知识,强迫他们去死记硬背以应付考试。

我是一个小人物,才低学浅,但我真的认为高校计算机教育存在严重的问题。我在打工期间的开发经历,以及阅读国外相关资料的时候,发现学校中教的和社会上用的差得太远!都已经是什么时代了,许多大学还设立Foxpro课程,难道就不能直接用现代主流的数据库如Oracle,SQL Server,哪怕是Access也好,来讲授数据库知识?还有所谓的计算机等级考试,呵呵,过了三级学生的我见过不少,但他们真正对软件,对计算机又理解多少?

在中国甚至于升职称也要考计算机,我看了一本职称计算机考试教材,里面几乎原样照搬计算机原理课程中的相关章节,弄得我给搞艺术的大嫂讲了一个小时的二进制与八进制、十六进制的转换方法,她还是弄不太清。我都泄气了,对啊,他们搞艺术的,有必要去分清二进制的10与十进制的2有何分别吗?他们八辈子也用不上。但是考试用得上,呵呵,又是中国特色。

拿C++来说,我讲过C++课,许多的国内教材对C++语法下了大功夫,却对体现了C++精华的STL只字不提,对代码背后所体现的软件开发思想与方法更是视而不见,我用C++也编过不少程序了,说句实话,我用到的特性不到C++的三分之一!于是就出现了这种怪现象,许多学生考试可以拿八九十分,给他一个简单的实际问题他却不知如何下手!

还有UML,现在好象很火的样子,我们读研时就开了这门课,讲句实话,当时这门课我就没听懂,可后来我尝试着用C++用面向对象的方法来编程序,然后,由代码倒推回UML类图,一下子就明白了,原来UML只不过是一种描述面向对象系统的符号罢了,如果学生没进行过真正的OOP,那就是为了学UML而学UML,根本就本末倒置。

还有软件工程,我的感觉,一个人如果没写过一万行以上的程序,他看软件工程书就同看政治书差不多,每句都对,呵呵,就不知道为什么对。我完成了那个几万行的VB程序之后,再回过头看看理论,真是句句是真理!每个理论背后都是大量实践经验的总结。

回想我做软件的体会,我发现所有的知识都是一个完整的体系,根本就无法区分哪些知识是本科的,哪些知识是研究生课程。于是,一种想法产生了,我主讲程序语言类的课程,那我就直接以真实的软件开发过程为主线,实践中需要什么我就讲什么。讲C++/Java,我就抛开了指定的教材,C++我讲了STL,Java我讲了OOAD,两者我都讲了用Rose进行双向工程,引导学生去学UML,一开始就用UML去描述自己开发的程序,何必浪费大量的时间去学结构化的编程方法?

我现在简直成了面向对象技术的布道者,我下学期即将开设OOAD基础选修课,从实际项目中抽取典型的案例,讲UML,讲Rose,讲设计模式,讲软件体系结构,例子代码横跨C++/Java和.net下的开发语言(C#和VB.net),这对于我一个技术水平有限公司的董事长而言,实在有点不自量力,我鼻子上才插上几根葱,就想装大象?但我想,如果我能成功地激发出哪怕1%的学生的兴趣,能引导他们走向我认为是正确的方向,能启发他们思考,能直接面向真实的软件开发活动而不是学校的考试,就是我的成绩。我现在正在看引进的原版书籍---《设计模式解析》,时时击节赞叹!《设计模式》经典但难懂难用,而《解析》一书的两位作者既有丰富的从业经验,又对OOAD进行了深入的思索,真知灼见时时展露于书中,我现在刚看了这本书的80%,基本上可以用一个成语来描述这部书:深入浅出!

要做到深入浅出谈何容易!只有同时具备技术专家与文学作家素质的人才能做到!

反观我们国内的大量教材,还有大量的垃圾论文(包括硕士,博士的,本科的就算了,我看绝大部分根本不能称之为论文),全都是“浅入深出”,作者自己都未必明白,就东拼西凑,摆出个样子吓人。本来完全可以用大白话三言两语讲清楚让人明白的道理,有人专门要绕一大圈,专挑用高深的数学公式来表达,唯恐别人容易理解,显得他水平不高!呵呵,什么东西一沾上“数学”,立马身价百倍。我就听过一个北师大的一个在读博士说过:如果一篇博士论文中没有一个数学公式,根本就不算是博士论文。这句话对不对,大家可以多思索。我数学不好,没资格讨论数学,我的直觉:数学是工具,但如果为了发表论文等目的而故弄玄虚,为数学而数学,是不合道理的。中国的学术水平与现状,大家都心知肚明,不用我废话了。

现在每年都毕业大批的计算机专业学生,可其中真正具备扎实根基的可以很快胜任工作的我看只有5%(95%的学生不要扁我,不同意就当我在说胡话,我很瘦的,一扁就没了)。多年以来,我国高校计算机教育是按照计算机科学研究者来培养的,可事实上,有多少学生能从事计算机方面研究的能力?我看应分流,80%的学生按工程师方向来培养,20%的学生按研究者方向来培养,而且应大幅减少必修课的数量,计算机领域太深太广,样样都想教给学生,反而成了夹生饭,一个想从事硬件设计的学生和一个想从事软件开发的学生,能给他们一样的饭吃吗?学校应提供各种条件和资源去引导学生,激发学生的创造性与主动探索性,让他们去尝试,去发现自己的长处,最终找到最适合自己的发展方向。不这样做,中国软件后继乏人,没希望。

5.实践第一

2002年下半年,我和一个朋友去了北京郊区的一家杂志社,看到的情形让我震惊:在信息产业最发达的北京,这家杂志社还用人工查对杂志订单和款单,看着那按省来登记的几大本厚厚的客户登记本,工作人员需要手工来在其中查找相应的信息。这样的工作效率,这样的行业信息化水平!北京如此,全国又如何?

从这件事上,我看到了中国软件业的另一方面。一方面我们没有核心技术,另一方面,已有的技术又根本没推广没用好。追踪世界先进水平,对于我等这种水平的人来说,确实勉为其难,但将已有的技术用于解决实际问题,却是我们可以做的。如果中国各行各业都真正能通过进行信息化而提高生产效益,那中国不就从根本上强大起来了吗(象印度,IT一枝独秀,其他行业没有起色,我称之为跛足的国家,绝不能成为世界强国)?在扎实的社会基础之上,软件业不就有了更大的市场与发展潜力?中国许多行业的信息化水平非常低,而且中国地域广大,发展非常不平衡,有些地方信息化水平甚至为0!努力推动行业信息化,是我们这一代软件开发者的责任!而追赶国外先进水平,恐怕就不是一代两代程序员可以达到目标的,需要长期的努力。作为一名软件开发者,只能脚踏实地,哪怕你只做一个小小的MIS产品,也要尽力把它做好来。

于是,我开始了期刊发行系统的开发,这完全是自发的,没有任何资金投入,只有一种热情在支撑。我开始选择C++ Builder开发,做了几个月,完成了第一个版本,但我发现,我找不到足够水平的C++程序员进行合作开发,而且整个一个EXE文件,在体系结构设计上虽采用了分层分块的设计方案,但却是源代码级别的,要拆分成COM组件难度太大,不是一个人能完成的,于是中途流产。

2003年3月,我开始系统地学习.net,我吃惊地发现,我原来想在C++中实现的许多功能,比如对象串行化为XML,在.net中已有现成的类可用,.net更把OO的功用发挥到了极致,它的混合语言开发,它的反射机制,它的新的自识别的软件组件,以及强大好用的开发环境VS.net,都让我惊叹微软对开发者遇到的困难的深入把握,相比用C++开发,至少可以提高1/3的开发效率。于是一个新的想法产生了,我要把以前的产品用.net重写,利用.net强大的组件模型,将设计模式理论推广应用到组件级别,通过XML和反射机制建立一套可动态装配的软件生产流水线,实现象Dell直销PC那样的软件动态装配直销。只要建立好灵活可不断重构的系统架构,配以对业务领域的深入分析,逐步建立功能强大的业务组件仓库,就可以实现软件系统的动态装配。说干就干,我用VB,net重写了原先用C++编写的系统,将原先的一个EXE变为十几个DLL,而且这些DLL还会随着发展而不断地分裂,也有可能重新组合,利用Refractoring(重构)不断进化,最终形成一整套完备的行业软件组件库。做软件关键因素是变化,只有适应变化的系统才是有生命力的。

我用两个月的时间大体上弄清了.net平台下的主要类库,然后又用两个月的时间再次重新实现了期刊发行系统的C++版本的全部功能,到8月份我写这篇文章之时,第一个产品里程碑已经完成。同样的,除了需求是由另一个合作者去搜集的之外,几乎又是全部由我一个人包揽了所有的系统设计及编码工作!

毫无疑问,我自觉得新系统要比老系统可维护性强得多,真正实现了彻底的全组件化系统开发,计划再有一个月的界面美化,改正Bug,引用多线程提高运行效率,优化系统结构,就可以提供给用户试用了。市场如何,难说难测。

在开发过程中,我再次感到巨大的挑战,不光是技术上的,更是管理上的。人才是我最头痛的问题,没有一流的人才,哪来一流的产品?我们找不到足够水平的程序员一起合作(牛人哪屑于做这样一个小儿科的产品?)我们要走的路还很长。也许我们开发的产品是失败的,但我从来就没指望能用这赚钱,我只是尽一个软件开发者的责任而己,成败已不重要!人生不尝试,怎能体现人活着的价值?
tianwb 2003-11-09
  • 打赏
  • 举报
回复
虽然我还不是系统分析员,我认为,首先,做一个优秀的程序员,具有坚实的编程功底、丰富的经验,要使自己具有合理的知识结构,不光是精通几门语言,还要具有良好的语言能力、文字表达能力,以及技术的全面性。其次,要具备全局观念,不必太注重细节。作为用户和程序员之间的中介,既要有面向用户的思想,从用户的角度思考,又要站在技术的高度上,分析技术上的可行性及难易程度。最后,你应该有一个好的团队,这个团队即能攻坚拔寨、又能作好基础工作,完全融入这个团队,相信他们。
thur 2003-11-06
  • 打赏
  • 举报
回复
TO SXZZ:
希分一定是技术角色
sxzz 2003-11-06
  • 打赏
  • 举报
回复
还系分本来面目。
系分是技术角色还是管理角色,我看许多人在这点上还没分清,系分的本职是什么?
思考中……
加载更多回复(108)

1,265

社区成员

发帖
与我相关
我的任务
社区描述
软件工程/管理 管理版
社区管理员
  • 研发管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧