Agile software development

Scrum and agile software development methodologies can reduce time & augment quality of projects significantly over traditional methods. Here's how.

07/01/2009


On every software project, it is inevitable that that someone makes the statement, “Just give me a handful of developers and I could get this done in half the time!”

In large development projects everyone seems to spend most of their time in meetings, letting everyone else know what is happening and what the problems are. There often seems to be little effort done “in moving the ball forward” (using sports terminology). In fact a lot of the effort seems to be moving the ball backwards when user requirements change and new solutions are discovered.

There is a method to address these problems. The method is controversial because it goes against the belief that more requirements are better. Many project managers believe that if only the users could write better requirements, then projects would not be late and over budget. Unfortunately, often users cannot articulate their requirements for at least two reasons: requirements change over time, and users don't know what is actually possible. Methodologies known as “Scrum” and “Agile” address these problems.

Scrum is an incremental framework for managing projects and is often coupled with the Agile software development methodology for software projects. The name Scrum comes from rugby, where teams move the ball forward in small steps as a unit by passing the ball back and forth. In software development, Scrum describes a small team working closely with end users to move the project code forward in small steps.

Scrum defines a set of practices and predefined roles for running a project through a series of small iterations called sprints. Each sprint is 10 to 20 working days long. Scrum is designed for projects with rapidly changing or not well understood requirements.

Form a Scrum team

A Scrum team typically has five to nine members. These include a “product owner” who is the user or customer representative and the ScrumMaster who is responsible for helping the team use the Scrum process and protecting the team from irrelevant outside influences. The team members are identified as either “chickens” or “pigs.”

The terms come from a joke about a chicken and pig: 'A pig and a chicken are walking down a road. The chicken looks at the pig and says, “Hey, why don't we open a restaurant?” The pig looks back at the chicken and says, “Good idea, what do you want to call it?” The chicken thinks about it and says, “Why don't we call it 'Ham and Eggs'?” “I don't think so,” says the pig, “I'd be committed, but you'd only be involved.”

The product owner, ScrumMaster and team members are pigs—they are committed to the project and process. Managers, other users and stakeholders are chickens—they are just involved in the process. Both pigs and chickens are required for a Scrum project, but the pigs do the real work.

Get agile

Agile defines a set of software development methodologies based on iterative development, where both requirements and solutions are co-developed through a collaboration process. Agile defines software development aspects which include continual peer review of developed code, real-time interaction with users to evaluate ideas and implementations, and rapid development cycles measured in hours or days.

Agile methodologies go by many names, including Extreme Programming [learn more from Control Engineering ] , Feature Driven Development, and Dynamic Systems Development. Early adaptors of the Agile methods were compared to “cowboy programmers,” but the methods are well-defined and, when honestly applied, can lead to significant reductions in project time and much higher rates of successful projects.

If your projects never seem to complete on time and budget, then Scrum and Agile may be your answer. They are a well proven approaches to software projects.

Read other engineering-IT software tutorials from Dennis Brandl .


Author Information

Dennis Brandl is president of BR&L Consulting in Cary, NC, www.brlconsulting.com . His firm focuses on manufacturing IT. Contact Dennis at dbrandl@brlconsulting.com .




No comments
The Engineers' Choice Awards highlight some of the best new control, instrumentation and automation products as chosen by...
The System Integrator Giants program lists the top 100 system integrators among companies listed in CFE Media's Global System Integrator Database.
The Engineering Leaders Under 40 program identifies and gives recognition to young engineers who...
This eGuide illustrates solutions, applications and benefits of machine vision systems.
Learn how to increase device reliability in harsh environments and decrease unplanned system downtime.
This eGuide contains a series of articles and videos that considers theoretical and practical; immediate needs and a look into the future.
Motor specification guidelines; Understanding multivariable control; Improving a safety instrumented system; 2017 Engineers' Choice Award Winners
Selecting the best controller from several viewpoints; System integrator advice for the IIoT; TSN and real-time Ethernet; Questions to ask when selecting a VFD; Action items for an aging PLC/DCS
Robot advances in connectivity, collaboration, and programming; Advanced process control; Industrial wireless developments; Multiplatform system integration
Motion control advances and solutions can help with machine control, automated control on assembly lines, integration of robotics and automation, and machine safety.
This article collection contains several articles on the Industrial Internet of Things (IIoT) and how it is transforming manufacturing.

Find and connect with the most suitable service provider for your unique application. Start searching the Global System Integrator Database Now!

Future of oil and gas projects; Reservoir models; The importance of SCADA to oil and gas
Big Data and bigger solutions; Tablet technologies; SCADA developments
SCADA at the junction, Managing risk through maintenance, Moving at the speed of data
Automation Engineer; Wood Group
System Integrator; Cross Integrated Systems Group
Jose S. Vasquez, Jr.
Fire & Life Safety Engineer; Technip USA Inc.
click me