New-age Transactional Systems - Not Your Grandpa's OLTP
John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Vikas Hazrati on Mar 20, 2009
Traditional project governance is used to describe the rules and processes that are required to ensure a successful project. Traditional governance tries to manage the project work as process work. However, the use of time sheets, costs, and schedules far outweigh the more important issues like project benefits, risk management, stakeholder involvement, quality, scope, and objective control. At first glance the concept of governance and Agile seem to be incompatible, however most Agilists would agree that just enough governance might do more good than bad for the Agile project.
Andrew Clifford suggested the following benefits of governance,
- Improved shareholder value because IT systems are managed as business assets.
- Improved business IT relationship because IT infrastructure requirements are translated to measurable goals.
- Improved return on investment on IT infrastructure investments because management can track and enforce use of new infrastructure.
- Reduced project failures because technical and compliance issues are identified earlier.
- Reduced cost of compliance with regulations and internal standards because these are managed within an efficient framework.
- Reduced long-term risks and costs due to fragmentation of standards because management have visibility of the degree of compliance.
- Improved measurement of IT's performance in its role as stewards of business systems, which is particularly valuable for governing outsourced contracts.
Matthew D. Laudato suggested that though governance is often a hard part for engineering to swallow however, the budget granted to IT has to be accounted for by the VP or CIO. He recommended that governance should become a part of the Agile process. According to him,
It makes sense to add a step in the process at sprint review time (the post-evaluation that occurs at the end of each sprint) to formally document the project progress in a form that is useful for the rest of the business. Included in this report should be at a minimum what features were completed, what the cost of these features are, what the roll-out plan is for these features, and what percent of the known requirements have been satisfied to date.
Toyota’s Takeuchi and Nonaka, had the following view on governance
Although project teams are largely on their own, they are not uncontrolled. Management establishes enough checkpoints to prevent instability, ambiguity, and tension from turning into chaos. At the same time, management avoids the type of rigid control that impairs creativity and spontaneity. Instead, the emphasis is on “self-control”, “control through peer pressure” and “control by love
According to Ross Pettit, Agile governance comes down to answering two questions
The first question talks about effectiveness of money spent as it attempts to answer fact-based measurement of outstanding scope, work completed, total expenditure, and trend with accuracy. The second question is about completeness of the solution to address full range of corporate policies, including security, architecture, quality, risk, and so forth. Ross suggested that a good governance would lead to
A reduction of "surprises," an increase in trust and confidence, and execution aligned with strategy - make IT less mired in its own problems and, subsequently, better able to be responsive to the business.
Thus there is enough justification on the importance of governance and the benefits it can bring to the project however, what is the best way to introduce governance in an Agile project?
Ross suggested the following approach,
Dean Leffingwell suggested the following approach for defining a lightweight governance process. According to him, the governance model should
Thus Agile governance serves as a perfect glue between management and IT. The key is not to overdo it lest it should kill the creativity and enthusiasm of an Agile environment.
Agile Practices to Improve Project Management Organization (PMO) Effectiveness
Five Key Practices to Agile ALM
In today’s hyper-competitive world, later may be too late to adopt Agile development and this Roadmap for Success will help you get started. Download "Agile Development: A Manager's Roadmap for Success" now!
John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.
Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.
One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.
InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.
No comments
Watch Thread Reply