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

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)

Scrum at 21 with @KSchwaber | @DevOpsSummit #Agile #AI #Scrum #DevOps

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)

The Odd Couple: Marrying Agile and Waterfall

This article depicts the best practice approach for integrating Agile approaches and specifically Scrum development with traditional overarching linear approaches, specifically waterfall methodology. The agile PMO, properly defined, can be positioned to secure Agile-Scrum benefits while maintaining the necessary overarching control. The challenge Over the last two decades, various Agile approaches have been introduced and practiced. Of these, in last 5 to 7 years, Scrum has gained the most popularity resulting from a combination of simplicity, ease of use, and effective public relations. Scrum success in software development organizations has been a powerful driver for roll outs across products, industries and businesses. As described, this was exacerbated by a focused marketing effort from Scrum evangelists. Unfortunately, most of these organizations were not stru... (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 4 Core Principles of Agile Programming

One of the things I really enjoy at the moment is the recognition and adoption of agile programming as a fully fledged powerful way to deliver quality software projects. As its figurehead is a group of very talented individuals who have created the agile manifesto http://agilemanifesto.org/. At its core are four simple principles that, when followed and applied to software projects, generally will ensure a great flexibility and hence higher agility. Leaving aside how great agile projects are, what worries me at the moment is that more and more people seem to be buying into this idea that agile programming is a noun rather than a verb, and that to do it correctly you have to follow a certain process to the letter. Point 1: the manifesto for agile developemt states that it puts "Individuals and interactions" over process and tools. In other words, you adapt the proc... (more)

Why Is Scrum So Widely Adopted and So Very Dangerously Deceptive

I was sitting in a meeting sometime ago with a company that was embracing Scrum like a ten year old being offered a warm plate of chocolate chip cookies. They were grabbing at it as fast as they're little hands could reach out and grab the goodies. Watching this made me wonder what is was about Scrum that made them embrace it so emphatically. They had claimed to be an Agile shop for years, but were still failing to deliver quality software on time with in budget. Over the past years they refused every single proposed process improvement recommendation made by dozens of consultants. They literally went from zero process (using the name Agile to execute no process at all) to zealot Scrumbots overnight. After spending some time pondering this and interviewing a few people I found the answers I was looking for. Scrum was allowing them to preform the magic trick of perce... (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)

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)

Agile SOA Across the Lifecycle - Part Five: IT and SOA Governance

This is the fifth of a six part series of posts on the Agile SOA life cycle. Here we will at look at IT and SOA Governance. With the introduction of agile, spiral, and scrum development methodologies, the traditional waterfall development approach of testing a near-finished app at the end of many Agile development cycles won't be agile at all, as the elements of the application are constantly changing.  Traditional models of IT governance will also not work. To aggravate testing, the service-oriented architecture (SOA) design pattern is used to make IT  more responsive to changes requested by business. New process tooling has been introduced to specifically assist in the cataloging of service assets, and organization of policies governing SOA. This new set of tooling created to support SOA revolves around governance platforms like HP Systinet / S2, SAG Centrasite, S... (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)

Agile SOA Across the Lifecycle - Part Five: IT and SOA Governance

This is the fifth of a six part series of posts on the Agile SOA life cycle. Here we will at look at IT and SOA Governance. With the introduction of agile, spiral, and scrum development methodologies, the traditional waterfall development approach of testing a near-finished app at the end of many Agile development cycles won't be agile at all, as the elements of the application are constantly changing.  Traditional models of IT governance will also not work. To aggravate testing, the service-oriented architecture (SOA) design pattern is used to make IT  more responsive to changes requested by business. New process tooling has been introduced to specifically assist in the cataloging of service assets, and organization of policies governing SOA. This new set of tooling created to support SOA revolves around governance platforms like HP Systinet / S2, SAG Centrasite, S... (more)