22 June 2013

Hangman - Part 7

Decisions

It's time to make some more decisions about our project. So far we haven't talked about what language or platform our game is going to be on. It's time we sat down and had that talk.

15 June 2013

Hangman - Part 6

GUI

This post will be about GUI design. You can find whole books on design. Many designers maintain blogs about GUI's. I'm not an expert in the field but I can offer some key points to consider when designing.

08 June 2013

Hangman - Part 5

More Diagrams

This will be the last of the diagrams don't worry. These are great diagrams too, they tell make our lives so much easier when it gets to implementation.

01 June 2013

Hangman - Part 4

Here we are, the class diagram.

As you can see this is the class diagram. The Game class is pretty big. We expected this from last time when we made a list of it's responsibilities. Let's go over some anatomy of the class diagram. At the top in bold is the name of the class. The next section shows it's attributes, or what it knows. Game collaborates with Stand and Word by getting information from them that's why there's a variable for those in this section. The third section are it's methods or functions. They are all the things the class does.
If you look at the Stand class it's method drawNext() has a plus (+) in front of it. That plus indicates that the method is public. It's public so that Game can call it. Stand's integer called stage has a minus (-) in front of it. That means private. No one but Stand Umbrello, yours may look different depending on what tool you used.
needs to know what stage it's on they just need to be able to tell stand to do it's thing. All of game's attributes are private since it's the driver of the game. This diagram was made with
Class Diagram
Hangman class diagram
All those methods were fleshed out as I went through the use cases to verify that all the responsibilities were represented. When we go over the next set of diagrams it'll make more sense how I came up with all these methods. Until then, happy diagramming.

25 May 2013

Hangman - Part 3

Welcome back, good to see all of you again. I hope your week was nice. We are developing our hangman game in an object oriented fashion therefore we need to identify some objects in our game. It's a good thing we have use cases because that's what we use to find those objects. Remember back in elementary school when you would have to identify the parts of a sentence? It's kind of like that. We also want to look for thinks that these objects know and things that it does.

18 May 2013

Hangman - Part 2

Use Cases

This week is short. Yay!
Here is the link to the use cases I made for our hangman game.

As you can see I've created a project on Google code so that all of you can easily see the documents relating to the project. It's also where I will post my code if I get around to it.

11 May 2013

Hangman - Part 1

Welcome to our first actual project. Just in case you didn't read the title we will be developing a game of hangman. It's a simple game meaning the logic won't be difficult to implement but it'll give us a chance to walk through some of the development steps.

04 May 2013

What Is Software Engineering?

Software Engineering

It's a big topic but I'll try to give some meaning to the term. Wikipedia, in all it's glory, didn't help me much when trying to define software engineering in the context that we'll be looking at it. In our context software engineering is the act or process of designing and developing software. In other words we'll be engineering software.

26 April 2013

Introduction

Here it goes...

What is this and why is it here?

I'm going to start a blog about programming. Not about how to use library 'X' or tutorials on some language, I'm going to blog about developing software. Let me tell you a little about how I got here.