An iterative incremental software development process

Scrum Software Development

Subscribe to Scrum Software Development: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get Scrum Software Development: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Top Stories

I'm told that it has been 21 years since Scrum became public when Jeff Sutherland and I presented it at an Object-Oriented Programming, Systems, Languages & Applications (OOPSLA) workshop in Austin, TX, in October of 1995. Time sure does fly. Things mature. I'm still in the same building and at the same company where I first formulated Scrum.[1] Initially nobody knew of Scrum, yet it is now an open source body of knowledge translated into more than 30 languages.[2] People use Scrum worldwide for developing software and other uses I never anticipated.[3] Scrum was born and initially used by Jeff and me to meet market demand at our respective companies. After we made Scrum public in 1996 and writing my paper SCRUM Development Process, we started trying Scrum publicly, in companies with critical needs that were willing to try anything. The first organization where we e... (more)

Making a Difference in Tech: #YesWeCode | @DevOpsSummit @CollabNet

InformationWeek recently ran an article I wrote that describes CollabNet's work with non-profit #YesWeCode. This Dream Corps initiative aims to help young adults find careers and success in the tech industry. In the article, I address the growing need for new talent in the tech industry: "The U.S. Bureau of Labor and Statistics estimates that there will be one million more IT jobs than computer science students in the U.S. by 2020. The software development field in particular is expected to see a much higher than average growth rate of 17 percent." As a software executive, I see how taking responsibility to solve this challenge rests partially on the shoulders of the organizations that are hiring technology professionals. In other words, we need to look for ways to train and inspire the right individuals to fill our job openings. However, the best talent doesn't al... (more)

Cloud Computing Turns Virtual Teams Into a Competitive Advantage

Collaboration in the cloud is the future of business. Web 2.0 and cloud computing make it possible to solve the final challenge of coordination and management. If you're inside a larger enterprise, you can use collaboration in the cloud to compete with lean, nimble startups, or to better coordinate across different groups, offices, and divisions. We've heard all the buzzwords before. Virtual companies. Offshoring. Free agent nation. But this time, it's for real. The future of business is no longer enormous, vertically integrated titans (anyone check Ford's stock price recently?), but rather small, nimble, federations. Historically, the cost of coordination has outweighed the benefits of agility, which is why the virtual corporation had a hard time breaking through. But today's cloud technologies, with their ability to bridge the gaps between firms, and between busine... (more)

The Agile PMO

Tom Jenkins, the newly appointed PMO manager convened his team. Xavier, Paula and Xing were eager to start work. Tom explained that the PMO rollout is a change process. He gave his team assignments around stakeholder analysis, mapping of communication requirements, and creation of the PMO newsletter. While the team was somewhat puzzled with these activities they moved to fulfill them. Working with the stakeholders, the team captured many complaints pertaining to the current way of work and gathered numerous requests for improvements. Eagerly awaiting their next meeting, which was held virtually through a videoconference, they prepared a list of proposed improvements. Xavier proposed to commence work on the work breakdown structure and the software development lifecycle. Paula suggested to update the risk register template and to implement a new tool for project sc... (more)

Agile Trends – Minus the Hype

Surprise, surprise … Agile has never appeared in the Gartner Hype Cycle for Emerging Technologies. So, the task of separating the hype from reality becomes simpler. The reality, Scott Ambler says, is that “…you’d have a hard time these days trying to find people who don’t want to be agile…” Agile is like a starfish – you can cut one arm of an (starfish) Agile methodology and let it grow to (a full starfish) a tailored agile methodology to suited for your needs. Now coming back to question 3 & 4 – [You need to read this post in conjunction with my earlier post where I had raised 4 questions and answered 2 of them]. 3. If the current trend continues then where will it be in one year time? For the majority, there will be two distinct style of agile adoption where the focus will be on … …checklist based adoption: as long as you follow a series of steps recommended by th... (more)

Agile 101: Product Owner - Improved Insight into Customer Needs

