Copyright © 2004 Patrick McDermott UC Berkeley Extension

Slides:



Advertisements
Similar presentations
E X treme Programming & Agile Modeling Copyright © 2003 Patrick McDermott UC Berkeley Extension
Advertisements

Diligence vs. Slothfulness *Investing my time and energy to complete each task assigned to me.
The Cathedral and the Bazaar: A Look at Open-Source ECE 417/617: Elements of Software Engineering Stan Birchfield Clemson University.
W. Edwards Deming The University of California Berkeley Extension Copyright © 2007 Patrick McDermott Deming, W. Edwards, Out.
Chapter 1 The Systems Development Environment
Creating a positive classroom atmosphere
Chase your dreams By: fatema taha shuwaikh. The goal of this session Catch a dream or even dreams, then try as hard as you can to achieve them. After.
The Mythical Man-Month By: Zac Lippard CS 470. What is the “Man-Month”? This is the idea that men and months are interchangeable between each other. This.
OPEN DEVELOPMENT, AGILE, XP AND SCRUM © University of LiverpoolCOMP 319slide 1.
TAKS Strategies Review. Strategies Review… Today we will review the strategies we have discussed over the course of this six weeks. Write down the strategies.
The Mythical Man-Month by Fred Brooks (I) Published 1975, Republished 1995 Experience managing the development of OS/360 in Central Argument –Large.
Goals Define “God” by the Judeo-Christian definition Define omnipotence, omniscience, omni- benevolence, and omni-presence Be able to list and defend several.
Motivation Why study Software Engineering ?. What is Engineering ? 2 Engineering (Webster) – The application of scientific and mathematical principles.
Software Engineering and Design Principles Chapter 1.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 2 Software Processes.
1 Programming for Engineers in Python Autumn Lecture 5: Object Oriented Programming.
Reasons to study concepts of PL
1 Foundations of Software Design Fall 2002 Marti Hearst Lecture 29: Computability, Turing Machines, Can Computers Think?
Prologue: An Inexorable Emergence By Ray Kurzweil from book.
How do you simplify? Simple Complicated.
Law 1: The remaining work to finish in order to reach your goal increases as the deadline approaches. Law 2: Adding manpower to a late software project.
Copyright © 2004 Patrick McDermott UC Berkeley Extension
An Essay Concerning Human Understanding John Locke.
Information System Economics Software Project Cost Estimation.
Los Angeles, Feb 24 nd, 2011 Alan Kay Viewpoints Research Institute Designing The Future of Software Vanguard.
Use Cases College of Alameda Copyright © 2007 Patrick McDermott.
Lecture 11: Machine Processing Intro to IT COSC1078 Introduction to Information Technology Lecture 11 Machine Processing James Harland
Creativity. What is creativity? A way of thinking and doing that brings about unexpected and original ideas.
ICAPRG301A Week 4Buggy Programming ICAPRG301A Apply introductory programming techniques Program Bugs US Navy Admiral Grace Hopper is often credited with.
David Evans Turing Machines, Busy Beavers, and Big Questions about Computing.
The Future Lies Ahead: “Soft Computing” Copyright © 2003 Patrick McDermott UC Berkeley Extension
Programming and Grid HUST CGCL 齐力. the clue Programming Life –Coder and Coding –Designer and Architecture –Analyst and Software Engineer Grid in my way.
Open Source Copyright © 2003 Patrick McDermott UC Berkeley Extension
O/O is OK! O/O Benefits Copyright © 2006 Patrick McDermott UC Berkeley Extension
Lecture 1: Performance EEN 312: Processors: Hardware, Software, and Interfacing Department of Electrical and Computer Engineering Spring 2013, Dr. Rozier.
Facts and Fallacies of Software Engineering (Rob Glass) CSE301 University of Sunderland Discussed by Harry R. Erwin, PhD.
I am a Person Who… Re-Write and complete the following sentences as quickly as possible. Write the 1 st thing that comes to mind!! I am a person who likes.
CSC – 332 Data Structures Dr. Curry Guinn. Quick Info Dr. Curry Guinn –CIS 2045 – –
UNIVERSITY OF SOUTH CAROLINA Department of Computer Science and Engineering Programs with Common Sense Mingzhe Du and Hongying Du April, 2011 This paper.
From Quality Control to Quality Assurance…and Beyond Alan Page Microsoft.
1 Caring for the whole Person Copyright 2010, Clarion Word Publishing You Spirit (Spiritual) Spirit (Spiritual)
15 October 2003Computer Science1 David Evans ComputerScience.
Introduction to Philosophy Lecture 5 The Ontological Argument By David Kelsey.
Debugging Strategies from Software Carpentry. Agan's Rules Many people make debugging harder than it needs to be by: Using inadequate tools Not going.
'A teacher affects eternity; he can never tell where his influence stops.’
Software Design 8.1 Compsci 108 l Object oriented design and programming of medium-sized projects in groups using modern tools and practices in meaningful.
Creative Commons Attribution- ShareAlike 2.5 License Sakai Programmer's Café Sakai Oxford Tetra ELF Workshop Welcome to the Sakai Oxford Tetra ELF Workshop.
Software Design 18.1 CPS 108 l Object oriented design and programming of medium-sized projects in groups using modern tools and practices in meaningful.
Are We Spiritual Machines? Ray Kurzweil vs. the Critics of Strong A.I.
HPEC 2004 Panel Session: Amending Moore’s Law for Embedded Applications Roadmapping the Semiconductor Industry: Are we reaching the end of the road? Bob.
Object Orientation Concepts, Terminology and a Story. © Allan C. Milne School of Engineering, Computing & Applied Mathematics University of Abertay v
Example 1: Tutee : Ms. Q. Assignment : her favorite place What did I do : let her read essay first + told her what I thought this essay in positive.
Timed Writing Exam Preparation When? Week 7 How long? 1 hour What? Task 1 report (bar chart or line graph, 20 minutes, 150 words) and Task 2 advantages.
CSE SW Measurement and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M15 version 5.09Slide 1 SMU CSE.
Chapter VI What should I know about the sizes and speeds of computers?
1/20 1 How to become a Guru Coder Michael Smith, TeraTech, Inc x110 Copyright.
Welcome to Software Engineering. Lecture 1 Metaphysics of Software Engineering Alex
© 2015 albert-learning.com How to talk to your boss How to talk to your boss!!
Check In, Check Out Presented by: Jenny Rohrbaugh, IST Facilitator Noelle McCarthy, School Counselor Scotts Branch Elementary School.
Project Management IS301 – Software Engineering Lecture #5 – M. E. Kabay, PhD, CISSP Dept of Computer Information Systems Norwich University.
CSCE 240 – Intro to Software Engineering Lecture 3.
Welcome to Software Engineering
Brooksisms And Other Nuggets of Programming Wisdom
The Fundamental Laws of Software Development
CS Programming I Jim Williams, PhD.
A Lesson on how to handle The Struggle.
Disciplines Of A Superior Programmer
Argument 1 Argument 2 Argument 3
Planning and Estimation
Lecture 23: Computability CS200: Computer Science
Presentation transcript:

