When Agile Projects Go Bad - CIO.com - Business Technology Leadership
agilescottberkun.com » Why requirements stink
Two links to Berkun in one day! But there is a great axiom contained within: "Requirements is not Design."
The one book anyone working on requirements needs to read is Exploring Requirements by Gerald Weinberg. It points out most of the stupidity that goes on, explains avoidance tactics, and clearly expresses how requirements are part of the design process - that good problem solving techniques can quickly make your requirements documents better than ever.
Here’s a requirements list: Make a $5 car that goes 500 miles per hour, weighs 10 lbs, and is invisible. Those are very clear requirements. They’re also impossible.
"I don’t want an engineer working on something s/he thinks is stupid. How I can expect them to do good work on something they find stupid?"
1: Requirements is not Design. 2: Too Many Cooks. I like Berkun.
(1) Requirements may be impossible to implement. (2) Requirements writing is hard when no single person has the knowledge and authority.User Research for Personas and Other Audience Models :: UXmatters
“We always use a real person—someone we know personally—as the example user for each persona. It’ll be a friend or a friend of a friend, but it’s someone we can call and ask questions. That detail really helps make each persona more real and approachable to everyone on the team.”—Todd Zaki WarfelAgile User Experience Projects (Jakob Nielsen's Alertbox)
Agile projects aren't yet fully user-driven, but new research shows that developers are actually more bullish on key user experience issues than UX people themselves.
http://www.useit.com/alertbox/agile-methods.html Agile projects aren't yet fully user-driven, but new research shows that developers are actually more bullish on key user experience issues than UX people themselves. # Separate design and development, and have the user interface team progress one step ahead of the implementation team. That way, when it comes time to build something, it's already been designed and tested. (And yes, you can do both in a week or two by using paper prototypes and discount user testing.) # Maintain a coherent vision of the user interface architecture. Create the initial vision during a "sprint zero" period — before any implementation has started — and maintain it through annual (or semi-annual) design vision sprints. You can't just design individual features; they have to fit together into a coherent whole — a whole that must be designed as well. Bottom-up user interface design equals a confused total user experience (the Linux syndrome).
Distributing your UX personnel doesn't mean you have to abandon all the benefits of having a centralized, specialized group. Often, a matrix structure provides a good compromise, making UX professionals part of individual projects on a day-to-day basis, but still offering some company-wide coordination.
Nothing new, but fun to throw at the suits - "Clearly, Agile is considerably better than the old Waterfall method. Good riddance to that one. However, the professionals in our new study still felt that Iterative Design was marginally better than Agile"The Agile Disease « Luke Halliwell’s Weblog
The games industry is rushing headlong to Agile development methodologies just now; it’s a great source of excitement for some, with conference sessions and magazine articles left, right and centre, and “evangelists” spreading the word. I’m sick of it. I can’t wait for the day when everyone realises how much of a fad-diet, religious-cult-inspired, money-making exercise it is for a group of consultants.
Agile doesn't mean no planning or allowing to reject any kind of "older" approarches, which are actually necessary to do the things.
All methodologies imply a prescribed approach, a single-minded, fixed set of processes that removes flexibility and rationality.Gwaredd Space: Game Development in a Post-Agile World
this is a great articleBringing User Centered Design to the Agile Environment - Boxes and Arrows: The design behind the design
"UCD can be too documentation-heavy, isolated and risky but Agile needs help with defining requirements and concept development. How can Agile and user centric principles work together?"Don't let junior programmers cowboy code | Code of Doom
consejo: no soltar en el ruedo a los programadores juniorIs the Supremacy of Object-Oriented Programming Over?
I never expected to see this. When I started my career, Object-Oriented Programming (OOP) was going mainstream. For many problems, it was and still is a natural way to modularize an application. It grew to (mostly) rule the world. Now it seems that the supremacy of objects may be coming to an end, of sorts.
talking about object oriented programming and functional programming...leads you to believe the best designs leverage both.
Hybrid languages = OOP FP. CouchDB Map-Reduce Concurrency
In the comments: "On the computer science front, pure OO, based on late-binding and message sends has always built on functional ideas and encourages a declarative programming style. Lisp and Smalltalk have much in common. The best way to look at it is that a function can be an object too. So I see no or very little conflict between OO and functional programming. The real issue is that pure OO has been viewed (rightly so) as a disruptive technology. The incumbent technology base, built on C and Unix have found ways to neutralise the potential disruptive effect and hold on to their market. As a consequence we have spent the last 20 years using curly bracket languages that are ‘OO’ in name only. [...] Pure OO is still in obscurity. Languages like Ruby and Python show what is possible with Pure OO ideas and late-binding, but they do not extend these ideas or take them even as far as Smalltalk did."
The fact is, for a lot of these applications, it’s just data. The ceremony of object wrappers doesn’t carry its weight. Just put the data in a hash map (or a list if you don’t need the bits “labeled”) and then process the collection with your iterate, map, and reduce functions. This may sound heretical, but how much Java code could you delete today if you replaced it with a stored procedure?jessenoller.com » Blog Archive » The cost of (not) testing software
"Essentially, it is in your best interest, as a developer, as a team, to encourage lots and lots of tests lower in the stacks shown here. It starts with comprehensive, checked in unit tests. It continues with having a strong, repeatable testing discipline (for which I recommend test automation)."
As a long-time automation-engineer/test-focused guy I've pondered the great existential question of "how much testing" is enough for awhile. More recently, I've started focusing on the cost of not testing a product.