In a Scrum-Agile project management environment, the product owner acts as a catalyst of change in the organization, enabling value creation through projects and products. Product owners create the required link between how the business would look like in the future and the current state. The product owner is a key facilitator within the organization in bridging the client and the business community with the Agile development team. Most of what a product owner performs can be defined in the broader sense as: 1) Creating and increasing value for the business, and 2) Eliminating and reducing costs for the business. The product owner is required to identify business needs and determine solutions to business challenges. We can characterize the role description of the product owner as related to the above tasks into several key responsibilities. The product owner needs t... (more)

Agile Projects and Requirements Management

This is Part I of a Three-Part article. Look for Part II on March 17. In the last few years, some of the most widely adopted best practices from software engineering, especially the adoption and refinement of Agile methods, have significantly reduced software development risk and increased project success rates. However, most of these best practices are founded upon an assumption that the enterprise is able to create and maintain a well-insulated environment around software developers. It has been proven that to outperform with Agile methods, R&D people must “live together” in a stimulating environment with few or no distractions relating to progress reporting, discussions with management, document fulfillment, and so on. As an example, consider the approach to gathering XP requirements (“user stories”). The customer (or user) should be an integr... (more)

The Five Cs of Agile Management: Courage, Context, Course, Cadence, and Cost

Anyone who has ever been responsible for leading or managing a software development project knows that software isn't easy. Successfully coordinating and dealing with project sponsors, customers, unexpected risks, and changing scope challenges even the most experienced project leader. Over the last decade, several methodologies (such as Extreme Programming, Scrum, Crystal, Feature-Driven Development, DSDM, and Lean Development) have emerged to help companies effectively deal with projects incorporating tight deadlines, volatile requirements, and/or emerging technologies. Applicable to a wide variety of today's software projects, these agile approaches have gained tremendous industry momentum due to their overall simplicity and laser focus on business value, accelerated delivery cycles, and ability to adapt to changing business demands. Leading projects in an environ... (more)

Never Mind the Quality, Feel the Width!

Never Mind the Quality, Feel the Width" was the title of a British TV sitcom in the late 60's (yes, I really am that old), which has nothing to do with Java software development. Or does it? The more I talk to people about the issue of Java software quality, the more I am reminded of the name of that seemingly ridiculous TV show. It seems to me that however much we talk about the need for quality in software development, it's an issue that takes a backseat to the "width" - by which I mean the number of feature requests that get crammed into our development projects. Many years ago, I worked for a company called Data General. Anyone with more than one or two gray hairs may remember DG as a minicomputer manufacturer (guess what - before Eclipse was an open source IDE, it was the name of a minicomputer made by DG). DG finally passed away in 1999, when what was left o... (more)

The Evo-Cycle: Doing Software the Right Way - In 16 Stages

In the adventurous world of software development, we have all come to experience, criticize, and embrace many software lifecycle approaches (e.g., RUP, Agile, Scrum, XP, etc.). At their core, they intend to identify various stages in the software process and optimize their instrumentation through various iterative techniques. Through my own consulting experience on many projects, I have come to expect a slightly different discrete set of "stages" that invariably accompany software endeavors. Expanding on these traditional software stages, this evolutionary software cycle or "evo-cycle" brings with it an incredible burden for managers and developers alike, often resulting in staff attrition, process degradation, or the dreaded burnout. Knowing the evo-cycle, software professionals can prepare better mentally for its unrelenting impact. Software professionals usually... (more)

The Sixteen Stages in the Evolutionary Cycle of a Software Project

In the adventurous world of software development, we have all come to experience, criticize, and embrace many software lifecycle approaches (e.g., RUP, Agile, Scrum, XP, etc.). At their core, they intend to identify various stages in the software process and optimize their instrumentation through various iterative techniques. Through my own consulting experience on many projects, I have come to expect a slightly different discrete set of "stages" that invariably accompany software endeavors. Expanding on these traditional software stages, this evolutionary software cycle or "evo-cycle" brings with it an incredible burden for managers and developers alike, often resulting in staff attrition, process degradation, or the dreaded burnout. Knowing the evo-cycle, software professionals can prepare better mentally for its unrelenting impact. Software professionals usually... (more)