By David Sanders 11-20-08. Title Explanation  Werewolves are quite terrifying, simply because they transform unexpectedly into horrors. To kill werewolves,

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Advertisements

1 Chapter 2 Software Processes An overview of conventional software process models, Rational Unified Process, and CASE tools.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
INFORMATION TECHNOLOGY IN BUSINESS AND SOCIETY SESSION 20 – HOW SOFTWARE IS MADE SEAN J. TAYLOR.
Delivering peace of mind Architecting for Changes with UML Emmanuel FUCHS C2 Architect.
Introduction to Software Engineering Lecture 3 André van der Hoek.
The Mythical Man-Month by Fred Brooks (I) Published 1975, Republished 1995 Experience managing the development of OS/360 in Central Argument –Large.
No Silver Bullet - Essence and Accident in Software Engineering By: R. Adam Mead.
No Silver Bullet “There is no single development, in either technology or management technique, which by itself promises even one order-of magnitude improvement.
What is Software Engineering? And why is it so hard?
Readings in Computer Science: Software Engineering No Silver Bullet Essence and Accidents of Software Engineering Frederick P. Brooks, Jr. Prepared by.
No Silver Bullet Essence and Accidents of Software Engineering By Frederick P. Brooks Frederick P. Brooks Presentation by Yan Qi
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. slide 1 CS 125 Introduction to Computers and Object- Oriented Programming.
“No Silver Bullet” by F. Brooks
Estimating project size, effort and schedule
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Process Models.
Introduction To Rational Rose CS 501 Recitation Session November 1, 1999.
September 1999 Overview Software Engineering1 CS466: Tools and Processes for Software Gio Wiederhold Dorothea Beringer Anca-Juliana Stoica.
SOFTWARE CRISIS SOLUTIONS? © University of LiverpoolCOMP 319slide 1.
Software Engineering Introduction. Why are you here? …alternatively, why do we think you need to be here? Why a course on software engineering? How is.
System Analysis & Design
The Systems Development Environment. Learning Objectives Define information systems analysis and design. Describe the different types of information systems.
Essence and Accident in Software Engineering By: Mike Hastings.
INTROSE Introduction to Software Engineering Raymund Sison, PhD College of Computer Studies De La Salle University Software: Definitions,
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
CST 316 Process. Junior Project Process Provide necessary points of communication for individual effort. Allow a controllable division of labor. Divide.
272: Software Engineering Fall 2012 Instructor: Tevfik Bultan Lecture 0: Introduction.
No Silver Bullet – Essence and Accident in Software Engineering.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
No Silver Bullet. CS460 - Senior Design Project I (AY2004)2 No silver bullet "No Silver Bullet" –– a paper by Fred Brooks, Professor of Computer Science.
Software Design: An Introduction by David Budgen Presented by Shane Marcus EEL 6883 – Spring 2007 Presented by Shane Marcus EEL 6883 – Spring 2007.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1 Software Processes (Chapter 3)
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
1 No Silver Bullet Brooks rides again…. 2 Essential Difficulties What are these “essential difficulties” that Brooks is referring to? Complexity Conformity.
Software Engineering Introduction and Overview Takes customer-defined goals and constraints and derives a representation of function, performance, interfaces,
Core Concepts of Geoinformatics: introdcution Gilberto Camara National Institute for Space Research, Brazil Institut für Geoinformatik, Univ Münster.
Object-Oriented Analysis and Design An Introduction.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Informatics 43 – September 29, 2015 Lecture 1-1 Emily Navarro.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Slide 2.1 CHAPTER 2 THE SOFTWARE PROCESS. Slide 2.2 Overview l Client, Developer, and User l Requirements Phase l Specification Phase l Design Phase l.
SOFTWARE DESIGN. INTRODUCTION There are 3 distinct types of activities in design 1.External design 2.Architectural design 3.Detailed design Architectural.
No Silver Bullet – Essence and Accident “Not only are there no silver bullets now in view, the very nature of software makes it unlikely that there will.
“No Silver Bullet”. No Silver Bullet  "No Silver Bullet" –– a paper by Fred Brooks, Professor of Computer Science at University of North Carolina in.
The Rational Unified Process 1 EECS810: Software Engineering.
RE-ENGINEERING AND DOMAIN ANALYSIS BY- NISHANTH TIRUVAIPATI.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
CS3320-Chap21 Office Hours TR 1:00-2:15 PM W 2:30-3:30 PM By appointment.
1 FPB 11/24/13 Nuggets from The Mythical Man-Month Fred Brooks University of North Carolina at Chapel Hill
THE PHOENIX ARCHITECTURE A New Approach to Student Satellite Software Riley Pack University of Colorado at Boulder.
CS 310 Ch 4: Software Processes Software process: a set of activities that lead to a software system specification design and implementation validation.
1 SYS366 Week 2 - Lecture Visual Modeling and Process.
PRESENTATION 2 CS 5391 Survey of Software Engineering Chang-Ho Lee No Silver Bullet: Essence and Accidents of Software Engineering By Frederick P. Brooks,
CHAPTER 5 GENERAL OOP CONCEPTS.
Fred Brooks - A Software Engineering Icon - “No Silver Bullet”
Introduction to System Analysis and Design
Software Processes.
Informatics 43 – March 31, 2016.
CS 1104 INTRODUCTION TO COMPUTER SCIENCE
Introduction To System Analysis and Design PART 2
مدل‌هاي فرايند پيشنهادي
Software crisis solutions?
UFCE8V-20-3 Information Systems Development SHAPE Hong Kong 2010/11
مفهوم الموازنة العامة المقدمة
Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Nuggets from The Mythical Man-Month Fred Brooks University of North Carolina at Chapel Hill ONR_Updated.
“No Silver Bullet” by F. Brooks
Presentation transcript:

By David Sanders

Title Explanation  Werewolves are quite terrifying, simply because they transform unexpectedly into horrors. To kill werewolves, you need silver bullets.  Software Engineering monsters include missed schedules, blown budgets, and flawed products.  Sadly, there is no “silver bullet” for these kinds of problems.

Essential Difficulties  We must observe that the anomaly is not that software progress is slow, but rather hardware progress is so fast.  The “essence” defines the difficulties inherent to the nature of the software.  The “accidents” are the difficulties that are not inherent.

Essence  Essence of a software entity is a construct of interlocking concepts: data sets, relationships among data items, algorithms, and invocations of functions. The essence is abstract. Think like CS 320 Data Structures.  The author believes the hard part of building software is the specification, design, and testing of the conceptual construct, not the labor of representing it and testing the fidelity of the representation.

Essence  Inherent properties of the essence of modern software systems include:  Complexity  Conformity  Changeability  Invisibility

Past Breakthroughs  High-level languages  Time Sharing  Unified Programming Environments

Hopes for the Silver  Ada’s philosophy and other high-level language advances. That is, modularization, abstract data types, hierarchical structuring.  Object oriented programming  Artificial Intelligence  Expert systems  Automatic programming  Graphical programming  Program verification  Environments and tools  Workstations

Almost to the end…  Buy versus build  Requirements refinement and rapid prototyping  Incremental development – grow, not build, software  Great designers

Growing Great Designers  Systematically identify top designers as early as possible. The best are not always the most experienced.  Assign a career mentor to be responsible for the development of the prospect, and keep a careful career file.  Devise and maintain a career development plan for each prospect, including carefully selected apprenticeships.  Provide opportunities for growing designers to interact with and stimulate each other.

Wrap up and Questions