1. A beginners guide to testing Philip Johnson, University of Hawaii youtube 31:38
  2. Lecture 1 - 08/27/2012 - Computer Science 169 UCBerkeley youtube 1:14:48 [Armando Fox and David Patterson Fall 2012 University of California at Berkeley]
  3. 2:30 Heroku wikipedia [1]
  4. 3:00 Software as a service wikipedia [2]
  5. 49:18 reference to Jeff/Kent Beck on refactoring code to improve architecture of developed code. cf http://agilemanifesto.org/ [5]
  6. Software design pattern wikipedia
  7. Category:Software design patterns wikipedia
  8. Crossing the software education chasm, Armando Fox UC Berkeley and David Patterson UC Berkeley, Communications of the ACM (CACM), Volume 55 Issue 5, May 2012, Pages 44-49. [8] (referenced in Lecture 1, overviews ideas behind his approach)
  9. review of subject matter of Software Engineering: Introduction to IEEE SWEBOK: Software Engineering Body of Knowledge [9]
  10. Lecture 2 - 08/29/2012 - Computer Science 169 youtube UCBerkeley 1:17:07
  11. Introduction to Pair Programming, version 2 Laurie Williams youtube 10:02
  12. Pair testing wikipedia
  13. Ruby programming language wikipedia
  14. Ruby in Twenty Minutes 4 pages
  15. Lecture 3 - 09/05/12 - Computer Science 169 youtube 1:19:52
  16. (note: the last problem references duck typing, see Duck typing wikipedia)
  17. The Test Case as a Scientific Experiment By David Coutts StickyMinds.com
  18. Scientific method wikipedia
  19. Pair Programing Part 1 Tim Ottinger youtube 8:30
  20. Lecture 4 - 9/10/12 - Computer Science 169 youtube 1:18:07
  21. Ruby on Rails wikipedia
  22. Model-view-controller wikipedia
  23. CRUD wikipedia
  24. Active record pattern wikipedia
  25. The Demons of Ambiguity By Harry Robinson (StickyMinds)
  26. Testing Dialogues - In the Executive Suite By James Whittaker, Microsoft (StickyMinds)
  27. Pair Programming Part II Tim Ottinger youtube 14:13
  28. Lecture 5 - 9/12/12 - Computer Science 169 youtube 1:21:28
  29. Rake software wikipedia
  30. Haml wikipedia
  31. HTTP cookie
  32. Seven principles of software testing by B Meyer, IEEE Computer, volume 41, issue 8, 99 -- 101.
  33. Lecture 6 - 9/17/12 - Computer Science 169 youtube 1:19:05
  34. Search using StackOverflow, a search engine, etc. StackOverflow wikipedia
  35. Behavior Driven Development wikipedia
  36. User story wikipedia
  37. Acceptance test wikipedia
  38. INVEST in Good Stories, and SMART Tasks Posted on August 17, 2003 by Bill Wake
  39. Measuring the Velocity of your Scrum Team
  40. http://www.irc.perl.org/reasonable_person.html (viewed as a responsibility rather than an assumption)
  41. RailsCasts - #155 Beginning with Cucumber youtube 15:22
  42. IEEE SWEBOK: Chapter 2: Software Requirements
  43. Lecture 7 - 9/17/12 - Computer Science 169 youtube 1:17:31
  44. Integration testing wikipedia
  45. Beyond Test Driven Development: Behaviour Driven Development in Ruby Dave Astels youtube GoogleTechTalks 47:41
  46. Mock object wikipedia
  47. Are there any good mutation testing tools for ruby 1.9 and RSpec2? stackoverflow
  48. Mutation testing wikipedia [note: we will go into more detail on this later in the course.]
  49. quote: It is what you don't expect... that most needs looking for. (from Neal Stephenson's Anathem ref)
  50. IEEE SWEBOK: Chapter 5: Software Testing
  51. Test Plan wikipedia
  52. Lecture 8 - 09/24/2012 - Computer Science 169 1:18:52
  53. Survey Finds 58% of Software Bugs Result from Test Infrastructure and Process, Not Design Defects
  54. KISS principle wikipedia
  55. Algorithmic information theory wikipedia
  56. Occam's Razor wikipedia
  57. Can anyone suggest me good source (Easy examples) for cucumber and rspec tutorials (rails 3)??? stackoverflow
  58. RSpec Getting Stared
  59. Behavior-driven testing with RSpec: A comprehensive approach to test-driven development Bruce Tate (bruce@rapidred.com), CTO, WellGood LLC
  60. Outside-In BDD: How?! example from Sarah Mei's blog
  61. Lecture 12 - 10/08/12 - Computer Science 169 youtube 1:18:42
  62. Characterization tests wikipedia
  63. software metrics wikipedia
  64. What is a good Code to Test Ratio? stackoverflow
  65. Code coverage wikipedia
  66. ABC metric Gmetrics
  67. cyclomatic complexity Gmetrics
  68. cyclomatic complexity wikipedia
  69. Code Smells 18 May 2006 Jeff Atwood's Coding Horror blog
  70. Code refactoring wikipedia
  71. Zune bug explained in detail Devin Coldewey Wednesday, December 31st, 200 TechCrunch
  72. Software testability wikipedia
  73. Things You Should Never Do, Part I by Joel Spolsky -- Joel on Software (don't throw out existing code, fix it)
  74. Test data generation wikipedia
  75. Exploratory testing wikipedia
  76. Change Code Without Fear By Nada daVeiga, February 06, 2008, Dr. Dobb's: The World of Software Development
  77. Lecture 18 - 10/29/2012 - Computer Science 169 youtube 1:19:28
  78. Service Level Objective (SLO) wikipedia
  79. Apdex (Application Performance Index) wikipedia
  80. Failure Is Part of Success: Eduardo Zanatta at TEDxBYU TedTalks youtube 6:54
  81. Getting Started with Autotest ? Continuous Testing blog entry
  82. Pingdom wikipedia
  83. New Relic wikipedia
  84. Software performance testing wikipedia
  85. Google Analytics wikipedia
  86. Refactoring as a testability transformation by Mark Harman, University College London
  87. Lecture 19 - 10/31/2012 - Computer Science 169 youtube 1:23:34
  88. The Antifragile Organization By Ariel Tseitlin, Communications of the ACM, Vol. 56 No. 8, Pages 40-44.
  89. Software reliability testing wikipedia
  90. Security testing wikipedia
  91. Software security testing by B. Potter; G. McGraw, IEEE Security&Privacy Magazine (September 2004), 2 (5), pg. 81-85
  92. Formal Methods for Dependable Computing: From Models, through Software, to Circuits Uploaded on Nov 4, 2010, Speaker/Performer: Sanjit A. Seshia, Asst. Professor of EECS, UC Berkeley youtube 48:59
  93. Formal Versus Agile: Survival of the Fittest? pt1 youtube 9:25
  94. Formal Versus Agile: Survival of the Fittest by Black, S.; Boca, P.P. ; Bowen, J.P. ; Gorman, J. ; Hinchey, M.; Computer (Volume:42 , Issue: 9 ) Sept. 2009, 37 - 45 (talk is based on this paper which should also be read)
  95. Formal Versus Agile: Survival of the Fittest? pt2 youtube 8:54
  96. Formal Methods wikipedia
  97. Y2K problem wikipedia
  98. 7:55 design by contract
  99. Formal Versus Agile: Survival of the Fittest? pt3 youtube 9:27
  100. Coverity wikipedia
  101. Program transformation wikipedia
  102. Formal Versus Agile: Survival of the Fittest? pt4 youtube 8:02
  103. Expressing Problem Specifications Robert Lover Elementary Logic 2008, pp 53-66
  104. Expressing Program Designs Robert Lover Elementary Logic 2008, pp 67-75
  105. Algorithmic Unsolvability Proofs Robert Lover Elementary Logic 2008, pp 203-209
  106. Loop invariants Verification corner youtube 21:45
  107. Loop invariant wikipedia
  108. Hoare logic wikipedia
  109. Specifications in Action - The Chunker verification corner youtube 14:32
  110. Spec# wikipedia
  111. Splint programming tool wikipedia
  112. Java Modeling Language wikipedia
  113. ESC Java wikipedia
  114. Design by contract wikipedia
  115. Design By Contract and Test-Driven Development stackoverflow
  116. Design By Contract vs Test Driven Development? stackoverflow
  117. Codemanship presents... Design By Contract Meets TDD youtube 7:51
  118. Test Driven Design meets Design by Contract by Jim Weirich youtube 34:24 ``Jim talks about Test Driven Development and how to implement Design By Contract in the Ruby programming language.''
  119. Programs That Test Themselves Meyer, B.; Fiva, A. ; Ciupa, I. ; Leitner, A. ; Yi Wei ; Stapf, E.; Computer (Volume:42 , Issue: 9 ) Sept. 2009, 46 - 55
  120. Loop termination Verification Corner youtube 21:26
  121. Stepwise refinement Verification corner youtube 22:14
  122. Frama-C industrial usage by Dassault Aviation youtube 5:06
  123. Program Correctness Proofs Robert Lover Elementary Logic 2008, pp 211-231
  124. Proving a Computer Program's Correctness Schneier on Security blog entry October 2, 2009 by Bruce Schneier
  125. Formal Verification wikipedia
  126. What's Wrong with My Program GoogleTechTalk youtube 40:34 Jamie Andrews
  127. Random testing wikipedia
  128. Oracle (software testing) wikipedia
  129. Is mutation an appropriate tool for testing experiments? J. H. Andrews University of Western Ontario, L. C. Briand Carleton University, Y. Labiche Carleton University, ICSE '05 Proceedings of the 27th international conference on Software engineering; Pages 402-411.
  130. gcov wikipedia
  131. From testing to diagnosis: an automated approach Fleurey, F. ; Le Traon, Y. ; Baudry, B.; Automated Software Engineering, 2004. Proceedings. 19th International Conference on; 20-24 Sept. 2004; 306 - 309
  132. How to Write Clean, Testable Code: Psychology of Testing (or why our intuition of testing is wrong) GoogleTechTalks youtube 1:18:40 Misko Hevery
  133. Law of Demeter Wikipedia
  134. Design for testability in object-oriented systems Robert V. Binder RBSC, Inc; Communications of the ACM; Volume 37 Issue 9, Sept. 1994; Pages 87-101.
  135. Mutation Testing Hernan Wilkinson youtube 47:54
  136. Mutation Testing Cost Reduction Techniques: A Survey Usaola, M.P. ; Mateo, P.R.; Software, IEEE (Volume:27 , Issue: 3 ); May-June 2010; 80 - 86
  137. Are there any good mutation testing tools for ruby 1.9 and RSpec2? stackoverflow
  138. Mutation testing wikipedia [note: we will go into more detail on this later in the course.]
  139. Mutation Testing, a step further to the perfection octo blog
  140. Google Testing Tech Talk presents Hadar Ziv youtube 57:40
  141. Analysis of Software Test Item Generation?? Comparison Between High Skilled and Low Skilled Engineers Masayuki Hirayama, Osamu Mizuno, Tohru Kikuno ; Journal of Computer Science and Technology March 2005, Volume 20, Issue 2, pp 250-257 .
  142. Introduction to Software Review Philip Johnson U of Hawaii youtube 15:56
  143. Software Review wikipedia
  144. Fagan Inspection wikipedia
  145. Checklists, software and software security Jim Bird AppSec Blog
  146. 11 proven practices for more effective, efficient peer code review Jason Cohen, IBM developerWorks blog
  147. Active design reviews: principles and practices David Parnas and David Weiss, ICSE '85 Proceedings of the 8th international conference on Software engineering Pages 132-136 IEEE Computer Society Press Los Alamitos, CA, USA 1985
  148. IEEE SWEBOK: Chapter 11: Software Quality
  149. Exploratory Testing GoogleTechTalks youtube 53:36 Jon Bach
  150. Exploratory testing wikipedia
  151. How did software get so reliable without proof? C. A. R. Hoare [FME'96: Industrial Benefit and Advances in Formal Methods Lecture Notes in Computer Science Volume 1051, 1996, pp 1-17]
  152. Eager Demo 3mins Allen Cypher youtube 3:03 [programming by example 1991 demo]
  153. The Evolution of End User Programming GoogleTechTalk youtube 1:03:21 Allen Cypher, IBM Research Almaden.
  154. Rethink Robotics: Baxter Intro Rethink Robotics youtube 2:24
  155. Customer Success Story - The Rodon Group Rethink Robotics youtube 3:34
  156. Hints on Test Data Selection: Help for the Practicing Programmer Demillo, R.A. ; Lipton, R.J. ; Sayward, F.G.; Computer (Volume:11 , Issue: 4 ); April 1978; 34 - 41.
  157. Automated Design Using Darwinian Evolution and Genetic Programming Stanford University youtube 1:15:45 (February 18, 2009) John Koza given to EE 380 Seminar on Computer Systems
  158. Genetic programming wikipedia
  159. Testing: a roadmap Mary Jean Harrold College of Computing, Georgia Institute of Technology; ICSE '00 Proceedings of the Conference on The Future of Software Engineering; 61 - 72.
  160. GTAC 2013 Keynote: Evolution from Quality Assurance to Test Engineering Ari Shamash, Google GoogleTechTalk youtube 48:50
  161. Software Testing Research: Achievements, Challenges, Dreams Bertolino, Antonia ; Ist. di Scienza e Tecnol. dell''Inf., Consiglio Naz. delle Ric., Pisa ; Future of Software Engineering, 2007. FOSE '07 ; 85 - 103 . or this link for same thing -- it is an IEEE article which is covered by the University's subscription service.