CRM Newsletter
 
NEWSLETTERS
 

CIO.com updates, insights and advice on technology, management and your career.

 CIO BlackBerry News and Tips
 CIO Research and Analysis
 CIO Microsoft
 CIO Insider
 
 
 
LEADERSHIP
 
CIO Executive Programs
The Leader in Face-to-Face Education for Senior Executives

Offering regional and national programs, CIO (and CSO) events bring together some of the most respected names and thought leaders in information technology and security. Presented by CIOs and other senior level executives, these invitation-only programs offer timely topics and strong networking. Learn More »

 
CIO Executive Council
A Peer-Advisory Service and Professional Association for CIOs

Public Council Teleconference: Application Rationalization — Hidden Costs and Smart Decisions

November 17 at 11:00 am US/Eastern (GMT-5)

Join Honorio Padrón, of The Hackett Group, who will share the drivers for companies to tackle application rationalization and the results of research that define the hidden cost of complexity. Additionally, we will discuss key decision milestones—to start or not, holding the course steady and fulfilling expectations.

Virtual Desktop Cost-Benefit Analysis — Michael Jacobs, Catlin Group

The analysis contained in this presentation measures the cost of everything from the machines and licenses to the infrastructure for virtual vs. traditional desktop environments.

Honor your best senior team members - Apply for the CIO Ones to Watch Award

Get well-earned public recognition for your top up-and-coming team members, your IT organization and your enterprise. Award winners will be announced, publicized and feted in May 2010, great timing to help attract new IT recruits to your company.

More / Register »

Learn more about the CIO Executive Council »



 
 
RESOURCE CENTER
 
 
 

Agile Programming Definition and Solutions

Agile Programming topics covering definition, objectives, systems and solutions.

 

PAGE 3

What Are the Business Reasons for Using Agile?
What Makes Agile Programming Different?
Won't I Have to Do a Lot of Extra Work?
What's Different, Besides Working in Iterations?
Won't Working Like this Change Our Corporate Culture?
When Should I Avoid Using Agile Programming Techniques?
Is There Just One Kind of Agile Programming?

When Should I Avoid Using Agile Programming Techniques?

There isn't a silver bullet for application development. There never is. Although Agile programming techniques can help you create great applications very quickly, these techniques don't work for every project.

For example, an organization may truly need to create a huge application that can't be broken down into small pieces, and which requires more than 20 developers. If you're creating a heart monitor application for a major hospital, you don't want to create just the part that monitors the heart and deploy it without the parts that send out alerts when a patient's heart fails. In this case, you must create the entire application and test it as a whole before deployment, or else you'll end up with a lot of dead patients (and lawsuits). Agile programming techniques aren't a good solution in this case, because the system quickly breaks down when too many people are involved.

Applications that require a distributed development don't work well with Agile programming techniques, either. If you have some developers in England and others in the United States, team members can't communicate quickly enough. Distributed teams have difficulty getting all of the benefits of Agile methods, even though tools such as instant messaging or IRC may compensate somewhat. The system can quickly bog down, and you'll find yourself devoting a lot of time to keeping individual team members updated.

You may also find it hard to use Agile programming techniques with mission-critical applications where every single piece has to work at the outset. Because Agile programming techniques work best with small iterations, you won't get a whole application put together immediately. The process requires that the organization deploy the partial application to invite comment from the organization as a whole. The goal is to fix any real bugs and usage problems quickly, not to create one monolithic application that can't be tested until the end of the project.

Some companies simply don't adapt very well to Agile programming techniques because they have a command-and-control management style. That kills the creative process required to make Agile programming work. Most experts regard the command-and-control management style as outdated and a real problem that the company should work out.

Is There Just One Kind of Agile Programming?

The Agile programming umbrella shelters a significant number of methodologies that you can use to accomplish your goal. The precise method you use depends on the kind of application you want to create, the customers you must satisfy and the environment within your organization.

Here are a few of the more common Agile programming methodologies:
  • Extreme programming (XP): This method places a high emphasis on adaptability, rather than predictability. It works best in scenarios where the organization doesn't know precisely what end product it needs. This is the method first employed by Kent Beck.
  • Scrum: This places an emphasis on restarting an iteration, rather than attempting to fix the problem. It works best in scenarios where the organization is using new tools and wherein the application will almost certainly change during development. Jeff Sutherland first used the Scrum method at the Easel Corporation in 1993.
  • Adaptive software development (ASD): This method places an emphasis on speed and flexibility. It works best in scenarios where the organization needs to produce results quickly for an application that could grow as customers use it. Jim Highsmith developed this method.
  • Dynamic systems development method (DSDM): This was originally developed from rapid application development (RAD) techniques that place an emphasis on user involvement. It works best in scenarios in which the application must work in a complex environment that the developer doesn't understand very well. The DSDM Consortium developed this methodology in 1990 in the United Kingdom to consolidate programming best practice experiences.
  • Feature driven development (FDD): This places an emphasis on predictability and adherence to development best practices. It works best in situations where the development team must create an application with specific features and higher-than-normal reliability. Jeff De Luca originally developed this method to accommodate the needs of a large Singapore bank in 1997.

