The Project4:15 with Craig Dennis
Let's introduce the Project, MasterTicket!
[MUSIC] 0:00 Okay, so let us set up a simulation for the final project of this course. 0:04 I am gonna stitch together a bunch of your skills and 0:10 we'll build a pretty solid application. 0:12 Let us pretend that all of the remaining cast members of the comedy group, 0:15 Monty Python, are going to get together and do a question and answer session. 0:18 They're gonna be discussing what it's like for 0:22 them as a comedy group, to have jokes that they made over three decades ago 0:24 still referenced in Python tutorials and code examples. 0:28 It would be such an amazing discussion, because surely, 0:30 they didn't see that coming. 0:33 They have a very strong fan base, alive and well, 0:34 in this programming language subgroup. 0:37 Now, let's also imagine, since they're funny like this, that they want to have 0:39 the only way that you can buy tickets, is through a single python script. 0:43 No website, no app. 0:46 Just a single console app. 0:48 You can only buy tickets using a command line program where no one would expect it. 0:50 Spain, in a cheese shop. 0:54 You've been tasked with writing that program. 0:57 Sound fun? There are some very specific instructions 0:59 and I've gone and captured them for us in a tool. 1:02 Let's walk through the product requirements. 1:05 So this is Trello. 1:07 It's a free tool and it works really great for keeping track of tasks. 1:09 There are many different ways to build an application. 1:13 And I figured that we take a quick look at one of my personal favorites, Scrum. 1:17 Now, if you'd like to learn more about Scrum, check the teacher's notes. 1:22 Scrum encourages you to break down requirements from your client 1:25 into what are known as user stories. 1:29 And they are a great way to make sure that developers and 1:32 the client understands what they are building together and for what purpose. 1:35 Now, I've gone through already and written them out for 1:41 this project and they're in the format like I have here. 1:43 So, as a role, or user in case, I should be able to and 1:46 then basically whatever the request is, so that business reason. 1:51 I'm going to use Trello as a task board. 1:56 Some teams actually use sticky notes in their office and 2:00 they move stories from to do, in progress and then to done. 2:03 Anyone in the office can walk up to the board and move it over. 2:07 So people don't end up working on the same code. 2:09 Trello just does this online for us. 2:12 We'll introduce ways for you to work and share code with your team mates, 2:15 as you continue through these courses. 2:18 Check the teacher's notes for more. 2:20 But for now, we're just gonna use this like a task list. 2:22 The different columns are different states that are ticket could be in. 2:25 Backlog is just all of the request that ever came in for this project. 2:28 So we'll move stuff that we agree that we can do to the to-do column and 2:33 then we'll work through those. 2:37 We'll leave ones that we're not ready for yet in the backlog. 2:39 Now I find that this really helps me keep focus on the task at hand and 2:43 I can get a birds-eye view of all that is left. 2:47 Does it sound good? 2:50 Why don't we take a read through these tickets that I built? 2:50 Okay, so this first one here. 2:54 As a user, I should be showing the number of tickets left remaining, so 2:55 I can understand the importance of buying now. 3:00 That makes sense. 3:02 Gotta give them a little bit of FOMO. 3:04 As a user, I should have a personalized experience so 3:07 that I feel welcome by the brand. 3:10 Cool, I'll have to get to know what their name is I guess, right? 3:13 As a user, I should have errors reported in a user friendly manner. 3:16 That is totally true of just about every application. 3:19 I'm glad this is a ticket. 3:23 We can work through that one. 3:24 As a user, I should be able to request a certain amount of tickets. 3:25 Like how many you wanna buy and be told the total cost, so 3:28 that I can determine if I wanna purchase the tickets. 3:31 Okay, that makes sense, we can do that. 3:33 As a user, I should be able to confirm my order so 3:36 that I do not accidentally purchase more tickets than intended. 3:38 You would hate to have somebody actually buy 1,000 tickets, right? 3:40 And then finally, as a user I should not be 3:45 offered tickets if they're aren't any available, that would be horrible. 3:47 Who'd wanna sell something when you're out of it, right? 3:50 So there are limited amounts of seat to this performance that we're having. 3:53 And as a user I should be able to purchase using credit cards and Bitcoin. 3:57 Wow, that is out of our scope right now, we're not gonna get to that one. 4:01 But, I do feel pretty good about these to do tickets, 4:05 I think we can knock all of these out. 4:08 Sound like fun? 4:10 You can totally build this. 4:11 Let's get started, right after this quick break. 4:13
You need to sign up for Treehouse in order to download course files.Sign up