The Trouble With Software (and what to do about it)


Why IT Projects Go Wrong

Posted in General Overview,Programming by Ernie Schell on December 9, 2012

Thorin McGee writes in Target Marketing magazine: “When it’s time to implement new technologies, the focus needs to be on execution [and] internal communication….” Using the Romney campaign as his focus, McGee notes that “Ars Technica reported that the multiple vendors hired to develop ORCA [the campaign’s get-out-the-vote system] weren’t in communication [with each other] and didn’t see each other’s code until Election Day. Romney Digital Director Zac Moffat told CNET there wasn’t time for adequate beta and load testing. At one point, ORCA had so much data coming and going that the ISP mistook it for a DNS attack and shut it down.”

In short, they made every mistake in the book! Most of all, as the sheriff said in Cool Hand Luke, “What we’ve got here is failure to communicate!”

Advertisements

5 Common Mistakes Writing User Stories in Agile Development

Posted in Agile Development,General Overview by Ernie Schell on December 9, 2012

Krystian Kaczor writes on the Scrum Alliance Website: “Most of the issues with gathering requirements in agile software development and agile testing derive from issues with User Stories. Somehow expressing requirements in such a simple form causes a lot of trouble to agile teams.”

He further asserts that mistakes in User Story scenarios lead to wrong Test Cases, a poor understanding of requirements, and inappropriate implementation, which can be a “direct cause of rejecting the deliverables of the iteration.”

His five most common mistakes people make writing User Stories:

1. Not clearly identifying who “The User” is

2. Not understanding the Business Role of The User

3. Defining the Business Role incorrectly

4. Providing no Business Value or Benefit for The User

5. Defining no Acceptance Criteria or Conditions of Satisfaction for The User

As a perfect analog to these Role & Development ambiguities, there is also what I will call “Function Ambiguity.” For instance, how do you define “Customer Relationship Management?” Everyone probably has their own way of conceiving what it is, so how in the world are developers supposed to meet a generic set of needs and requirements, since, in Venn Diagram style, there is probably a small area of overlap among these different definitions. For a good example of this, see “Defining CRM: Thoughts from three experts” on the Marketing Sherpa blog.

Software Development Failures Plague 36% of N. Amer. Enterprises

Posted in Development - General,General Overview,Programming by Ernie Schell on December 9, 2012

eWeek reports that “despite the availability of a wealth of development tools and agile methodologies, an alarming 36 percent of the 200 North American organizations surveyed in a recent study found defects in new releases that had gone into production, according to CA Technologies.”

To add insult to injury, “only 4 percent of those surveyed claimed that errors are never found in production releases. This means that many organizations are launching buggy applications to market and having to solve for them later with software updates and patches.”¬† To compound the problem, “applications are often released with reduced functionality, according to 70 percent of those surveyed,” according to the CA Tech study.

“North American businesses are under pressure to deliver increasingly complex applications, and at a much faster rate than ever before to keep pace with customer demands,”¬†said Shridhar Mittal, general manager of service virtualization at CA. “Unfortunately, IT budgets are not increasing at the rate of change inherent in today’s highly distributed composite applications. This causes serious constraints to software development, resulting in delays and failures in delivering new software features to market.” Not surprisingly, Mittal suggests that service virtualization is an excellent “virtual environment for software application testing that cuts out constraints or barriers to delivery.”

Create, Assemble and Deploy – The Future of Application Development

Prashant Pawar, Delivery Manager, CORPADM, has a very interesting take on systems development (on the Infosys Website) as the “smart assembly” of industry standard components. Of course, the real challenges are (a) to be “smart” about it, and (b) to get any industry to agree on what its standards should be. Anyway, it’s a worthy goal.

Biggest Agile Challenge Is Communication

Posted in Agile Development by Ernie Schell on December 9, 2012

Application Development Trends notes that “A new survey indicates that while software development projects using the Agile methodology are doing OK, they could be doing better, with communication reported as the biggest impediment to success. The survey, conducted by Serena Software at the Agile 2012 Conference held in August, focused on the state of Agile projects underway at the time.”

Click here for more information