SOEN 341 Software Process

Fall 2008 Semester

Wednesday September 3 2008 to Friday November 28, 2008

Section H

Lectures: Wednesdays & Fridays 10:15 to 11:30 in FGB-070

Tutorial: Fridays 11:45 to 12:35 in H-817

Office Hours: Fridays 12:30 to 13:30 in EV003.219


Instructor: Dr Greg Butler, gregb@cse.concordia.ca
Tutor: Bahman Zamani, b_zamani@cse.concordia.ca


Information

This course follows the same format and syllabus as Dr Paquet's course in Fall 2006:
http://newton.cs.concordia.ca/~paquet/wiki/index.php/SOEN341_fall_2006_section_H
We will follow the same schedule for the quizzes, homework assignments, and the project, with the same marking schemes as well. However, the topic of our project will be different: this year we will do the game of Battleship Solitaire.

Textbook: Craig Larman. Agile and Iterative Development: A Manager's Guide. Addison-Wesley. ISBN 0-13-111155-8, 2003.

Project

The project for this semester is based on the game of Battleship Solitaire, for which there is plenty of information on the web. I suggest everyone play a few games to familiarise themselves with it.
The warships are located on a 10-by-10 grid. There is one battleship of four squares, two cruisers of three squares, three destroyers of two squares, and four submarines of one square. Each ship occupies a number of contiguous squares on the grid, arranged either horizontally or vertically. The boats are placed so that no boat touches any other boat, not even diagonally.
The goal of the puzzle is to discover where the ships are located. the player can ask two kinds of questions: (1) pick a square, and (2) pick a row or column.
For question (1) the computer answers: (a) {sub}; (b) {water}; (c) {ship} followed by {north}, {south}, {east}, {west}, or {middle}.
For question (2) the computer returns a count of the number of squares in the row or column that are occupied by ships.
Once you think you know the positions of all ships, then you can enter the completed 10-by-10 grid. the computer will answer whether you won or not.

There are three programs required for the project:

  1. An interactive game player where the user can select a game and play it.
  2. A game generator which returns a random game.
  3. An advisor to guide the user playing a game.

The project is an incremental project involving three versions of these programs:

  1. A minimal version which provides basic functionality and a workable interface.
  2. A version which incorporates at least one difficult feature, such as infinite undo and redo, real game generation, and encapsulated strategies.
  3. A usable, robust, tested version providing the most important features that time allows.

For the third and last version, each group should also integrate the three programs into one game application.


Announcements

2008-12-25: Marks are posted. Let me know of any omissions, etc.

2008-12-03: Demos are in H-817 Friday December 5, 2008:
09:30 --- Al-Husseini team: Al-Husseini, Butt, Dorias, Dumervil, Eghtesadi, Leriche
10:15 --- Silva Team: Silva, Correa, Blanchard, Al-Khakani,Gordon,Gnagne
11:00 --- Yu team: Yu, Lee, Khater, Grillon, Salim
11:45 --- Zhao team: Zhao, Yee, Petkov, Tefanis, Leprince, Yu

2008-11-25: Marks for Deliverable 2 are posted.

2008-11-13: Marks for Quiz 2 are posted.

2008-11-10: Quiz 3 will take place in class on Friday November 28, 2008. It will be a 60 minute quiz beginning at 10:25am. It will cover the material indicated on the wiki (including textbook material). It is closed book.

2008-11-12:
Marks for assignments 1, 2 and Deliverable 1 are posted.

2008-11-12:
Project Deliverable 3 due electronically by midnight Sunday December 7, 2008. Submit source code for version 3 of Battleship Solitaire (player, generator, advisor) and a document describing the test report according to Project testing and delivery template.
Project Deliverable 4 the demonstration will be done on Friday December 5, 2008. A time slot of 45 minutes will be scheduled for each team in the morning.
We will try to book H-817 for this.
Bring prepared a powerpoint presentation with the three items included in the presentation: (1) Individual contributions (2) Project features (3) Outcomes. Be prepared to demo your system for (2) Project features as well. Presentation, demo, and set up time is 30 minutes. This will allow 15 minutes for questions and discussion. Not all members of the team need to attend: but everyone's induvidual contribution must be part of the presentation.
Project Deliverable 5 is the individual report which is due electronically by midnight Sunday December 7, 2008. Each team member must write an individual report and assessment detailing the activity undertaken by all members of the group in relation to the project. Based on the report, each student must assess their own contribution and the contribution of each other member of the group, and provide a reasoned report for their assessment.

2008-10-31: Homework Assignment 3 due electronically by midnight Sunday 23 November 2008.

2008-10-13: Marks for Quiz 1 are posted.

2008-10-06:
Quiz 2 will take place in class on Friday 24th October 2008. It will be a 60 minute quiz beginning at 10:25am. It will cover the material indicated on the wiki (including textbook material). It is closed book.
Homework Assignment 2 due electronically by midnight Sunday 26 October 2008.
Project Deliverable Number 2 due electronically by midnight Thursday 6 November 2008. Submit source code for version 2 of Battleship Solitaire (player, generator, advisor) and a document describing the design according to Project design template.

2008-10-06:
There will be a tutorial on Friday 10 October 2008 in H-817 where you will demo Deliverable Number 1. Be prepared to show all three parts of the system performing their basic tasks.

2008-09-17:
Quiz 1 will take place in class on Friday 26th September 2008. It will be a 60 minute quiz beginning at 10:25am. It will cover the material indicated on the wiki (including textbook material). There will be true/false questions, fill in the missing word(s) question, short answer questions. It is closed book.
Project Deliverable Number 1 consisting of source code for version 1 of Battleships (player, generator, advisor) and a document describing the project scope according to Project scope and plan template: due electronically by midnight Thursday October 9, 2008. Submit a .tar.gz of the source code to 'Program 1' and the document to 'Project 1'. Demo your software during the tutorial on October 10, 2008.
Homework Assignment 1 due electronically by midnight Sunday 28 September 2008.
Project Deliverable Number 0, a list of team members with encs login information, due Friday 19 September 2008 by email to 'gregb'.

2008-09-03: SOEN 341/2 Section H Outline


Last modified on September 11, 2008 by gregb@cse.concordia.ca