Skip navigation
NASA Logo, National Aeronautics and Space Administration
Modeling Guru Banner

Random Thoughts

2 Posts

Useful reference websites

Posted by btwomack Aug 22, 2007

My references for the agile software development process :


Agile software development (


A Gentle Introduction to XP (


Testing resources for Extreme Programming (


Additional Agile Development Resources (


A conference for those wanting a more direct experience ( 2006 and 2007 sold out, so, register early if you plan to attend


My references for the non-agile software development process :


The Software Engineering Institute's CMMI (


Recommended Books

Posted by btwomack Aug 17, 2007

For those just getting started in software development (or those that maybe missed these topics in college):


Test-Driven Development by Example by Kent Beck (TDD is arguably the most effective practice that any developer can apply to improve the quality of their own code)


Code Complete by Steve McConnell (One of the classics with many good tips on writing better code )



For anyone writing software I recommend the following reference books:


Refactoring: Improving the Design of Existing Code by Martin Fowler, Kent Beck, John Brant, and William Opdyke


Refactoring to Patterns by Joshua Kerievsky


Agile Software Development, Principles, Patterns, and Practices by Robert C. Martin


Extreme Programming Explained: Embrace Change by Kent Beck and Cynthia Andres


Introduction to Algorithms by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein ( A classic reference for anyone developing algorithms)


For those designing software systems (and don't kid yourself...if you're writing're designing systems!)


Design Patterns Elements of Reusable Object-Oriented Software By Erich Gamma et. al.


AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis by William J. Brown , Raphael C. Malveau and Thomas J. Mowbray



For those designing software on parallel systems the following are also helpful:


Patterns for Parallel Programming by Timothy G. Mattson, Beverly A. Sanders, and Berna L. Massingill


Real-Time Design Patterns by Bruce Powel Douglass (although not orginally intended for HPC, many of the patterns described address the same issues encountered by the HPC community)



And no developer writing scientific software should be without at lease one of these:


Numerical Recipes: The Art of Scientific Computing by William H. Press, Saul A. Teukolsky, William T. Vetterling, and Brian P. Flannery


Numerical Recipes in FORTRAN: The Art of Scientific Computing by William H. Press, Brian P. Flannery, Saul A. Teukolsky, and William T. Vetterling


Numerical Recipes in C++: The Art of Scientific Computing by William H. Press, Saul A. Teukolsky, William T. Vetterling, and Brian P. Flannery

USAGov logo NASA Logo -