别人总觉得是在显吧,干脆把这个项目认为是小项目了,不知道把这个项目是小了,别人会不会又觉得又显吧了?说大也不行、说小也不行,也的确没招了。

我想主要把项目里遇到的问题分享给大家一起探讨,也并不是为了什么显吧什么的,希望大家用一个正确的心态阅读此文章,希望有更多的朋友把更大软件项目的经验分享给大家,让大家知道一下,大型软件项目里都会遇到什么问题,如何解决才好,我们平时做些什么准备工作比较好?
有的时候20个功能模块,也并不能代表工作量有多少,其中有一个模块是进销存,有一个模块是工程管理,就这么2个模块就可以足够搞死人了,一个完整的进销存要多少功能?多少开发量?一个相对完整的工程管理模块,有多少工作量?所以模块的数量也并不能代表整个项目的工作量,只是一个参考而已。
【一】行业知识积累、开发积累方面 
01. 无行业知识积累 -  哪个行业,都有哪个行业的一整套的业务流程、业务逻辑,这些业务能充分的理解、深入的分析,都需要一个过程,不是一天两天就可以搞定,就成为行业专家了。
02. 没有稳定的开发平台积累 - 开发一个大型的软件项目,往往需要一个稳定的开发框架,若没有稳定的框架、又要组织一大堆人来开发软件项目,阵脚很容易乱套,整个项目也容易凌乱,而且一个稳定的开发平台的积累,也是需要一个过程,除非是有顶尖高手能把以前的积累贡献出来,例如B/S的网页框架、添加、修改、列表、分页、查询、打印等等的一个规范的处理模式。
【二】建建设、分工协调方面 
03. 团建建设匆忙 - 就像一个足球队,不是1天2天就能建设好,一个分工明确、工作效率比较高的团队不是那么短时间就可以组件好的,都需要一个磨练的过程。
04. 开发人员不稳定 - 哪个IT公司,人员稳定的,都比较难做到,往往项目里的一些员工眼看着就要辞职什么的,心都没在工作上,怎么可能做出像样的程序模块呢?
05. 人员配备不足 - 哪个公司也不会在没有固定项目的前提下,白养着一大帮人,老板也承受不了这样的风险,IT软件人员的开支相对比其他行业高一些,例如洗脚店。
06. 没有测试人员 - 软件项目,没有测试人员,就是丰田车子一样,虽然看上去很美好,但是很多问题,没有充分测试好,开发人员天天看着自己的程序,也麻木了,一般找不出自己的问题。
07. 没有美工配备 - 现在用户的要求也都比较高,光靠程序员总难做出漂亮的页面,功能再强大,美工设计不过关,还是比较难让客户满意。
08. 资深开发人员太少力量不足 - 虽然开发人员有好几个,但是大多数是菜鸟,一般对项目的推动力够,进展缓慢,虽然资金上是省了一些,但是周期会拉很长,资深的开发人员要价高一些,虽然眼前有项目,但是项目开发好了,这些人干什么?辞退?若不辞退,没几个月公司就耗不起了,人员开支太大了。
【三】开发过程方面 
09. 客户的要求也不简单 - 现在能搞百万级的软件项目的公司,一般也不是菜鸟公司,也很有想法,管理也是蛮有套路的,你开发的软件,必须要能经得起客户的折腾,很多很多细节也不是对付就可以了,一对付,客户也不让啊,满足客户的N多需求,就不像是20个功能模块那么简单,甚至是开发200个模块一样难。
10. 配套设计、配套文档跟不上 - 虽然客户要的是软件功能,但是还有很多环节,例如项目的验收、付款等等,都需要有配套的文档,配套的设计文档,人员之间的交流,也需要很多文档,开发人员往往不善于写文档,这当然也跟我们的水平有关系的,再加上项目费用控制,又无法招聘N多的人员来写配套文档,连最底的正常工作使用上的测试环节也不过关,更难写配套的文档了,文档一整理,一个人花费了几个月了,打印出来就是上千页,每次更新、调整,都需要很多精力花费在这个上。
【四】项目管理方面 
11. 项目资金到位不及时 - 一般大的软件项目,资金及时到位都不容易,项目又经过了好几手,往往需要一个比较长的周期,这时项目的前期就无法有充足的资金去分配,无法招聘到合适的开发人员,项目的进展也会缓慢一些。
12. 管理与开发脱节 - 一般这样的项目是异地开发,公司的领导又不会亲自到现场去管理,往往是在异地进行指导管理,领导有领导的想法,领导有领导的做法,但是实际项目有实际项目的困难,一般领导的指挥与决策与实际项目的情况有些脱节,甚至为了满足领导的项目,大家还需要折腾一些额外的事情,很累。
13. 指手画脚的人也多 - 这么大一个项目,各级领导都有独特的意见建议,项目承包放的意见建议、项目承建方领导的意见建议,其实绝大部分人只是嘴巴上说说,对项目几乎没有实质的价值,因为干活都需要我们自己来干,他们又不会指点细节、解决难题的,基本上都是官场上的应付。
14. 项目经理的沟通协调不过关 - 若项目经理负责的事情过多了,他精力也会被分散,很可能会抓不主重点,例如,项目的架构是这个人负责,项目的难题解决这个人负责,项目的美化也这个人负责,项目的人员招聘也这个人负责,反正项目里的,能负责的,都这个人负责了,往往跟领导的沟通会被淡化,与客户的沟通也会被淡化,因为精力是有限的,用在别的地方过多了,沟通协调上就容易出问题了。
【五】项目工作量、难度评估方面 
15. 项目的难度、工作量评估不准 - 往往项目的前期,就看那么20个模块,每周做一个模块,5个人来做的话,不是1个月就可以搞定了吗? 那我给你4倍的时间,4个月总可以了吧?听听也是有道理,给了4倍的时间,其实,问题出在“每周做一个模块”上,其实每个月做一个模块都难,项目的难度复杂度被低估了,评估项目的复杂度,往往也有一些方法,但是更可靠的是项目经验,例如我们老板亲自评估往往能估得更准一些。
16. 小项目能做得又快又好未必大项目能做得好 - 小项目的要求都很低,甚至是文档都不需要,但是大项目,不只是工作量大,复杂度、需要协调沟通解决的事情会是很多很多,各种细节的处理要求等等都会超出小项目很多很多,例如10个项目的难度、工作量,很可能没一个大型项目的工作量高,是需要在能力上的质的突破,不只是量的突破。  
17. 项目除了软件开发,还需要其他很多环节 - 例如我们开发好,给客户确认时,往往客户又有其他事情在忙,等客户不忙了,我们又在忙修改错误,所以一个不成熟的东西,想真正做好,前期的准备工作上往往需要投入巨大的人力物力,否则,跟客户的沟通确认的周期就你无法想象的漫长,因为你忙时客户空,客户空时你忙,甚至是你忙时客户也忙,所以项目的周期往往被没有经验的开发人员评估得很短,实际上需要一个漫长的过程,小公司很容易被耗死。
【六】薪酬待遇方面 
18. 项目很容易进入恶性循环 - 项目没能按时完工,客户的款不会按时支付,公司的费用控制会严格,各种项目中的开支都不会按时发放,甚至会进行制裁,例如6个月的交通费不给你报销、6个月的电脑补贴不给你,6个月的通讯补贴不给你,不只是你一个人,甚至整个团队的所有人员公司都会进行制裁,这时候大家想想,天天加班到12点,干得死去活来,也得不到公司的理解,那就更闹心了。 
19. 天天高强度的工作,一般人受不了 - 打工的毕竟不能跟搞革命的比,一个月半个月内天天加班到12点还能理解,但是一年到头都天天加班、又没加班费、又没出差补贴的情况下,难保证天天的工作效率都很高,人毕竟不是铁打的,是肉长的,该休息的时候还是需要休息。
20. 新人的待遇跟不上成长的步伐 - 刚来公司时往往很低的工资待遇也可以,但是随着水平的成长,往往需要稍微提高一些,否则时间长了,大家还是会产生跳槽的念头,毕竟你这里不给,别人有给更高薪资待遇的,往往工作1年后,就有几下了,与刚毕业时到处找工作找不到截然不同的处境了,现在开始在往熟练工人的方面迈进了。 
21. 大家看不到未来 - 人都需要有个希望,例如这个项目做好了,是否有重复利用的价值,是不是下一个单子就等在哪里了,你辛辛苦苦做了一年,看不到接下来的单子的希望,人难免也会有些失望,若一个辛苦做出来的项目,能卖出第2、第3、第4、、、、那大家也是干劲十足,毕竟变成产品了,对大家来说都是巨大的成就。
【总结】做软件项目没那么容易 
还好有多年的经验积累、有一股拼命的干劲、执著的追求、对软件的兴趣爱好,否则真的容易彻底崩溃。
真正做好一个大型的有质量保障的软件项目,都没那么容易的,若真的烧个30万-40万元就能把一个大型软件项目做好,若真的靠几个阿猫阿狗瞎折腾几个月半年就能搞定好,那估计很多大老板都愿意烧软件项目了,那干脆国家出钱烧个3000万,烧个数据库系统,再烧个4000万,烧出个操作系统算了,搞那么复杂干啥了。
随着年龄的增长,水平的提高,越来越不敢低估软件项目了,真的有那么容易吗?
将权限管理、工作流管理做到我能力的极致,一个人只能做好那么很少的几件事情。

