Agile Software Development with Scrum for Zero dollars you say – huh? Yes, software development with utmost quality is now possible with zero dollar investment. This has become a reality, with open source software for product development available over the internet.
I am listing out some software my team has used for more than a year to build a solid product with utmost quality. Each software listed below solves specific problem area and when these software collaborate in development environment, the results are amazing.
Every developer or for that matter an organization should set standards on quality of code they want to deliver to their customers. For example, a goal might be - A delivery is complete only if you have 90% code coverage, 100% automation with all unit and integration tests passed, zero defects and proper documentation. The software listed below help you define, monitor and report on your established goals. It also enforces you and your organization to follow development best practices to meet the stated goal.
I don't plan to get into details of these software as there are tons of reference material out there on each product to help you get started and running in no time. The best part is it's FREE.
Eclipse - IDE to develop applications in Java
Java - Java, a programming language
Junit - Helps with Test Driven Development
Hudson - Continuous Integration engine
Maven - A tool for building and Managing Java-Based projects
Subversion - An open source revision control system
EMMA - A Java code coverage tool
Checkstyle - A development tool to help programmers write Java code that adheres to a coding standard
Wiki - Software for easy creation and collaboration of documentation.
My team is using these tools in Agile Software Development with Scrum practices and above products have kept us honest in building quality product sprint over sprint.
Please feel free to share your thoughts and let me know if you have any questions.
2 comments:
I prefer the first approach of rolling out Agile in phases. It will also help you to learn a lot more prior to rolling out to the entire organization.
It is also very important to get the upper management buy-in. As you said, tying it to individual goals makes sense. In addition, the Scrum Master must have the authority to determine if teams are Agile compliant or not?
As for code reviews, it completely makes sense. ReviewBoard seems to work well, but, code submitted must be small enough for someone to review easily. In some instances, developers deliver a large chunk of code and that makes it hard to review.
Feature teams seem better than Component teams. This will help to minimize dependencies between teams which is a traditional bottleneck in software development.
All the free tools are a good start for Agile software development and saves your company a lot of money! I would just do more research with Subversion to see if it would scale for a large organization since good source control mechanism is very important for Agile and Software Development in general.
Thank you for writing about good, useful information. It necessary to know that automated testing will protect software solutions from unexpected losses.
Post a Comment