This isn't an exhaustive list. Other Agile programming methodologies, such as Crystal Clear, could have a place in your organization. The fact is that Agile programming is so useful that people are finding new ways to use it all the time. Consequently, you'll continue to find organizations that create new Agile programming methodologies.

Further Reading on CIO.com

John Mueller is a freelance author and technical editor. He has writing in his blood, having produced 73 books and more than 300 articles to date. The topics range from networking to artificial intelligence and from database management to heads-down programming. His most recent book is VBA for Dummies, 5th Edition.

© 2009 CXO Media Inc.
 
 
Loading...
 
WHITE PAPERS

Top 10 Business Drivers

The restructuring of Wall Street that took place in 2008 will have a major impact on the investment management business in 2009.
 

How is open source changing the face of enterprise software?

Learn how open source and business intelligence ignite enterprises to reach new levels of performance excellence.
 

Red Hat Open Source Security

The rapid innovation and collaboration of open source development helps Red Hat provide industry-leading security tools and processes.
 

Now is the Time for Open Source

In today's economy, we are all trying to do more with less. Another modern business necessity is flexible, mobile data and systems-complex IT.
 

Bridging the IT Visibility Gap in Complex Composite Applications

Composite Application Management
 

Enhance the Performance of your Data Center

Enhancing performance through Virtualization realizes operational efficiencies and offers reliability.
 

WEBCASTS

Profit from Power Savings

Cut Costs & Green Your IT Operations with PC Power Management

Find out how and why 400 organizations have d...
 

IT Consolidation Made Easy

The Primary IT Initiative for Reducing Costs
 

CIOs Weigh In On Virtualization

Date: November 19, 2009 Time: 2:00 PM EST

Gary Beach, publisher emeritus of CIO magazine,...
 

Webcast- Vantage 11: Redefining Application Performance Management

Redefining Application Performance Management
 

Architecting Business Intelligence Applications for Change: The Open Solution

Architecting BI Applications for Change
 

Taking a Seat at the Executive Table: The Reality of Virtualization

This year, for the first time, the number of virtual machines is on track to exceed the number of physical machines...
 

Resource Alerts

Get instant email notifications by topic when white papers, webcasts, and case studies are added to our library.

 
FEATURED SPONSORS
 
 
 
SPONSORED LINKS
 

Disciplined Autonomy: Resolving the Tension Between Flexibility and Control

Enterprise Capture: Your Onramp to Business Process Automation

Seven Technologies for Advanced Mail Protection

Server Consolidation: Leveraging the Benefits of Virtualization

Join us at the US-Brazil IT-BPO Summit, on November 10th in New York.

Unified Communications: Thoughts, Strategies and Predictions. Join the discussion

Read the RSA report: Security for Business Innovation

Webcast: Looking to the Cloud for Email and Collaboration Services

64-page prescriptive guide to security, compliance, and IT operations.

Keep your IT expertise up to date. Join the Intel Premier IT Professionals.

A new fleet of PCs with a total ROI in 10 months. Find your ROI.

eZine: A Roadmap to Reducing IT Complexity

Reduce risk, gain agility. See how Progress can help your business.

Virtualization Technology as a Business Solution

eZine: A Roadmap to Reducing IT Complexity

World-class trading technology solutions from NYSE Technologies.

If You're Paying for Telecom, You're Paying Too Much. Contact Asentinel Today.

Trade-In your old printer and save up to $1,000 plus free recycling!

infoBOOM! - The Mid-Sized Company CIO's Exclusive Community

Live Webinar: Applying Business Analytics. Click here to learn more

White Paper: Right-Sizing Your Power Infrastructure

Webcast: Unleashing the Power of Customer Data

White Paper: Managed Security for a Not-So-Secure World

SharePoint - Unchecked growth of content is unsustainable.

White Paper: Legacy Tools: Not Built for the Helpdesk

Tolly Group Lab Test Results: Cisco vs. ShoreTel

SETLabs: The Impact of Performance Engineering

Top to Bottom Performance Management Excellence at the City of Chicago

See how AT&T can help protect your network.

Top Five CIO Challenges

Streamline IT Costs. Boost Performance with WAN Optimization.

Want to know how you can maximize employee productivity?

Build your 1st app FREE with Force.com

TDWI checklist helps define data readiness for analytics. Download report.

Increase UPS efficiency without sacrificing protection.

A Clear View Toward Virtualization

Virtualization Technology as a Business Solution

The rules of infrastructure management just changed.

A Clear View Toward Virtualization

Interactive Q&A helps you discover key ways to maximize IT assets.

Ready to virtualize tier one applications? Check your virtualization maturity.

Think you can't afford a Cisco Switch? Cisco Catalyst Switches are now more affordable.

Five minute business analytics assessment. Immediate results.

The Case for Investing in Business Analytics Technology. Read white paper.

Cut Costs & Green Your IT Operations with PC Power Management

White Paper: 4 Customer Service Myths

Mobile Security: The Essential Ingredient for Today's Enterprise

White Paper: Improve Agility with Operational Responsiveness

White Paper: 5 Best Practices for Smartphone Support

Global Research: CIOs Weigh In On Virtualization