热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

金店管理系统的几个经验和教训

最近我带三个人的小组做金店管理系统,有收获也有教训。简单的总结一下。1、如果可以在做需求的时候先把UI做出来,或许可以更好的理解需求,架构

最近我带三个人的小组做金店管理系统,有收获也有教训。简单的总结一下。

1、如果可以在做需求的时候先把UI做出来,或许可以更好的理解需求,架构和设计做起来更加顺手,如果先从大的框架开始写,然后去考虑UI设计,效果会差很多。可不可以这样理解呢:做UI本身也是在做需求,更加容易的了解软件需要的功能和要求。能不能再以后的开发中把UI的要求做成需求分析的一部分呢?

2、做开发最重要的是约束和量化,所以基于接口的开发,强制性的属性尽量以构造函数的参数进行传入,而非写成成属性,这样可以增强约束性。

3、每个模块开发之前,最好有一个初步的讨论,让队员明白大体的轮廓,然后把讨论的内容书面化,整理成一个沟通文档。

4、把每个可以量化和规范化的东西,写成文档,贴在每个队员的面前,而非简单的沟通达成共识,别太相信每个人的记忆力和自觉性。把可以量化的规范,比如说代码命名规范,比如说界面设计的每个部位的大小和风格约束,数据库的字段设计要求等等,一条一条的规定下来。每个队员开发好一个模块后,交给另外一个队员进行检查。检查无误以后,再签入递交,确保递交的代码中没违背约束内容的出现。

5、对协作来说,可信赖的协作胜过协作本身,对编程来说尤其如此,可以减少团队成员,但是必须确保每个队员承诺的部分是已经实现的,且没有问题的。如果承诺的东西没有实现,就会影响到相应的环节,最后起到连锁反应,是一件十分可怕的事情。对于新手程序员来说,必须要求他们减少工作量,提高工作质量,确保自己做的每个部分简单的错误没有出现,或者错误不会重复出现,可以牺牲时间来提高质量,对于无法实现的功能,应该在附件中说明自己什么功能无法实现,以及自己的见解。

6、别期望每个团队成员都是积极进取,会主动寻找工作点。大多数团队成员会呈现惰性。而对我来说,我似乎更加喜欢自己埋头去做一些事情,这样对团队管理不利。每个团队成员每天必须明确的知道今天要做什么,要如何去做。每天结束之前必须要了解到他们完成了什么,同时如果可以做一个简短的总结,把他们的问题以合理的方式告知他们。

7、团队管理总重要的一点来自放权。任何一个管理项目的领导者,无论在工作经验上,还是对项目的认知上肯定要超越其他的组员。特别是有新手的组员,管理者会感觉新手做东西还不如自己去做东西。与其去给他们修改,还不如自己花费10分钟去做一下更加省事。而团队要想做大,首先要放权,要相信你的队员的成长能力,给他们成长的机会,眼睛里要容得沙子。让他们去做开发,并且给他们适当的建议。本身可以减少管理者的压力,还可以提高他们的水平。

8、尽可能的量化一些东西,只有量化的东西,才能适合大规模化和科学的管理。如果不能量化,就会从在懒惰和黑暗。

9、磨刀不误砍柴工工,尽可能的每天都有沟通,每段时间都要有沟通会议,了解每个队员的状态、情绪、心情、期许等等,解决他们的包袱和问题,统一认识。

10、分工要根据每个人的水平,提供难易参数,让他们从容易向难一步一步的开发,第一容易上手,第二容易提高。

11、如果可以,花高价钱请好的员工。


推荐阅读
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 并发编程:深入理解设计原理与优化
    本文探讨了并发编程中的关键设计原则,特别是Java内存模型(JMM)的happens-before规则及其对多线程编程的影响。文章详细介绍了DCL双重检查锁定模式的问题及解决方案,并总结了不同处理器和内存模型之间的关系,旨在为程序员提供更深入的理解和最佳实践。 ... [详细]
  • Python 异步编程:深入理解 asyncio 库(上)
    本文介绍了 Python 3.4 版本引入的标准库 asyncio,该库为异步 IO 提供了强大的支持。我们将探讨为什么需要 asyncio,以及它如何简化并发编程的复杂性,并详细介绍其核心概念和使用方法。 ... [详细]
  • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • IT项目管理过程中的方法、工具、技术
    工欲善其事,必先利其器。而对于一个软件开发项目,最重要的器就是方法,工具和技术。而这三要素中重要的又是方法论,方法是基础&# ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
  • 本文将介绍由密歇根大学Charles Severance教授主讲的顶级Python入门系列课程,该课程广受好评,被誉为Python学习的最佳选择。通过生动有趣的教学方式,帮助初学者轻松掌握编程基础。 ... [详细]
  • 本文详细介绍了Akka中的BackoffSupervisor机制,探讨其在处理持久化失败和Actor重启时的应用。通过具体示例,展示了如何配置和使用BackoffSupervisor以实现更细粒度的异常处理。 ... [详细]
  • SQLite 动态创建多个表的需求在网络上有不少讨论,但很少有详细的解决方案。本文将介绍如何在 Qt 环境中使用 QString 类轻松实现 SQLite 表的动态创建,并提供详细的步骤和示例代码。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
author-avatar
莫名其妙520a_416
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有