Ian Sommerville, Software Engineering, Pearson, 2015 (10th ed.)
Robert C. Martin, Agile Software Development, Principles, Patterns, and Practices, Pearson, 2002
B. Boehm, “Get Ready for Agile Methods, With Care”, IEEE Computer, 2002
B. Meyer, Agile!: The Good, the Hype and the Ugly, Springer, 2014
D. Astels, Test Driven Development: A Practical Guide, Prentice Hall, 2003
K. Schwaber, and M. Beedle, Agile Software Development with Scrum, Prentice Hall, 2001
I. Jacobson, G. Booch, J. Rumbaugh, The Unified Software Development Process, Addison-Wesley Professional, 1999
Philippe Kruchten, The Rational Unified Process: An Introduction, Addison-Wesley Professional, 2003
Philippe_Kruchten, "A Software Development Process for a Team of One", Rational Edge, 2002
Robert C. Martin, Clean Code: A Handbook
of Agile Software Craftsmanship, Prentice Hall, 2008
Boost Unit Test Framework
Google Test
Lecture
Overview
Online guidance for
the exercise
Martin Fowler, Refactoring: Improving the
Design of Existing Code, Addison-Wesley Professional, 1999
G. Suryanarayana, G. Samarthyam, T. Sharma, Refactoring for Software Design Smells, Morgan Kaufmann, 2014
Michael C. Feathers, Working Effectively with
Legacy Code, Prentice Hall, 2004
Serge Demeyer, Stéphane Ducasse, Oscar
Nierstrasz, Object-Oriented
Reengineering Patterns, 2009
Robert C. Martin, Clean Code: A Handbook
of Agile Software Craftsmanship, Prentice Hall, 2008
Martin Fowler's Refactoring web site
Refactoring catalog
Smells to Refactoring Quick Reference
Git
Pro Git book
Repository
of the source code for the exercise
cmake (needed to build GoogleTest)
Google Test
(the repository gives access to the Google Test Primer to get started)
Installing googletest for the exercise:
quick and simple guidance, it does not replace the more extensive
documentation of the Google Test Primer