Tag: software development
Management Books
-
Agile Estimating and Planning:
by
Mike Cohn
Highlights include:
- Why conventional prescriptive planning fails and why agile planning works
- How to estimate feature size using story points and ideal days—and when to use each
- How and when to re-prioritize
- How to split large features into smaller, more manageable ones
-
Kanban: Successful Evolutionary Change for Your Technology Business
by
David Anderson
The book provides specific and useful guidance to those attempting to adopt kanban management in software development.
The books is very well written and presents the material in a very easy to digest manner. It is so packed with information it is very difficult to mine even a significant portion of the value in one read. The organization allows for easy reference as you need to focus on any specific topic to find that topic and get an excellent review in minutes.
-
Management Matters: Building Enterprise Capability
by
John Hunter
The book provides an overview for viewing management as a system. It is largely based on those of Dr. Deming, along with natural outgrowths or extensions of his ideas such as lean manufacturing and agile software development.
To achieve great results there must be a continual focus on achieving results today and building enterprise capacity to maximize results over the long term. Managers have many management concepts, pactices and tools available to help them in this quest. The challenge is to create and continually build and improve a management system for the enterprise that leads to success.
The book provides a framework for management thinking. With this framework the practices and tools can be applied to build enterprise capacity and improve efficiency and effectiveness.
-
Rework:
by
Jason Fried, David Heinemeier Hansson
Great book by the founders of 37 signals on how to get to work and avoid the distractions of bad management practices. Take a new look at how to work without the outdated traditions.
Management Articles
-
A Fun Presentation on a Powerful Software Test Design Approach
by
Justin Hunter
"My own consistent experiences and formal studies indicate that pairwise, orthogonal array-based, and combinatorial test design approaches often lead to a doubling of tester productivity (as measured in defects found per tester hour) as compared to the far more prevalent practice in the software testing industry of selecting and documenting test cases by hand."
-
Summing it all up
by
Hemal Kuntawala
"So testers, to summarise, if you have a 'QA' column on your task wall, you’re doing it wrong. Go pair with a developer, now. Don’t just wait to bat back a list of bugs to them, go help them avoid having to work on the same thing twice.
...
Ask which scenarios are important and forget about the ridiculous edge cases for now. Now build it and get real feedback."
-
Why Google can’t build Instagram
by
Robert Scoble
"1. Google can’t keep its teams small enough... 4. Google forces its developers to use its infrastructure, which wasn’t developed for small social projects. At Google you can’t use MySQL and Ruby on Rails. You’ve gotta build everything to deploy on its internal database “Big Table,†they call it. That wasn’t designed for small little dinky social projects. Engineers tell me it’s hard to develop for and not as productive as other tools that external developers get to use."
-
How an automotive secret can make for better software
by
David Anderson
"Kanban is a way of visualizing invisible knowledge work activities such as software development, and limiting the quantity of work in progress. Limiting work-in-progress has several benefits: by avoiding over-burdening, quality is often significantly higher, while workers are happier and better motivated; delivery times are usually significantly shorter and far more predictable; priorities are often clear and prioritization decisions are simplified...
Deming’s work is core to everything we do. I think his book, The New Economics, is a seminal work in management thinking... If I could have coffee with just one of these process and management science pioneers it would be Deming."
-
Demystifying the Product Owner
"This usually requires the product owner to lead product discovery, to help identify and describe requirements, and to ensure that the product backlog is ready for the next sprint planning meeting. It also means that the product owner has to engage in product planning, visioning and product road mapping, decide what functionality is provided by a release, carry out release planning, and answer questions from the team, review work results, and collaborate with customers, users and other stakeholders."
-
How an automotive secret can make for better software
by
David Anderson
"Kanban is still in the very early stages of adoption. It is true that most people in the software industry have never heard of it. However, there are many hundreds of companies on 5 continents already doing it. Some have very large, successful and well documented implementations. Firms such as the BBC in London, Globo and Petrobras in Brazil, Amdocs in Israel, Vanguard is a well known American adopter."
-
You can’t be Agile in Maintenance?
"Agile development naturally leads into maintenance – the goal of incremental Agile development is to get working software out to customers as soon as possible, and get customers using it. At some point, when customers are relying on the software to get real business done and need support and help to keep the system running, teams cross from development over to maintenance. But there’s no reason for Agile development teams to fundamentally change the way that they work when this happens."
-
Why I Run a Flat Company
by
Jason Fried
"At 37signals, however, we have a different position on ambition. We're not big fans of what I consider 'vertical' ambition—that is, the usual career-path trajectory, in which a newbie moves up the ladder from associate to manager to vice president over a number of years of service. On the other hand, we revere "horizontal" ambition—in which employees who love what they do are encouraged to dig deeper, expand their knowledge, and become better at it. We always try to hire people who yearn to be master craftspeople, that is, designers who want to be great designers, not managers of designers; developers who want to master the art of programming, not management."
-
If The Only Tool You Have is a Hammer
"Eventually my journey in software and testing as extended into areas like Agile and particularly Lean. This gave even sharper context to the concept that there is no 'right way' to do something, only slightly better or worse ways and more often than not the distinction is unclear. Nowadays it causes me almost physical pain when someone refers to 'Best Practice' and I often have to restrain myself from physical violence when someone says “We tried that once, and it didn’t work.'"
-
Requirements in the wild: How small companies do it
by Jorge Aranda, Steve Easterbrook, and Greg Wilson
"This case study found evidence that small software companies have a number of characteristics that distinguish their requirements processes from those of large corporations. These findings challenge many of the common assumptions underlying requirements engineering research.
The findings lead us to offer the following recommendations for the requirements engineering research community:
State the context: Proposed requirements techniques may be ideal for certain contexts, and unhelpful for others. It is important to understand and to state the contexts in which a technique provides the greatest benefit to its users.
Connect RE research to business and social concerns: Requirements practices in small companies are closely tied to culture and business strategy..."
-
Practical Combinatorial Testing
by
Raghu Kacker, Rick Kuhn, Yu Lei
"Combinatorial methods can help reduce the cost and increase the effectiveness of software testing for many applications.
...
With the NASA application, for example, 67% of the failures were triggered by only a single parameter value, 93% by 2-way combinations, and 98% by 3-way combinations. The detection rate
curves for the other applications studied are similar, reaching 100% detection with 4 to 6 way interactions."
-
Building a Great Software Development Team
by
John Hunter
"Passion for the right things, based on what we aimed to be, mattered a great deal. That took the form of being passionate about the user experience, being passionate about good software development practices, being passionate about good software itself, being passionate about treating each other with respect, being passionate about learning and improving.
I think there were several other important factors, such as: the skill to turn a passion for good software into actual good software..."
-
Lean Programming - part 2 of 2
by
Mary Poppendieck
"Total Quality Management still rings true for software." Not a perfect representation of Deming's ideas (in our opinion) but an example of Deming's ideas continuing to spark interest.
-
Introduction to Planning Poker
by
Damon Poole
"One of the biggest benefits of Planning Poker is the sense of team that it creates. The whole team is participating in the estimation. This creates a greater sense of team ownership and team responsibility for each story. Another major benefit of planning...
-
Presenter and participants actually test software
by
Justin Hunter
by Matt Heusser "The first session of the conference was Justin Hunter’s “Let’s Test Together,†which promised to not only introduce a new test design method, but to change the way we (the audience) think about software testing.
...
It was a neat session and his passion came through"
-
Managing Nerds
"Until you've experienced the solving of a seemingly impossible problem, it's hard to understand how far a nerd will go to protect his problem solving focus and you can help. The road to either High is a mental state traditionally called the Zone. There are three things to know about the Zone: 1. The almost-constant quest of the nerd is managing all the crap that is preventing us from entering the Zone as we search for the Highs. Meetings, casual useless fly-bys..."
-
Scrum-ban
by
Corey Ladas
Great article on lean software development ideas: "One simple technique that brings us much closer to our kanban definition is to set a multitasking limit for individuals. You might have a simple principle like: prefer completing work to starting new work
-
Kanban for Skeptics
by
Nick Oostvogels
"WIP limits will reveal bottlenecks quickly and create momentum to help others and start the continuous improvement cycle. The power of continuous improvement in Kanban will help you improve flow"
-
How I Hire Programmers
by
Aaron Swartz
"If all that looks good and I'm ready to hire someone, there's a final sanity check to make sure I haven't been fooled somehow: I ask them to do part of the job. Usually this means picking some fairly separable piece we need and asking them to write it...
-
Metrics and Software Development
by
John Hunter
"I find looking at outcome measures (to measure overall effectiveness) and process measures (for viewing specific parts of the system 'big picture') the most useful strategy.
The reason for process measures is not to improve those results alone. But those process measures can be selected to measure key processes within the system..."
-
Maximize Test Coverage Efficiency And Minimize the Number of Tests Needed
by
John Hunter
"The steeper the slope the more efficient your test plan is. If you repeat the same tests of pairs and triples and… while not taking advantage of the chance to test, untested pairs and triples you will have to create and run far more test than if you intelligently create a test plan. With many interactions to test it is far too complex to manually derive an intelligent test plan. A
-
Approaching a Minimum Viable Product
"The purpose of the MVP is to answer your most pressing question, to validate your most pressing business assumption. To create an MVP work backwards from your question, not forwards from a feature list. Invest as little as possible to answer the question because after this there will be another question and another and you'll need enough money to answer them all."
-
The Black Team - Software Testing at IBM
"Management noticed that certain software testers were 10 to 20 percent better at finding defects than their peers. By putting these people on the same team, they reasoned, they could form a group that would be 10 or 20 percent more effective and then put the team to work testing the most critical system components. It didn't turn out that way.
...
Soon the members of team were twice and then dozens of times more effective than their peers, and they began to view their jobs not as testing software, but as breaking software. Team members took a well-deserved pride in their abilities and began to cultivate an image of villainous destroyers. As a group, they began coming to work dressed in black and took to calling themselves "The Black Team.'"
-
The Role of Leadership in Software Development
by
Mary Poppendieck
"In this 90-minute talk from the Agile2007 conference, Lean software thought leader Mary Poppendieck reviewed 20th century management theories, including Toyota and Deming, and went on to talk about 'the matrix problem', alignment, waste cutting, planning
-
It's Not Just Standing Up: Patterns for Daily Standup Meetings
by
Jason Yip
"It is too easy to confuse effort with work. The stand-up should encourage a focus on moving work through the system in order to achieve our objectives, not encourage pointless activity.
...
Post raised obstacles to an Improvement Board. This is a publicly visible whiteboard or chart that identifies raised obstacles and tracks the progress of their resolution. An Improvement Board can be updated outside of stand-ups and serves as a more immediate and perhaps less confronting way to initially raise obstacles."
-
Eight Reasons Retrospectives Fail
by
Esther Derby
"Choosing Actions the Team Doesn’t Have Energy For... They may have tried before and failed, the task may be too difficult or time-consuming given the other work they have to do, or the work may be plain unpleasant. In any case, when the team doesn’t have energy to work on an improvement, chances are pretty good it won’t get done. Go with the task the team has the energy to complete."
-
Agile Team Meets a Fixed Price Contract
"We need to get back one more time to the point where we changed fixed scope into fixed budget. The 300 story points from the previous examples allows us to exchange the contents of the initial user story list. This is one of the most important aspects that we want to achieve with a fixed price contract done the agile way.
Agile embraces change, and what we want to do is to streamline change management within the fixed price contract."
-
Why Do Some Testers Find The Critical Problems?
"Testers who find problems successfully can link tests, test activities, and test results to the mission. They’re far more concerned about the quality of the information they provide than the quantity...
Testers, to be successful, must be given the freedom and responsibility to explore and to contribute what they’ve learned back to their team and to the rest of the organization."
-
The Years of Experience Myth
by
Jeff Atwood
"It's been shown time and time again that there is no correlation between years of experience and skill in programming. After about six to twelve months working in any particular technology stack, you either get it or you don't...
I'm not saying experience doesn't matter in software development. It does. But consider the entire range of a developer's experience, and realize that time invested does not automatically equal skill."
-
Redesigning the Technical Hiring Process
"From this project, which could be a simple Android or iOS application, web app, or backend project, we get a strong sense of the candidate’s coding style, how they structure their code, how much they know, and how quickly they learn (since we have previously asked them about their experience).
Throughout the process, and especially during the demo, we see how well the candidate communicates with the team. During the demo, we have the opportunity to see how well the candidate responds to feedback and criticism, if they are defensive about their work, or open to suggestions."
-
Lean coding
by
Jack Ganssle
"Lean manufacturing and the quality movement showed that defects indicate a problem with the process rather than the product. Clearly, if we can minimize waste the system will be delivered faster and with higher quality...
-
IT the Toyota way
"The IT department is also building a custom dealer management system to help dealers introduce the principles of the Toyota Way into their own workplaces. It's looking internally at its own processes; instead of the waterfall approach to development -- where a lot of planning and building of solutions is done up front and then given to the customer -- Toyota has adopted an agile process."
-
Hiring for an Agile Team, 4 Reasons to Up Your Hiring Game
by
Esther Derby
"In agile teams, people collaborate, negotiate, make trade-offs, handle conflicts. These interactions require a high level of interpersonal skill and emotional intelligence...
People on agile teams need an exceptional ability to learn and apply that learning–both in growing 'generalizing specialist' skills and in improving team processes..."
-
Actionable Metrics at Siemens Health Services
"This case study details how a shift from traditional agile metrics (Story Points, Velocity) to actionable flow metrics (Work In Progress, Cycle Time, Throughput) reduced Cycle Times, increased quality, and increased overall predictability at Siemens Health Services. Moving to a continuous flow model augmented Siemens’ agility and explains how predictability is a systemic behavior that one has to manage by understanding and acting in accordance with the assumptions of Little’s Law and the impacts of resource utilization."
-
What I Learned From Building An App For Low-Income Americans
"To some extent technology has failed low-income Americans too. Developers don’t build apps for them. Growth hackers ignore them. At Significance Labs, I learned a lot about how low-income Americans live and use technology but also about its limitations, and my own.
...
During a user testing session with a group of Spanish-speaking cleaners, one of the testers gave a speech to the others about how we were a company (Significance Labs is a nonprofit) trying to take advantage of them. When building for low-income users you have to work harder to win their trust and to demonstrate your product’s value.
...
I am also convinced that there are sustainable, if not wildly profitable, businesses to be built on providing valuable services to low-income Americans."
-
The Achilles’ Heel of Agile
by
Jurgen Appelo
"In the case of shared resources, whether it concerns money, space, or system administrators, someone outside of the development teams must keep an eye on long-term sustainability instead of short-term gains by individual teams.
The Tragedy of the Commons is the Achilles’ heel of Agile. It takes management to protect that heel, in order to prevent teams from depleting resources, and crippling the organization."
Management Web Sites and Resources
-
Curious Cat Management Improvement Blog
by
John Hunter
Blog by John Hunter on many topics to to improve the management of organizations, including: Deming, lean manufacturing, agile software development, evidence based decision making, customer focus, innovation, six sigma, systems thinking, leadership, psychology, ...
-
Agile Blog
The Agile Blog provides advice and resources for people actively looking to advance their Agile practices by Rally.
-
Agile consulting
Insights on Agile, Lean, Kanban, and Flow by Jeff Anderson and Alexis Hui.
-
Google Testing Blog
"If it ain't broke, you're not trying hard enough" Software testing blog with concrete advice from Google.
-
Signal vs. Noise
Blog on design, business, experience, simplicity, the web, culture and software development.
-
Kanban Chronicle
Purpose:
To provide insight by sharing our experiences in adopting Kanban.
Why:
When we started, we found that the real examples were the most useful.
We would like to add to that body of knowledge.
We also wanted to share with our colleagues at work.
Our aim:
To provide a full lifecycle example from as many perspectives as possible...
Why did we choose Kanban, what we read first, what we started with, how we adapted, what worked.
by Andrew Walker
-
Benjamin Mitchell's Blog
by
Benjamin Mitchell
"I'm a London-based independent consulting focussed on Systems Thinking, Intervention Theory and Lean / Kanban applied to IT businesses. I am a follower of Ohno, Deming, Seddon and Argyris."
-
Curious Cat Management Improvement Connections
by
John Hunter
The aim of Curious Cat Management Improvement Connections is to contribute to the successful adoption of management improvement to advance joy in work and joy in life.
The site provides connections to resources on a wide variety of management topics to help managers improve the performance of their organization. The site was started in 1996 by John Hunter.
-
Curious Cat Management Improvement Articles
by
John Hunter
Hundreds of useful management articles hand selected to help managers improve the performance of their organization. Sorted by topic including: Deming, lean manufacturing, six sigma, continual improvement, innovation, leadership, managing people, software development, psychology and systems thinking.
-
Hemal, Developer in Test
by
Hemal Kuntawala
"I'm a test-developer enhancing testing practices using kanban and lean principles.
...
I'm keen to see more development teams, agile-adopters or not, move away from the end-of-cycle testing model and embrace true quality assurance by testing throughout the production line."
-
Visual Management Blog
Blog by Xavier Quesada Allue, from Argentina. The goal of the blog is to create a space for the discussion of ideas and examples of Visual Management (the practice of using information visualization techniques to manage work) applied to agile teams and agile project management.
-
Jurgen Appelo
by
Jurgen Appelo
Jurgen is primarily interested in software engineering, quality improvement and complexity theory, from a manager's perspective.