把牢骚写成文字,留给未来的自己做笑料!
自从毕业后来到现在公司,已经差不多一年了,总共参与了两个项目(还有一个失败了,不算)
,感概良多
1,公司管理很不规范,不过这个也可以看成很自由,工作自由,我喜欢,这个没话说
2,项目管理很不规范,项目的时间控制很差,通常都是一个项目三个月就应该完成,但是很可
能到下一个项目已经在做了,上一个项目还有一大堆的问题纠缠不清,很影响情绪,那么项目
应该怎么管理和控制才更好呢 ?
3,开发流程很有问题,一个项目下来,直接简单的划分模块就直接交给程序员去做了,没有作
具体的业务分析和设计,大家自己去分析和想吧,大家一拿到模块,一开始首先要做就是设计
数据库,然后就开始做对象和写CRUD,然后编写页面逻辑,只有做完了模块,自己才能知道自
己到底做的是什么,真是可悲啊!不过自己做软件的时间不长,经验也不足,但是我觉得既然
是做行业软件,行业的业务流程才是程序的核心,这个才是我们应该发大部分时间思考和设计
的部分,但是我们却把大部分时间用在写数据CRUD上了,一个项目如此,下一个项目也如此,
毫无乐趣,当我发现自己的手可以不经过脑袋就直接写出那些代码的时候,我想应该解决这个
问题了,没人可以告诉我真正的软件开发方式是什么,路漫漫其修远兮,我将上下而求索,探
索吧!
4,团队协作缺乏意识,虽然团队之间直接交流是最好的方式,但真的不喜欢大喊,XX的模块
BUILD不通过,快签入新版本,谁把这个签出了,快签入,我要用了,VSS简单好用,难在意识
。谁应该为这个负责 ?
5,学习气氛很缺乏,第一个项目出现的问题,第二个项目通常大部分都会出现,为什么就不能
组织一下大家一起来做一下总结呢 ?开发过程中每个人都会很多想法,这些想法是否需要一种
机制把它保留下来,以后做总结的依据和参考呢 ?为什么公用的代码每次都是copy paste,是
不是应该维护一个项目间可以复用的代码库 ?这些组织工作和维护通用代码库的工作应该由谁
来负责 ?
这些问题一直是自己很烦恼的问题,最近也做了一些思考和探索
1,项目管理的问题,着实是一个很大的问题,但从一个程序员的角度看,并不是自己能做好的
事情
2,开发流程的问题,最近看了一些OO建模的资料,从中得知,当开始一个项目之前,应该首先
分析业务需求,针对要解决的问题建模,即问题域建模,并进行用例建模,然后对建好的用例
进行鲁棒分析,以迭代的过程完成用例的完善,这是业务流程的静态角度考虑的,然后仍需要
对业务流程动态要求考虑进行交互建模,把系统架构的各个方面考虑周全,现在对OO建模的理
论只是了解一点皮毛,但仍然要实践一下,是否可以改善现在开发方式,起码自己要这样做,
有时候真的好像辞去现在的工作,找一个有这方面高手的公司工作,就怕别人嫌我资质差,下
个项目自己开始干吧,我要自己按如下要求构建项目:
业务流程设计:使用Relation Rose按照OO建模的要求一步步演进到可以直接产生业务对象
数据库设计 :使用PowerDesigner设计规范化的数据库设计
数据持久层 :使用ORM工具,远离讨厌的CRUD数据操作
界面开发简化:使用UIMapper,减少重复的工作
写负责的代码:实践TDD
先进的工具需要先进的理念来驱动,同时也带来先进的理念,也许可以在使用中提高自己吧!
3,自己总结和封装常用的代码吧,在总结和封装中提高自己,考虑使用开源的项目解决通用的
问题
我的选择:要么换环境,要么独善其身!