0:00:01.491,0:00:02.082 >>Speaker: Hello. 0:00:02.082,0:00:03.292 Today we're going to talk about 0:00:03.292,0:00:04.822 the engineering design process. 0:00:04.822,0:00:09.431 All engineers design things at some point in their career. 0:00:09.431,0:00:11.918 They could be designing a physical object; 0:00:12.154,0:00:17.618 they could be designing a piece of software or a process. 0:00:17.618,0:00:19.608 But engineers design things; 0:00:19.608,0:00:21.918 it's one of the ways that they solve problems. 0:00:21.918,0:00:25.019 And as an engineer, it can be a little overwhelming 0:00:25.019,0:00:27.280 when you first encounter a major design project. 0:00:27.280,0:00:29.198 So what we want to show you 0:00:29.465,0:00:31.573 today is a process that you can use to 0:00:31.573,0:00:33.934 help break that design project down into 0:00:34.173,0:00:37.437 little bits, and be more successful than 0:00:37.437,0:00:38.860 you would be if you just sat down and 0:00:38.860,0:00:41.441 started designing just offhand. 0:00:41.633,0:00:44.459 So you've seen this slide before; this is the 0:00:44.459,0:00:47.079 problem categorization slide, 0:00:47.079,0:00:51.571 and it shows the various types of problems that 0:00:51.825,0:00:53.159 you can encounter. 0:00:53.159,0:00:54.790 And you can have anywhere 0:00:54.790,0:00:56.239 from not enough information, 0:00:56.239,0:00:58.690 to just enough information to access information, 0:00:58.690,0:01:01.196 and your problems may have no answer, 0:01:01.196,0:01:03.319 one answer or more than one answer. 0:01:03.319,0:01:05.278 When you're in the classroom, 0:01:05.278,0:01:09.180 typically you encounter classroom 0:01:09.180,0:01:11.630 problems that have one answer, 0:01:11.630,0:01:14.437 and you're given just enough information. 0:01:14.437,0:01:17.569 And we talked about on the problem-solving 0:01:17.569,0:01:19.348 methodology day, how the problems you 0:01:19.348,0:01:22.138 encounter can fit into any of these categories. 0:01:22.138,0:01:25.540 Well, typically with engineering design, 0:01:25.540,0:01:27.334 you are encountering problems 0:01:27.334,0:01:29.189 that have more than one answer. 0:01:29.189,0:01:31.629 You may be given not enough information, 0:01:31.629,0:01:33.530 you may be given just enough information, 0:01:33.530,0:01:35.657 or you may be given way too much information. 0:01:35.657,0:01:38.975 But typically the problems that you encounter have 0:01:38.975,0:01:40.368 more than one answer, 0:01:40.368,0:01:42.498 and so part of the engineering 0:01:42.628,0:01:45.038 design process is determining which of these answers 0:01:45.038,0:01:46.769 is best for your product 0:01:46.769,0:01:47.997 and for your application. 0:01:47.997,0:01:52.379 So here we have a slide that shows you 0:01:52.379,0:01:55.547 the combination of problem-solving and design. 0:01:55.780,0:01:57.264 And so you can compare the two of them. 0:01:59.304,0:02:03.652 so you can see the DRPIE, the define, represent, 0:02:03.873,0:02:07.041 plan, implement and evaluate cycle on the 0:02:07.041,0:02:09.325 left hand side in the gray. 0:02:09.325,0:02:13.450 You can also see the engineering design process 0:02:13.605,0:02:14.995 over here on the right, 0:02:14.995,0:02:16.266 and you'll see that there are 0:02:16.433,0:02:19.524 some aspects of them that are very similar. 0:02:21.225,0:02:24.743 So some of the -- the obvious one is define; 0:02:24.986,0:02:28.196 it appears in both places, so I have 0:02:28.419,0:02:30.348 define, and I'm defining my problem. 0:02:30.348,0:02:35.749 Represent will often take place in a couple of places; 0:02:36.012,0:02:37.529 one of them may be when you're 0:02:37.529,0:02:39.251 creating the specifications and requirements. 0:02:39.251,0:02:42.154 It may also appear over in 0:02:42.382,0:02:43.921 creating the design concepts, 0:02:43.921,0:02:47.279 and possibly over in designing of the solution. 0:02:47.279,0:02:49.969 So represent kind of is all throughout there. 0:02:50.409,0:02:53.469 Planning tends to occur over here 0:02:53.469,0:02:55.464 in the designing of the solution. 0:02:55.464,0:02:59.063 Implement tends to appear over here, 0:02:59.063,0:03:00.813 in creating the prototype and to 0:03:00.813,0:03:02.719 an extent in designing the solution. 0:03:02.719,0:03:06.989 And evaluate tends to happen over here with 0:03:06.989,0:03:08.778 testing and validating the design. 0:03:08.915,0:03:12.270 So it's not quite a one-to-one comparison, 0:03:12.270,0:03:14.166 but you do see a lot of similarities 0:03:14.166,0:03:17.384 between problem-solving methodology 0:03:17.844,0:03:20.336 and the engineering design process. 0:03:20.589,0:03:22.805 So we shouldn't be venturing too far from 0:03:23.070,0:03:24.939 stuff that you're at least familiar with 0:03:24.939,0:03:27.013 in a cursory fashion. 0:03:27.013,0:03:31.070 So this is the engineering design process, 0:03:31.070,0:03:33.767 and we are going to go through and talk about 0:03:33.957,0:03:36.046 each of these aspects or each of these stages 0:03:36.342,0:03:39.273 one at a time here in the next few slides. 0:03:39.526,0:03:41.809 But I just want to give you the overall picture. 0:03:41.809,0:03:44.577 And one of the things that I want you to keep in mind 0:03:44.577,0:03:47.499 as we're going through each of these stages is 0:03:47.911,0:03:50.970 that this is not necessarily a linear process. 0:03:50.970,0:03:53.212 Just like problem-solving methodology, 0:03:53.212,0:03:56.960 you may be halfway through your evaluate, 0:03:57.166,0:03:58.770 and you realize that something was wrong 0:03:58.957,0:03:59.918 with your implementation. 0:03:59.918,0:04:00.790 And so you have to go back 0:04:00.790,0:04:02.208 to one of the earlier stages. 0:04:02.208,0:04:04.957 Similarly, in the engineering design process, 0:04:04.957,0:04:07.299 you may have be in the middle of 0:04:07.299,0:04:09.071 creating a prototype and realized that 0:04:09.071,0:04:11.327 you wanted two parts to occupy the same space. 0:04:11.327,0:04:12.913 We know that that can't really happen, 0:04:12.913,0:04:14.689 so maybe you're stepping back 0:04:14.689,0:04:17.007 over here into designing the solution. 0:04:17.007,0:04:19.625 Or maybe you're designing the solution and 0:04:19.625,0:04:21.127 you realize that your design is not 0:04:21.127,0:04:22.811 sufficiently constrained. 0:04:23.070,0:04:25.292 So you have to go all the way back over here 0:04:25.292,0:04:28.221 -- to creating specifications and requirements. 0:04:28.221,0:04:31.403 So at any point in this process, 0:04:31.403,0:04:33.800 you can jump back to any of the 0:04:33.800,0:04:36.837 previous stages as needed during the 0:04:36.837,0:04:37.631 design process. 0:04:37.899,0:04:39.642 Where does this design process 0:04:39.642,0:04:42.873 fit in the general lifecycle of a product? 0:04:42.873,0:04:46.671 Well, you start out with somebody needing something, 0:04:46.671,0:04:48.987 and then you design the product. 0:04:49.227,0:04:52.159 This is separate, for our purposes, 0:04:52.159,0:04:53.604 from implementing the project. 0:04:53.604,0:04:55.854 So you notice if you look back 0:04:55.854,0:04:58.526 at the engineering design process that 0:04:58.526,0:05:00.555 we stopped over here in testing and 0:05:00.555,0:05:01.675 validating the design; 0:05:01.977,0:05:03.348 we don't actually 0:05:03.348,0:05:05.715 go through to creating and releasing the 0:05:05.715,0:05:08.261 final product that's for our purposes 0:05:08.458,0:05:10.086 considered to be a separate step. 0:05:10.373,0:05:13.625 Once you've implemented the project, you're not done. 0:05:13.625,0:05:15.224 A lot of engineers think, 0:05:15.224,0:05:16.736 I've implemented the project, I'm done, 0:05:16.736,0:05:19.872 I can walk away and enjoy my beautiful product. 0:05:19.872,0:05:21.464 That's not what happens; 0:05:21.606,0:05:22.741 people break your products; 0:05:22.741,0:05:25.566 they will use anything as a hammer. 0:05:25.791,0:05:26.991 And in the process 0:05:26.991,0:05:29.072 your product breaks and you're going to 0:05:29.072,0:05:30.553 have to find a way to fix it, 0:05:30.553,0:05:33.873 or to modify the product so that it makes a 0:05:33.873,0:05:34.853 better hammer. 0:05:34.853,0:05:38.319 And then eventually your product is supported, 0:05:38.500,0:05:41.347 it's maintained and eventually it's used up and it's 0:05:41.347,0:05:44.095 disposed of or recycled in some fashion. 0:05:44.095,0:05:47.243 The rest of this presentation focuses 0:05:47.243,0:05:50.387 here on the engineering design process; 0:05:50.535,0:05:52.704 although the rest of the product 0:05:52.704,0:05:55.854 lifecycle is important, that's not what 0:05:55.854,0:05:57.055 we're going to be focusing on today. 0:05:57.055,0:06:00.134 So here we're in the stage where we are 0:06:00.134,0:06:03.556 just beginning out, and we need to define 0:06:03.556,0:06:04.895 what our problem is. 0:06:05.159,0:06:07.758 So we want to understand what the problem is 0:06:07.758,0:06:10.040 in some level of detail; 0:06:10.226,0:06:11.342 we're not necessarily 0:06:11.342,0:06:13.484 going to need every little specification, 0:06:13.484,0:06:15.730 every little requirement, but we want to 0:06:15.730,0:06:17.654 really get a good grasp on what's going 0:06:17.654,0:06:18.865 on with the project. 0:06:18.865,0:06:20.647 So you start out 0:06:20.857,0:06:22.917 with a general project needs statement 0:06:22.917,0:06:26.315 of what basically you need out of this 0:06:26.315,0:06:28.991 product that you're creating. 0:06:28.991,0:06:32.211 And the product -- again it doesn't have to be a 0:06:32.211,0:06:35.010 physical product; it could be a process; 0:06:35.010,0:06:37.271 it could be a software package, 0:06:37.271,0:06:39.318 lots of things it could be -- 0:06:39.318,0:06:43.040 but you start out with some rough idea of what you want, 0:06:43.040,0:06:45.403 and then the goal of defining the 0:06:45.403,0:06:49.301 problem is narrowing this down into a 0:06:49.301,0:06:53.274 defined set of projects needs. 0:06:53.274,0:06:57.377 So this is going from saying that I need a phone 0:06:57.377,0:06:59.960 that is better than the other phones. 0:06:59.960,0:07:02.994 This is the stage where I define what 0:07:02.994,0:07:07.271 exactly it is I want better about that phone. 0:07:07.271,0:07:10.399 So am I looking for improved 0:07:10.399,0:07:14.833 coverage; is the wireless capabilities 0:07:14.833,0:07:17.787 supposed to improve, is it going to take 0:07:17.787,0:07:19.710 better photos, is it meant to be more 0:07:19.710,0:07:20.771 user friendly. 0:07:20.771,0:07:22.045 So you come down and you 0:07:22.045,0:07:23.441 figure out exactly what the project 0:07:23.441,0:07:24.771 needs are. 0:07:24.771,0:07:28.524 Then once I figured out roughly what the project needs are, 0:07:28.524,0:07:32.275 I then get down into the more nitty-gritty 0:07:32.275,0:07:33.949 specifications and requirements. 0:07:33.949,0:07:36.571 And this is a really important stage in the 0:07:36.571,0:07:38.730 engineering design process, because this 0:07:38.730,0:07:40.611 is really what lets me know when I'm done. 0:07:40.611,0:07:43.124 As an engineer you can design and 0:07:43.124,0:07:45.761 design and design and put more and more 0:07:45.761,0:07:47.641 time into your product, 0:07:47.955,0:07:50.397 but this specification and requirement stage 0:07:50.397,0:07:55.156 gives me an endpoint, so that, when I've 0:07:55.156,0:07:57.031 met these specifications and 0:07:57.031,0:07:58.251 requirements, 0:07:58.251,0:08:00.856 I know that I've reached my desired goal. 0:08:00.856,0:08:03.921 So this may be, I want to be 0:08:03.921,0:08:06.672 able to talk on my phone in this 0:08:06.672,0:08:08.969 specific location that tends to have 0:08:08.969,0:08:10.793 trouble with reception, 0:08:10.793,0:08:12.417 or I want to be 0:08:12.646,0:08:16.280 able to take a photo in, you know, 0:08:16.280,0:08:20.159 half a second without delay from when I press 0:08:20.159,0:08:21.305 the shutter button. 0:08:22.965,0:08:25.137 So these are my specifications, 0:08:25.351,0:08:26.489 and they really give me 0:08:26.489,0:08:29.400 my goals and my endpoints for my design. 0:08:29.400,0:08:32.706 And so once I have these specifications 0:08:32.706,0:08:33.789 and requirements, 0:08:33.789,0:08:36.996 I can also plan out a high-level project plan. 0:08:36.996,0:08:39.032 What are the components to my 0:08:39.032,0:08:42.402 project, how am I going to progress 0:08:42.402,0:08:44.609 through those stages, and design each of 0:08:44.609,0:08:45.987 those stages. 0:08:45.987,0:08:47.278 I can plan out my project 0:08:47.278,0:08:49.497 and it's really important that I give 0:08:49.497,0:08:50.672 myself milestones. 0:08:50.672,0:08:53.528 And some of them will be really being milestones, 0:08:53.528,0:08:55.076 some of them will be small milestones, 0:08:55.076,0:08:57.011 but my goal should really be 0:08:57.011,0:09:00.041 to break up what I'm doing into small 0:09:00.041,0:09:03.080 manageable pieces and give myself some 0:09:03.080,0:09:05.471 sort of deadlines along the way so that 0:09:05.471,0:09:06.830 I don't reach two days before the 0:09:06.830,0:09:10.117 project is due and realize that I have nothing done. 0:09:10.117,0:09:11.635 If I had milestones along 0:09:11.635,0:09:13.672 the way I probably could have prevented that. 0:09:13.672,0:09:15.512 Phase three involves creating the 0:09:15.512,0:09:17.444 design concepts. 0:09:17.444,0:09:18.894 So I now have my 0:09:18.894,0:09:20.580 specifications and requirements, 0:09:20.580,0:09:22.625 I have my high-level project plan, 0:09:22.625,0:09:24.151 and now I'm 0:09:24.151,0:09:26.613 going to think about all of the 0:09:26.613,0:09:27.870 different ways that I could approach 0:09:27.870,0:09:30.718 this problem and all of the different 0:09:30.718,0:09:32.611 solutions that I can come up with. 0:09:32.611,0:09:35.704 And there are lots of different methods that 0:09:35.704,0:09:36.879 are used in the stage. 0:09:36.879,0:09:39.341 A lot of people use brainstorming, 0:09:39.341,0:09:40.462 where you come up with 0:09:40.462,0:09:42.682 as many ideas as you can as quickly as 0:09:42.682,0:09:44.929 you can, there's no judgment, 0:09:44.929,0:09:47.951 so some really silly ideas sometimes come out, 0:09:47.951,0:09:50.528 but you end up with a good variety of 0:09:50.528,0:09:53.883 ideas from which to choose and build and 0:09:53.883,0:09:55.202 they can grow on each other. 0:09:55.202,0:09:58.821 I also want to create some sort of method by which 0:09:58.821,0:10:00.644 I'm going to evaluate these design 0:10:00.644,0:10:02.828 concepts that I've developed. 0:10:02.828,0:10:06.349 One method that is often used is called a design matrix, 0:10:06.349,0:10:08.700 where I have different criteria 0:10:08.700,0:10:11.783 that I plan on evaluating for my 0:10:11.783,0:10:13.863 different designs and I give each of 0:10:13.863,0:10:18.084 those a weight, so that I can evaluate 0:10:18.084,0:10:20.492 each idea based on these criteria, end up 0:10:20.492,0:10:22.062 with a total score, and from that total 0:10:22.062,0:10:25.941 score I can determine what my best 0:10:25.941,0:10:27.314 design is going to be. 0:10:27.314,0:10:28.363 Somehow through 0:10:28.363,0:10:29.606 some combination of coming up with 0:10:29.606,0:10:32.243 different ideas, thinking through them 0:10:32.243,0:10:35.530 evaluating them, I come up, then, with a 0:10:35.530,0:10:36.825 best solution. 0:10:36.825,0:10:38.449 And best solution can be a 0:10:38.449,0:10:40.573 little bit of a misnomer here because 0:10:40.573,0:10:42.739 it's what I think at this stage is the 0:10:42.739,0:10:43.767 best solution. 0:10:43.767,0:10:46.876 Chances are the first time you go 0:10:46.876,0:10:48.968 through this stage, the best solution 0:10:48.968,0:10:50.959 that you come up with is not going to be 0:10:50.959,0:10:52.597 the solution that you end up using, 0:10:52.597,0:10:56.642 But it's based on what you know so far, what 0:10:56.642,0:10:59.931 you think the best solution is going to be. 0:11:01.721,0:11:07.747 Once I've chosen this best so I then design the solution, 0:11:08.037,0:11:11.950 and so this is where I really sit down and plan 0:11:11.950,0:11:15.018 everything out and sketch out my design, 0:11:15.018,0:11:19.134 if it's a physical system or plan out my 0:11:19.134,0:11:21.689 algorithm; if it's software -- 0:11:21.689,0:11:22.508 -- something like that, 0:11:22.508,0:11:23.706 this is where I get down into 0:11:23.706,0:11:25.088 the nitty-gritty design; 0:11:25.088,0:11:29.627 I spec components and I determine what the flow 0:11:29.627,0:11:31.317 of my code is going to be. 0:11:31.317,0:11:35.441 All of those things go on in this design solution stage. 0:11:35.441,0:11:38.796 Now I want you to realize that we 0:11:38.796,0:11:41.296 are now in stage 4 of 6 and we still 0:11:41.296,0:11:43.541 haven't built anything and that's 0:11:43.541,0:11:44.864 intentional. 0:11:44.864,0:11:48.085 This has all been preparation and planning and thinking 0:11:48.085,0:11:49.017 and designing. 0:11:49.017,0:11:51.927 This allows us to to save 0:11:51.927,0:11:59.440 money and not go down rabbit trails on 0:11:59.440,0:12:02.229 designs that we don't end up choosing as 0:12:02.229,0:12:04.394 our best design or designs that we 0:12:04.394,0:12:06.408 haven't thoroughly thought out. 0:12:06.408,0:12:10.598 Actually building things and going all the way 0:12:10.598,0:12:11.994 through that process is a fairly 0:12:11.994,0:12:14.812 labor-intensive process, so my goal 0:12:15.051,0:12:18.606 should be to have a well designed system 0:12:18.899,0:12:22.295 before I ever start actually building anything. 0:12:22.295,0:12:24.605 If I just sit down with a bunch 0:12:24.605,0:12:26.283 of materials and start putting them 0:12:26.283,0:12:27.821 together without a lot of forethought, 0:12:27.821,0:12:29.307 chances are I'm not going to end up with 0:12:29.307,0:12:30.694 a very good design. 0:12:30.694,0:12:32.156 And we want to avoid that, 0:12:32.156,0:12:34.355 and so we do spend a lot of time 0:12:34.355,0:12:35.876 here planning before we physically start 0:12:35.876,0:12:38.034 touching materials and building things. 0:12:41.585,0:12:45.738 Phase 5 is where we actually create the prototype. 0:12:46.114,0:12:48.351 So this may be code that's intended 0:12:48.351,0:12:50.975 to work with a subset of data, 0:12:50.975,0:12:55.340 or to perform a subset of the desired 0:12:55.340,0:12:58.691 processes, or work under very controlled 0:12:58.691,0:13:02.555 circumstances, or maybe this is a 0:13:02.555,0:13:05.552 mechanism that I build out of cardboard, 0:13:05.552,0:13:09.346 or rapidly prototype it, so this is a not 0:13:09.346,0:13:11.605 my final product. 0:13:11.605,0:13:13.548 This is a prototype 0:13:13.548,0:13:15.532 where I haven't spent all the time to 0:13:15.532,0:13:17.113 make it perfect and pretty. 0:13:17.113,0:13:19.861 It's just something that gives me a good 0:13:19.861,0:13:22.172 proof-of-concept to show that this 0:13:22.172,0:13:25.854 design that I've created is actually 0:13:25.854,0:13:27.027 going to work. 0:13:27.027,0:13:30.213 So then once I create this 0:13:30.213,0:13:33.061 prototype, I can test and validate my 0:13:33.061,0:13:38.023 design, and I can run my prototype 0:13:38.275,0:13:39.359 through all of my different 0:13:39.359,0:13:41.694 specifications and requirements and see 0:13:41.694,0:13:43.406 whether it meets those specifications 0:13:43.406,0:13:44.214 and requirements. 0:13:44.214,0:13:45.478 Once it meets the 0:13:45.478,0:13:46.946 specifications and requirements, 0:13:46.946,0:13:50.795 I have a validated design and I'm done and I can 0:13:50.795,0:13:52.219 I'm done with the design process. 0:13:52.219,0:13:54.914 Chances are the first time I reach this 0:13:54.914,0:13:56.591 stage, probably the second and third time 0:13:56.591,0:13:59.624 I reach this stage, the design that I've 0:13:59.624,0:14:01.303 created is going to fail my 0:14:01.303,0:14:03.055 specifications somehow. 0:14:03.055,0:14:05.704 And so at this stage, 0:14:05.704,0:14:07.635 it's fairly likely that I'm going 0:14:07.635,0:14:09.870 to have to run back to designing the 0:14:09.870,0:14:11.957 solution and maybe improving it somehow, 0:14:12.168,0:14:14.433 or even choosing an entirely different 0:14:14.433,0:14:15.556 design concept. 0:14:15.556,0:14:18.097 So in summary, engineers use the 0:14:18.097,0:14:21.006 engineering design process as a proven 0:14:21.006,0:14:23.364 way to make sure that you're meeting the 0:14:23.364,0:14:25.576 project's specifications and 0:14:25.576,0:14:27.433 requirements in regards to functionality, 0:14:27.433,0:14:30.467 on time and within budget. 0:14:30.467,0:14:34.616 And it seems like a somewhat cumbersome process when 0:14:34.616,0:14:37.237 you first sit down and start it, but this 0:14:37.237,0:14:40.828 is how experienced, expert engineers go 0:14:40.828,0:14:46.472 through this process in order to design things. 0:14:46.690,0:14:48.093 And the reason they do that is 0:14:48.093,0:14:49.325 because it works. 0:14:49.325,0:14:51.869 And so in class, we are 0:14:51.869,0:14:54.560 going to be going through an exercise 0:14:54.560,0:14:56.313 that helps step you through each of 0:14:56.313,0:14:58.380 these, so you have a more practical 0:14:58.478,0:15:00.752 understanding of what is entailed in 0:15:00.752,0:15:01.924 each of these stages.