转载于:https://blog.51cto.com/2347979/447844

去年一个百万级的小软件项目经验分享,20来个功能模块,项目不太好做有些棘手...相关推荐

  1. 去年一个百万级的小软件项目经验分享,20来个功能模块,项目不太好做有些棘手

    别人总觉得是在显吧,干脆把这个项目认为是小项目了,不知道把这个项目是小了,别人会不会又觉得又显吧了?说大也不行.说小也不行,也的确没招了. 我想主要把项目里遇到的问题分享给大家一起探讨,也并不是为了什 ...

  2. 一个老兵的linux学习和面试经验分享 【转载】

    文章出处:一个老兵的linux学习和面试经验分享 特别说明:本文为约9个月前老男孩linux培训内部师兄给师弟的经验分享,经过该同学同意,特此分享给所有博友. 学习和面试经验分享 大家好,非常高兴能在 ...

  3. 前端学习总结,经验分享,项目经验分享过程

    前言 来,和魔王哪吒总结一下,分享一下自己对前端学习总结,经验分享,以及写过的项目经验分享过程. 如果觉得还不错的话,浏览的过程中,需要您: 点赞,分享,评论 有钱的捧个钱场,没钱的捧个人场 技术实践 ...

  4. 2022级东南大学935计算机考研经验分享

    2022级东南大学935计算机考研经验分享 个人情况 政治 英语 数学 专业课 复试 总结 个人情况 我报考的是东南大学计算机科学与工程学院的电子信息计算机技术方向(专硕),初试总分396,排名第二. ...

  5. r语言 转录本结构及丰度_生信实操|一个生信素人的上道经验分享转录组测序(绘图篇)...

    转录组测序技术(RNA-seq)作为目前二代测序领域最普遍的技术手段,自从转录组测序问世以来,已经开发了数百种分析工具.根据转录组分析内容可大致将其分析流程分为比对,转录本组装,差异表达分析和差异基因 ...

  6. 两个月入门深度学习,全靠动手实践!一位前端小哥的经验分享

    两个月入门深度学习,全靠动手实践!一位前端小哥的经验分享   在当前社会,技术日新月异,一个全栈工程师不及时学习新知识,掌握AI技能,再过两年就算不上"全栈"了. 产品发烧友.前端 ...

  7. 项目管理系统软件平台主要有哪些功能模块内容

    不同的公司有不同的项目管理计划,不同的项目管理人员也有不同的项目管理工具. 而不同供应商厂家的项目管理系统在项目管理平台功能上有些许差异,区别在于项目管理的侧重点不一样,或者是项目管理的深度不一样. ...

  8. 2021上半年计算机技术与软件专业技术资格考试——中级软件设计师 经验分享

    2021上半年计算机技术与软件专业技术资格考试--中级软件设计师 经验分享 为什么考 软考资讯 自身情况 备考过程 考试 感想 为什么考 一开始好像是有些招聘需要一些专业证书,当时看到这个证书觉得可能 ...

  9. 基于 SAP BTP 平台的 AI 项目经验分享

    笔者在 SAP 成都研究院工作十五余年,也曾参加过一些基于 SAP Business Technology Platform(中文名称为 SAP 业务技术平台,以下简称 SAP BTP) 的 AI 服 ...

