CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 CMPE-013/L Engineering a Cat Door Gabriel Hugh Elkaim Spring 2013.

Slides:



Advertisements
Similar presentations
What is Engineering?.
Advertisements

Design Time Here We Go!.
Confidential The Device Development Industry December 4, 2010 North American Neuromodulation Society 14 th Annual Meeting Frank Fischer President and CEO.
The software process A software process is a set of activities and associated results which lead to the production of a software product. This may involve.
By David King.  Rapture from Bioshock  How does the work relate to the idea of an utopian existence, place or society?  Answer: It relates to an idea.
Iterative Relaxation of Constraints (IRC) Can’t solve originalCan solve relaxed PRMs sample randomly but… start goal C-obst difficult to sample points.
The Mythical Man-Month by Fred Brooks (I) Published 1975, Republished 1995 Experience managing the development of OS/360 in Central Argument –Large.
CMPE 293Gabriel Hugh Elkaim 1. CMPE 293Gabriel Hugh Elkaim 2.
CMPE 293Gabriel Hugh Elkaim 1. CMPE 293Gabriel Hugh Elkaim 2.
CMPE 293Gabriel Hugh Elkaim 1 CMPE 293: Introduction to Feedback Control Design Spring 2004 Gabriel Hugh Elkaim.
CMPE 293Gabriel Hugh Elkaim 1 CMPE 293: Intro to Feedback Control Design Gabriel Hugh Elkaim.
Software Engineering.
Capstone Project Proposal: A Cryptography Tool for Problem Generation Mark Weston CSc 197.
CS 501: Software Engineering
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
Engineering Design Loop A specific and iterative set of steps that engineers use to evaluate and refine potential solutions, select the most promising.
CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 CMPE-013/L Arrays and Strings Gabriel Hugh Elkaim Spring 2013.
If m and n are positive integers and a and b are real numbers (b0 when it is a denominator), then: Let’s review some properties of exponents where the.
CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2012 CMPE-013/L Functions Gabriel Hugh Elkaim Spring 2012.
CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 CMPE-013/L Modules and Scope Gabriel Hugh Elkaim Spring 2013.
Introduction to Usability By : Sumathie Sundaresan.
Write the title ‘Antarctica’ in your book. TASK 1: Below that, write down what you can remember about Antarctica?
Start Presentation November 22, th Homework In this homework, we shall attempt the modeling of a planar mechanical system. We shall do so once.
Picking Your Next New Winning Initiative LERN/Orlando Presented by Greg Marsello.
The Security Analysis Process University of Sunderland CSEM02 Harry R. Erwin, PhD.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
ECE 2799 “The Engineering Design Process” Prof. Bitar and Prof. Michalson Last Update – 3/18/15.
Don’t forget to add the conjunction and to the last word in your list!
Introduction of Engineering (ENGR 10) Guest Lecture March 24, 2014.
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
Power Point Sight Words
Iterative development and The Unified process Chapter 2 Applying UML and Patterns -Craig Larman.
The Scientific Method & The Engineering Design Process … and the Car Challenge.
Design and Society Lecture 5 Tim Sheard. Reading Thirty-Something (Million): Should They Be Exceptions? 3x5 cards - discussion.
CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 CMPE-013/L Software Engineering Gabriel Hugh Elkaim Spring 2013.
2. GATHERING REQUIREMENTS Object-Oriented Analysis and Design NTPCUG.
Addressing Issues David Conrad Internet Software Consortium.
Fifth Lecture Hour 9:30 – 10:20 am, September 9, 2001 Framework for a Software Management Process – Life Cycle Phases (Part II, Chapter 5 of Royce’ book)
Systems Analysis and Design in a Changing World, Fourth Edition
Reduce your Carbon Footprint Practical Solutions for the Homeowner.
Have you ever read an adventure story and you are another person? You go on an adventure to all different kinds of places like a rotten bridge or something.
CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 CMPE-013/L Unions and Bitfields Gabriel Hugh Elkaim Spring 2013.
1 CS 501 Spring 2004 CS 501: Software Engineering Lecture 2 Software Processes.
CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 CMPE-013/L Computer Systems and “C” Programming Gabriel Hugh Elkaim Spring 2013.
Positions vs. Interests in Negotiating Agreements
This is what makes the business tick. If you can’t do this then … MAKE A PARADIGM SHIFT or forget it! Prospecting and handling objections.
1 CS161 Introduction to Computer Science Topic #9.
Introduction to Usability By : Sumathie Sundaresan.
Engineers create what has never existed!
Module Code: CST 240 / BIT 233 Chapter 1: Introduction to Software Development Al Khawarizmi International College, Abu Dhabi, U.A.E.
1. I can identify the parts of a small engine. 2. I can explain each part’s function(s). Group 1: Valve Train Components These parts all work together.
Inanimate Alice Episode 4: Canada My name is Alice. I am 14 years old. >>
Requirements Engineering Processes. Syllabus l Definition of Requirement engineering process (REP) l Phases of Requirements Engineering Process: Requirements.
CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 CMPE-013/L Function Pointers Gabriel Hugh Elkaim Spring 2013.
Mr. Tanaka.  Task: Design the best cell phone holder ever!! Follow EDP.
Software Project Management
Chapter 2 lesson 5 Reaching Your goals. vocab Success- achievement of your goal Action plan- map that outlines the steps for reaching your goal Setback-
What is a Matrices? A matrix is a rectangular array of data entries (elements) displayed in rows and columns and enclosed in brackets. The number of rows.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Requirements in the product life cycle Chapter 7.
C++ Functions A bit of review (things we’ve covered so far)
Dillon: CSE470: ANALYSIS1 Requirements l Specify functionality »model objects and resources »model behavior l Specify data interfaces »type, quantity,
CHAPTER 11 and appendix RELEVANT COSTS With LINEAR PROGRAMMING.
Digital Media & Interaction Design LECTURE 4+5. Lecture 4+5 Draw requirement + Prototyping.
Lesson 1 James Dyson and the Design Process
The Engineering Design Process
Cells: Diffusion and Osmosis
Minimally Invasive Surgery
Dividing Decimals Setting up the Problem
Cells: Diffusion and Osmosis
Presentation transcript:

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 CMPE-013/L Engineering a Cat Door Gabriel Hugh Elkaim Spring 2013

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 The Problem Engineering is the study of trade-offs Techniques for managing the complexity apply across domains The right solution can be elegant, but is often only visible only in hindsight Definition Every engineering problem begins with a need that winds up driving the solution. Engineering is the art of finding a feasible solution to the problem that meets all of the constraints (be they cost, resources, durability, etc.)

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 The Cat

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 The Cat

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 The Door

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 The Door

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 The Problem The cat needs to be indoors by nightfall Getting him in during the evening can be difficult –Chasing the cat –Bribing him with food –Not always successful Cat comes in approximately every two hours during the day

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 The Solution Need to make the cat door one-way, so the cat can reenter the house, but not leave again Set it to one way at 5PM, cat will be in by 7PM (before darkness) Don’t have to be home to get the cat in

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 Commercial Solution Try to go for a commercial solution Buy rather than build Not exactly what you need, but can perhaps be made to work. “Hav-a-Hart” live animal trap.

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 Commercial Solution

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 Commercial Solution

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 Commercial Solution

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 FAILURE! Need a new approach

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 The Door

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 New approach: Inside Door Add a second door inside the first on the wall Hinged up for normal operation Down to form a “double seal” or one way valve for the cat door Larger than opening, cannot be pushed through.

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 Inside Door

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 How would I make a product?

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 Robust In-Only Option Use the existing guillotine door rails Allow the cat entry, but block the door from opening to the outside Needs to be robust to clever cat Needs to be accepted by cat –Doesn’t work if cat won’t use it Will need some refinement to get right

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 The Prototype

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 The Prototype in Action

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 One-way Action Confirmed Cat can get in Cat cannot get out Prototype successful, move on to better implementation

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 Prototype version 2

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 FAILURE! Need to refine prototype

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 Prototype version 3

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 Happy Cat!

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 Conclusion Fail early and often –Early reduction of less promising ideas Be flexible –Don’t get married to the first solution you try –Be ready to jettison something that isn’t working Experimentation leads to more understanding Comment Inspiration and Iteration are two very necessary parts of finding your way to a solution that works well. Failure is the genesis of further experimentation, which leads to better design.

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 New Problem

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013 Questions?

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013

CMPE-013/L: “C” Programming Gabriel Hugh Elkaim – Spring 2013