SEMAT (Software Engineering Methods and Theory) is an international initiative designed to
identify a common ground, or universal standard, for software engineering. It is supported by
some of the most distinguished contributors to the field. Creating a simple language to describe
methods and practices, the SEMAT team expresses this common ground as a kernel–or
framework–of elements essential to all software development.
The Essence of Software Engineering introduces this kernel and shows how to apply it when
developing software and improving a team’s way of working. It is a book for software professionals,
not methodologists. Its usefulness to development team members, who need to evaluate and
choose the best practices for their work, goes well beyond the description or application of
any single method.
“Software is both a craft and a science, both a work of passion and a work of principle.
Writing good software requires both wild flights of imagination and creativity, as well as the hard
reality of engineering tradeoffs. This book is an attempt at describing that balance.”
—Robert Martin (unclebob)
“The work of Ivar Jacobson and his colleagues, started as part of the SEMAT initiative,
has taken a systematic approach to identifying a ‘kernel’ of software engineering principles and
practices that have stood the test of time and recognition.”
—Bertrand Meyer
“The software development industry needs and demands a core kernel and language for defining
software development practices—practices that can be mixed and matched, brought on board from
other organizations; practices that can be measured; practices that can be integrated; and practices
that can be compared and contrasted for speed, quality, and price. This thoughtful book gives a
good grounding in ways to think about the problem, and a language to address the need,
and every software engineer should read it.”
—Richard Soley