... DevOps!
In a post by Scott W. Ambler on Dr. Dobb’s The World of Software Development he lists these Top 10 Practices for Effective DevOps:
Practice 1: Activate Stakeholder Participation
Practice 2: Automated Testing
Practice 3: Integrated Configuration Management
Practice 4: Integrated Change Management
Practice 5: Continuous Integration
Practice 6: Integrated Deployment Planning
Practice 7: Continuous Deployment
Practice 8: Production Support
Practice 9: Application Monitoring
Practice 10: Automated Dashboards
Out of the top 10 best practices I think the following 3 are the most important:
Active Stakeholder Participation is one of the most important because just like any sort of team, you can’t succeed fully or complete something to a team’s full potential without total participation from all involved. How else would the Seattle Seahawks have made it to the Super Bowl two years in a row?
Automated Testing, I agree is the second most important for effective DevOps. Test, test, test, and test more. Writing quality code and testing continuously is very important, especially when you can fix an error quicker than someone found it.
However, I think Integrated Configuration Management (CM) and Integrated Change Management should be lumped together. With CM you want the operations staff to understand what the intended outcome is and how the assets will be leveraged by solutions development delivers; while at the same time with Change Management, you want development to understand what changes operations is making that can affect the solution being developed. This brings the "team" together for "enterprise level issues associate with operations" (Ambler). Talent wins games, but teamwork and intelligence wins championships. – Michael Jordan
I’m on a sports role today! Do you agree with the top 10 chosen, or the top 3 I picked?