Agile and Scrum won't make you faster or more efficient:
Since you tagged this with agile and scrum, I thought I'd mention this: neither agile nor Scrum has as its goal faster or more efficient development as you ask for in your question. In fact, changing to these approaches involves a significant learning curve, but if practiced well contributes toward very low defect rates, software that meets the customer's needs, and a development process that responds to changing requirements. Used long enough, Scrum can provide good data about roughly how much work a specific team can get done in a period of time.
Still, you might benefit from some practices:
All that said, there are a couple practices that may want to try:
TDD is not easy to learn, especially on your own. See if you can attend a CodeRetreat or similar event.
If you aren't already using a modern software change management tool (SCM) like Mercurial, git, or subversion, get one and learn how to use it.
Get regular feedback from "customer"
If you don't already know (you didn't say in your post), you might ask yourself who you are making the software for. Can you frequently and regularly demo it to that person and get feedback? Find out what they want next and put those items at the top of the backlog.
Try to make your product incrementally useful
Rather than making big product-wide changes, add small useful amounts of functionality. Your design will drift but if you have sufficient automated tests in place you can refactor as needed.
I'm curious why you say you don't have enough to do some form of scrum?
You're both on the team, one of you can own the process and the other or both of you can be the product owner. You do your daily scrum so you can know what each of you are doing - picking the work from the backlog you agreed to do. And as you add members you'll already have an established practice they can integrate into.
You can work in 2-4 week sprints, do sprint planning,review, and retrospective regardless of the number of members.
发布评论
评论(2)
敏捷和 Scrum 不会让你更快或更高效:
既然你用敏捷和 Scrum 标记了这一点,我想我应该提到这一点:敏捷和 Scrum 都没有像你在问题中所要求的那样以更快或更高效的开发为目标。事实上,改变这些方法涉及一个重要的学习曲线,但如果实践得当,将有助于实现非常低的缺陷率、满足客户需求的软件以及响应不断变化的需求的开发过程。使用足够长的时间,Scrum 可以提供有关特定团队在一段时间内大致可以完成多少工作的良好数据。
尽管如此,您可能会从一些实践中受益:
尽管如此,有一些实践可能值得尝试:
TDD 并不容易学习,尤其是你自己。看看您是否可以参加 CodeRetreat 或类似活动。
如果您尚未使用现代软件变更管理工具 (SCM),例如 Mercurial,git,或 subversion,获取并学习如何使用它。
定期获得“客户”的反馈
如果您还不知道(您在帖子中没有说),您可能会问自己,您正在为谁制作软件。您能否经常定期向该人演示并获得反馈?找出他们接下来想要什么,并将这些项目放在待办事项的顶部。
尝试让你的产品变得越来越有用,
而不是在产品范围内进行大的改变,而是添加少量有用的功能。您的设计可能会发生变化,但如果您有足够的自动化测试,您可以根据需要进行重构。
Agile and Scrum won't make you faster or more efficient:
Since you tagged this with agile and scrum, I thought I'd mention this: neither agile nor Scrum has as its goal faster or more efficient development as you ask for in your question. In fact, changing to these approaches involves a significant learning curve, but if practiced well contributes toward very low defect rates, software that meets the customer's needs, and a development process that responds to changing requirements. Used long enough, Scrum can provide good data about roughly how much work a specific team can get done in a period of time.
Still, you might benefit from some practices:
All that said, there are a couple practices that may want to try:
TDD is not easy to learn, especially on your own. See if you can attend a CodeRetreat or similar event.
If you aren't already using a modern software change management tool (SCM) like Mercurial, git, or subversion, get one and learn how to use it.
Get regular feedback from "customer"
If you don't already know (you didn't say in your post), you might ask yourself who you are making the software for. Can you frequently and regularly demo it to that person and get feedback? Find out what they want next and put those items at the top of the backlog.
Try to make your product incrementally useful
Rather than making big product-wide changes, add small useful amounts of functionality. Your design will drift but if you have sufficient automated tests in place you can refactor as needed.
我很好奇你为什么说你没有足够的资源来进行某种形式的 Scrum?
你们都是团队成员,其中一个可以拥有流程,另一个或双方都可以成为产品所有者。你进行每日例会,这样你就可以知道每个人在做什么——从你同意做的积压工作中挑选工作。当您添加成员时,您已经拥有了他们可以融入的既定实践。
无论成员数量多少,您都可以进行 2-4 周的冲刺工作,进行冲刺计划、审查和回顾。
I'm curious why you say you don't have enough to do some form of scrum?
You're both on the team, one of you can own the process and the other or both of you can be the product owner. You do your daily scrum so you can know what each of you are doing - picking the work from the backlog you agreed to do. And as you add members you'll already have an established practice they can integrate into.
You can work in 2-4 week sprints, do sprint planning,review, and retrospective regardless of the number of members.