Python语言项目总结

Python语言项目总结

  2012年12月13日夜, 在某任务发布网站接到一个小活, 这里对于任务网站以及其他信息全部省略, 避免软文嫌疑, 经过5天的努力后项目顺利通过验收。次日, 经朋友介绍又开始着手一个小项目, 此时是19号, 22号晚该项目宣布失败。两个项目的成员, 笔者自己。


这里不说项目内容, 只说项目的一些体会。


一、项目启动前的准备工作
    这两个小项目客户都没有对代码的所用的语言加以要求, 客户一要求要尽快完成并且软件运行要稳定, 客户二的项目有些棘手, 因为项目的成功和失败不掌握在我手里, 是有关广告推广的一个软件。
   
    1>. 确定所使用的语言
        对于这两个项目我使用的都是Python语言, 一是因为笔者对Python语言较为熟悉, 二是项目较小, 对数据处理的速度要求也并不高, 只是为了用软件替代重复的手动工作。
       
    2>. 工欲善其事, 必先利其器
        除了开发环境的准备外, 一个人的项目也要做好版本控制, 及时提交进行备份, 避免代码的意外发生, 选择并使用好一个顺手的版本控制管理工具是每个开发者都应该具备的能力, git、svn等任你选。 此外还有各种项目管理工具, 感觉需要就提前准备好。
       
    3>. 明确项目需求
        需求不明确就直接进行编码那是不明智的选择, 直接编码项目过程中不知道需求变动多少次, 可以以单位n进行计算, 因此在需求不明确的情况下就开发编码即使客户需求变动频繁开发者也有很大一部分责任。
             
二、如何避免项目过程中需求频繁变动
    在联系到客户时客户就已经将软件的需求和我说了一遍, 但是并不详细, 只是大致的描述了软件所需的功能, 用户中途需求频繁变动是个很常见的问题, 也是千万开发人员最不想面对的问题。 我听说过一个笑话, 说杀死一个程序员很简单, 把需求改三遍就行了。 当然, 这不是说开发人员怕需求变动, 而是感觉无谓的变动简单就是在浪费大家宝贵的生命, 为什么客户就不能提前把需求一次性描述清呢? 笔者认为, 可能有以下几点原因:


        ①. 客户不懂技术, 他只能将自己想要的功能描述清楚, 并且从决定找人开发这个软件到找到开发人员这个过程所考虑的时间一般不会太长, 在这个过程中很少有客户认真分析并把所需的功能全部考虑彻底再联系开发者, 甚至他不会想着去写一个需求文档交给你 ;
       
        ②. 客户会认为软件开发者是万能的, 他们会把软件开发的漂漂亮亮 ;
   
        ③. 把大致软件需求大致描述后客户不会把这件事抛到脑后, 因为这直接和他口袋里的RMB有关, 当他闲下来喝茶的时候他也会想着这个软件开发的怎么样了, 以后打算怎么使用这个软件之类的问题, 忽然, 客户一拍脑门, 对了, 这个功能不如改成这样, 这样我使用时肯定会更方便怎么怎么样, 然后... 就都知道然后了。
       
    笔者是如何处理需求频繁变动的问题的:
        对于需求变动, 我们一般不可能直接对用户说一旦需求确定, 不允许再变动需求, 这样是不科学的, 除非你确定以后坚决不会再和这个客户打交道, 也不指望下次他再找你开发软件。
       
        笔者的做法:
            ①. 从客户那得到需求后再自己整理遍需求并得到用户确认
                笔者的这两个客户都没有给笔者相应的需求文档, 只是通过电话或QQ聊天告诉我软件需求的功能, 当客户将需求说完后笔者将这些需求整理并写成一份软件功能需求设计文档交给用户看, 看看是否漏掉了某个功能或者哪个功能设计的不够合理。 一般来说, 对于一些用户描述模糊的需求, 或者在项目过程中可能变动的可能性最大的需求再这一步用户就会提出。
               
            ②. 给用户最大的DIY空间
                我们不知道客户对软件的使用习惯, 尤其是在UI这块, 有可能你设计的很满意的一个界面, 设计完成后客户看过会让你这里调整下, 那里调整下, 这个过程是个痛苦的过程, 就像你自己亲手设计的一件完美的艺术品现在就要被不懂艺术的人"践踏"一样, 心里一定很不舒服。 这里我觉得我们不应该埋怨用户不懂"艺术", 而是每个人的使用习惯不同, 这是实际情况, 就像我们喜欢使用快捷键, 不喜欢拿个鼠标一点点的点击, 而普通用户才不会去记这些快捷键, 他们觉得鼠标点更方便, 你能让用户放弃使用鼠标而全部改用快捷键或者更干脆点使用命令行?
               
                笔者首先询问了客户对于软件界面是否需求自己进行设计, 如果客户需要的话, 趁这个时候你可以去分析下项目了, 如果客户说你们设计就行, 我对界面没有要求。 那么这时也要注意, 是真没要求吗? 客户这样说可能是平时比较忙, 没有时间来自己个性化界面, 二是怕自己不懂设计, 如果自己设计, 设计出来后被人笑话, 以后想找我们再修改也不好意思。

[1] [2] 下一页

  • 上一篇文章:
  • 下一篇文章:
  • Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有