Show Menu

ALM Essentials: Rules and Principles Cheat Sheet by

rules     principles     essentials     alm


Magdy Hanna, CEO of Rommana Software and chairman of the Intern­ational Institute for Software Testing, laid out some of the most important rules, tips and crucial components that a developer, project manager or tester must focus on in the ALM process.

What’s in an ALM tool:

“Appli­cation life-cycle management is supposed to span the whole life cycle, so a tool is not considered to be an ALM tool unless it supports every phase of an applic­ation life cycle,” said Hanna. “The first charac­ter­istic of an ALM tool is supporting every single phase, from inception, requir­ements, planning and management to develo­pment, QA and testing and change manage­ment.”


“Colla­bor­ation is critical to every life cycle,” said Hanna. “A tool needs strong collab­oration support to allow a team to commun­icate on the spot in real-time, and all collab­ora­tions must be documented in the tool. When products last a long time, people will have questions about why decisions were made. Teams must always have the ability to go back and look at the collab­oration notes.”

A hybrid agile mindset

“In ALM nowadays, no company will run all agile or all non-agile projects. Every company runs a hybrid set of projects,” said Hanna. “As a result, organi­zations and teams within organi­zations must meet agile and non-agile seamle­ssly, and you don’t need a separate set of tools for both. Agile has taken some very good software engine­ering practices we’ve had for years and expanded on them.”

Featur­e-based project management

“We need to change our thinking about project manage­ment,” said Hanna. “We’ve been treating requir­ements management as managing tasks and resources, but a project should really be managed based on features, which are the most important factors of any product: what we’re delivering to customers. In featur­e-based project manage­ment, we focus on managing who’s assigned a specific feature and who’s designing, coding and testing that feature.”


QA and testing

“ALM tools must document on the fly in an agile project,” said Hanna. “If I have a QA team performing some kind of explor­atory or ad hoc test (I call it on-the-fly testing), I should have any easy way to document an idea very fast with one line.”

Versioning support

“ALM needs the support of versio­ning, but when we moved to agile, many forgot about versio­ning,” said Hanna. “An ALM tool needs to support versioning of not just user stories but all the testing artifacts to allow for change manage­ment.”

Don’t be reliant on requir­ements

“We should never be relying on requir­ements or user stories for develo­pment and testing,” said Hanna. “No one can write good requir­ements. So if you have poorly written requir­ements, you will have poorly written code. Developers must think in scenarios. What kinds of use cases could possibly occur in produc­tion? The code we write will only handle 20% to 30% of what will happen in the field, so we give the users tools. Doing it right the first time means an ALM tool supports an ALM method­ology. A tool without a method­ology is nothing.”

Download the ALM Essentials: Rules and Principles Cheat Sheet

1 Page

PDF (recommended)

Alternative Downloads

Share This Cheat Sheet!



No comments yet. Add yours below!

Add a Comment

Your Comment

Please enter your name.

    Please enter your email address

      Please enter your Comment.

          Related Cheat Sheets

          Settlers of Catan Cheat Sheet
          Principles of Audio Lingual Method Cheat Sheet

          More Cheat Sheets by Davidpol

          Naming Conventions: ICD-10 Coding Systems Cheat Sheet
          Reducing Psychotropic Polypharmacy Cheat Sheet