Copyright © 2004 Patrick McDermott UC Berkeley Extension

1. Brooks’ Law Adding Staff to a Late Software Project will make it Later. Chicken’s Pecking Order FSNP Brooks, Frederick P., Jr., The Mythical Man-Month: Essays on Software Engineering, 20 th Anniversary Edition, Reading, Massachusetts: Addison-Wesley ( ), 1995 (1975), p. 25.

2. Conservation of Complexity Simplicity is Complicated –John Naisbitt has observed that the computer is a tool that manages complexity, and as such, just as highways encourage more cars, the computer invites more complexity into society. Human Languages – 日本語 Japanese: No tense, number, gender –but Honorifics, Kanji 漢字 IRS –The Tax Code as we know it could not exist without computers –Technology was supposed to simplify our lives?!?

3. Cranes & Spandrels A Good Reason, a Bad Reason… –or No Reason At All Things are the Way They are because They got that Way: Vestigial Organs Hume’s Fallacy –Ought not Deducible from Is Stephen J. Gould Spandrels Patrick McDermott Cranes

4. Embrace Contradiction  The First Law of Logic for Analysts: Logic doesn’t always Work!  You can hide in plain sight.  If Everybody agrees, Somebody is Wrong!  There is no such thing as Nothing.  The greatest Truths are told in fiction.  To remember something, stop trying to remember it.  If you want something done, assign it to someone who is busy.  Dickens was right: This is the best of times, and the worst of times.

5. Hofstadter’s Law Mis-under-estimating It always takes longer than you expect, even when taking into account Hofstadter’s Law Douglas Hofstadter, Author of: – I Am a Strange Loop –Gödel, Escher, Bach: An Eternal Golden Braid –The Mind’s I: Fantasies and Reflections on Self and Soul –Fluid Concepts and Creative Analogies: Computer Models of the Fundamental Mechanisms of Thought –Le Ton beau de Marot: In Praise of the Music of Language

6. K.I.S.S. Keep it Simple, Stupid! Occam’s Razor— –Given 2 equally likely alternatives –Choose the one with the fewest assumptions –i.e. the simplest. “Simple things should be simple. Complex things should be possible.” — Widely attributed to Alan Kay Newton, Harry, Newton’s Telecom Dictionary, 22nd Edition, San Francisco: CMP Books ( ), 2006.

7. Laziness Unleashed A Good Programmer is a Lazy Programmer Eric S. Raymond: –“An important trait of the great ones is constructive laziness.” –“Good programmers know what to write. Great ones know what to rewrite (and reuse)” Don’t do anything twice How do you avoid an accident while backing ?

8. Lubarsky’s Law Lubarsky’s Law of Cybernetic Entomology There’s Always Another Bug Amelia Earhardt Typos in riting No perfect Kata Linus’s Law –Given Enough Eyeballs, All Bugs Are Shallow Linus Torvalds (Linus of Linux)

9. The Middle Way  Best of Both Worlds  Goldilocks, Super Systems Analyst  Bad Ideas are just Good Ideas carried to Extreme  Use it to Your Advantage –Too much, What you want, Too little

10. Moore’s Law Gordon Moore, Intel co-founder Computing Power doubles every 18 Months Trend has held for three decades Will we Hit the Wall??

Human Smartest? “Before [the 21 st ] century is over “human beings will no longer be the most intelligent or capable type of entity on the planet.” Kurzweil, Ray, The Age of Spiritual Machines: When Computers Exceed Human Intelligence, New York: Viking ( ), “There are more than enough new computing technologies now being researched, including three-dimensional chips, optical computing, crystalline computing, DNA computing, and quantum computing, to keep the law of accelerating returns [Moore’s Law] going for a long time.” “Once a computer achieves a human level of intelligence, it will necessarily soar past it.”