最新文章

  1. centos上安装anaconda并配置虚拟环境
  2. Apache访问日志详解
  3. Shell---判断(if)和分支(case)
  4. elementui中有导出组件吗_Element-ui组件库Table表格导出Excel表格
  5. adb和adbd详尽分析
  6. 物理综合:关于UDSM后端设计总结
  7. envi矢量图层外面有蓝色边框_晒晒装完的新房,头次见全屋浅蓝背景墙,加石膏线边框,温馨别致...
  8. 云南省2021高考成绩排名查询,2020年云南高考成绩位次排名及一分一段表查询
  9. BLE-NRF51822教程8-动态广播
  10. 有一种情人节叫,别人家的情人节......
  11. java spring启动和终止_springBoot jar启动以停止脚本参数详解
  12. oracle12c 清理归档,Oracle 12c中数据删除(delete)新特性之数据库内归档功能
  13. kotlin获取属性_Kotlin程序获取系统MAC地址
  14. 方法 手写promise_JS探索-手写Promise
  15. python控制台输入字符串作为参数_Python-如何将字符串传递到subprocess.Popen(使用stdin参数)?...
  16. FD.io VPP基本介绍-理解VPP软件架构
  17. 7-6 查找整数 (10 分)
  18. 类加载常见错误总结,写得非常好!
  19. 将hta包装为exe发布
  20. 数学分析 复合函数求导法则

热门文章

  1. 每天5道面试题(二)java基础
  2. 多台linux无密码访问之方法二
  3. 外贸网站制作 网页的宽度多少为合适
  4. UITableView取消选中颜色、常用操作
  5. 最新县及县以上行政区划代码(截止2010年12月31日)
  6. Linux 2.6 下通过 ptrace 和 plt 实现用户态 API Hook
  7. 【Git报错】 ! [rejected] master - master (fetch first)
  8. 跟我学PPStream局域网共享
  9. 第一次使用Android Studio时你应该知道的一切配置(三):gradle项目构建
  10. Jquery Ajax自定义无刷新提交表单Form