G52GRP Software Engineering Group Project 2012–2013

Open Day 2013 in Pictures

Overview
Reading Key Dates Lectures G52GRP & G52SEM
Assessment Open Day Presentation Day Awards
Projects & Groups Past Projects
References

Overview


Reading

The Student Handbook describes the organisation of this module in detail. Everyone must read this very carefully!

Additionally, you need to read the TSG Group Project pages. They both provide some very useful general advice, and give details on practical aspects such as equipment requests and procedures for handing in reports and source code.

The Professional and Quality Issues (PQI) part of the module is based on the book Professional Issues in Information Technology [Bot05] by Frank Bott, which is recommended reading.

The book Projects in Computing and Information Systems: A Student's Guide [Daw05] by Christian W. Dawson discusses various aspects of carrying out a project, such as planning, risk management, basic software engineering issues, and presentation. It adopts a student's perspective (whereas many other books on software projects focus on large-scale, industrial projects), and it contains information relevant both for group projects and individual projects. While it is not covered directly in any of the lectures, it would be worth to have a look at it for some concrete advice on how to manage student projects, and as background reading for the (guest) lectures on project management.

I highly recommend the book Version Control with Subversion [CSFP08] by Ben Collins-Sussman, Brian W. Fitzpatrick, and C. Michael Pilato if you are going to use Subversion, or even to just get an understanding of what version control systems are, and why they are useful. The book is very well written and it can both be bought if you want a hard copy or downloaded for free. And yes, you should use a version control system for your projects!

Dr. Steven Bagley recommends Code Complete 2 [McC04] by Steve McConnell:

“It's a nice book looking at how to write large software well covering both the design and coding of the project. It's intensely practical and I find you can just dip into a particular topic and come away with useful knowledge — including a lot of examples of bad practice and explanations of why its bad. There's a website for the book at www.cc2e.com which lists the contents.”

Our friends at Esendex and 7digital, experts on agile software development, warmly recommends Clean Code [Mar08] by Robert C. Martin. Paul Shannon, 7digital, says:

“Robert C Martin, or 'Uncle Bob'; as he's better known, has written a definitive guide to quality code in this book. It provides a gateway to the world of software craftsmanship and helps you on your journey to writing high quality software that can be easily maintained, is easy to read and simple to change. You'll learn that comments are considered a bad idea and why tests and good naming will always win the day, but also how best to handle errors, use emergent design and learn tricks around concurrency and refactoring. Most of all though, the book contains a complete guide to detecting code smells so you'll know what bad code looks like and why it's important to clean it up!”
Neil Kilbride, Esendex, says:
“Poorly written code may function correctly but costs organisations time and money. The importance of code quality is presented in Clean Code by the original software craftsman Robert C. Martin (Uncle Bob). This book uses clear examples to outline the principles, patterns, and practices of writing clean code. This book will make you a better software developer.”

The book BUGS in Writing: A Guide to Debugging Your Prose [Dup98] by Lyn Dupré provides plenty of concrete and useful advice on how to improve various aspects of your writing. It focuses specifically on technical and scientific writing, with many examples from Computer Science. It is also very enjoyable to read. Not only useful in the context of the group project, but also for other report writing such as your individual dissertations and almost certainly also later in your professional careers.

You may be considering using LaTeX for writing your group project (or other) reports. If you do, I can highly recommend Guide to LaTeX [KD03] by Helmut Kopka and Patrick W. Daly. Shown here is the fourth edition, but the third edition is also OK. While the learning curve of LaTeX can be a bit steep, and while LaTeX certainly isn't perfect in all ways, on balance, it works quite well for structured technical documents, largely automates tedious but important aspects such as managing references, and it really helps with producing a finished result that is up to top-notch typographical standards. In addition, it works quite well for co-operative writing as everything basically is just text files, just like program source code, and thus can be put under effective version control. This book makes the learning curve substantially less steep and and also provides concrete examples showing how to do most things you might want to do, and how to work around common problems. While on the topic of LaTeX, there are sophisticated IDEs for LaTeX providing good error reporting and quick previewing, which helps reducing the learning curve. There are even on-line services, such as writeLaTeX or ShareLaTeX, providing similar functionality as well as support for collaborative writing. Like Google Docs, but for LaTeX.


Important Dates and Deadlines

Task Date or Deadline
Equipment requests From 15 October, one request
Group project site up and running Friday 2 November
Interim reports due Extension: Monday 10 December 2012
Final reports and software due Friday 22 March 2013
Open Day Wednesday 8 May 2013
Presentation Day Friday 10 May 2013

Each deliverable should be submitted no later than 4:00 pm on the due date.


Lectures

This lecture overview is preliminary .

Lecture# Date Content Speaker(s) Slides Reading
1 2 Oct Introduction
Meet and Greet
Dr. Nilsson
Supervisors
On-screen Printing (4 up) Student Handbook
2 9 Oct Work Organisation and Assessment Dr. Nilsson On-screen Printing (4 up) Student Handbook
3 16 Oct Project Site & Version Cotrol with Subversion Dr. Nilsson On-screen Printing (4 up) [CSFP08, ch. 1 - 5]
4 23 Oct Guest Lecture: Version control: branching and what came next Matthew Walton (EvoEnergy Ltd) Slides
5 30 Oct Guest Lecture: Working in an agile software development team Neil Kilbride and Sam Wessel (Esendex Ltd) Slides (PDF) and
6 4 Dec Guest Lecture: Live Test Driven Development Paul Shannon, Wojciech Kotlarski, William Munn (7digital)
7 11 Dec Guest Lecture: If You Want To Make A Difference, Don't Get A Proper Job Adam Bird (Esendex Ltd)
8 11 Feb Report Writing and Peer Assessment Dr. Nilsson On-screen Printing (4 up)
Prof. David Brailsford's notes on grammar
[Dup98]
9 4 Mar Presenting your Project
(Open Day and Presentation Day)
Professor David Brailsford
Dr. Steve Bagley
Slides (PDF)
Poster instructions (PDF)

Guest lectures


G52GRP & G52SEM

G52SEM Software Engineering Methodologies is a co-requisite for this module (unless you have taken G52SEM or G52LSS previously).

G52SEM


Assessment

There are two major components to the mark each student will be awarded. First, each group is awarded a collective mark on the standard university scale, with the different aspects of the project contributing according to the following weights:

Group Task Date or Deadline Weight
Group Project Site Friday 2 November 2012 5 %
Interim Group Report Extension: Monday 10 December 2012 15 %
Final Group Report Friday 22 March 2013 30 %
Software Friday 22 March 2013 20 %
Open Day Wednesday 8 May 2013 15 %
Presentation Day Friday 10 May 2013 15 %

Peer assessment is then employed to distribute this collective mark among the group members according to merit as perceived by the group members themselves, such that the average of the individual marks for the group work equals the assigned collective group mark.

Note that the initial peer assessment is submitted as part of the Individual Reports (see below). However, if necessary a student can revisehis or her assessment of one or more of his or her peers one time until the end of the Presentation Day (Friday 10 May 2013), thus making it possible to also take peer performance during the final preparations for and at the Open and Presentation Days into account. See the Student Handbook for further details on when revising peer assessment is permissible and the actual procedure.

Each student also has to submit an Individual Report, also marked on the standard university scale:

Individual Task Deadline
Individual Report Friday 22 March 2013

These two components are weighed together into a final mark according to the following weights:

Component Weight
Individual Mark for Group Work 80% 
Individual Report 20% 

Each deliverable should be handed in no later than 4:00 pm on the due date. See the handbook for further details on assessment, how to submit, and details on the requirements for the various deliverables.


Open Day: A32, 8 May 2013

Open Day 2013 in Pictures

The Open Day takes place in A32, where you will be allocated a place and machines. Here is what you need to know to prepare:

The Open Day schedule is as follows. This year we have a very exciting line-up of invited talks from high-profile alumni. Note that a continental breakfast will be served in the Hub from 9 AM until 10 AM, and that Post Awards Afternoon Tea will be served at the end of the day:

Open Day Schedule
09:00 A32 opens to Students for setting up stalls
09:00–10:00 Continental Breakfast in the Hub for G52GRP Students and Staff
11:00 Opening of the Group Project Open Day Fair, A32
14:15 Close of the Fair. Everyone walks over to B52 Business School South
14:30 Alumni Talks, B52 Business School South (details below)
16:00 Group Project Awards Ceremony, B52 Business School South
16:30 Post-Awards Afternoon Tea & Mingling for Students, Staff, and Guests, Atrium, School of Computer Science
17:00 Close of the Open Day; Students return to A32 to take down stalls and tidy up.

The programme for the Alumni Talks is as follows:

To give you an idea of what to expect from the Open Day, here are links to pages illustrating what some past Open Days were like:


Presentation Day: C1 & C60, 10 May 2013

Information on the Presentation Day, including the schedule, is now available here. Please check it carefully! In particular, note that you are expected to arrive well before your session starts in order to set things up for your presentation (even if it is just a matter of copying files). The time is very tight, and if you end up wasting time because you have not prepared properly, you will simply have that much less time to talk.

Further information on the Presentation Day from TSG, including what equipment is available, can be found here.


Group Project Awards

Like the last few years, prizes are going to be awarded. However, the structure of the prizes is partly new for this year. We are very happy that 7digital and Esendex kindly has agreed to co-sponsor a new prize for software quality. In addition, The School of Computer Science sponsors a School Prize for overall best group project. Both prizes are going to be presented at an awards ceremony at the end of the Open Day.

Esendex and 7digital are keen to promote principles and practices they know contribute to high-quality software, including SOLID principles, agile methods, and source-code control. To that end, they have agreed to sponsor and award The 7digital and Esendex Prize for Software Quality to the group that, in their opinion, have carried out their project in a way that best embodies such ideas. More detailed criteria is available here. The decision of 7digital and Esendex is final.

The 7digital and Esendex judging panel 2012/13:

The School Group Project Prize is awarded to the second year group project team that is judged to have produced the best project in terms of what was achieved overall, how robust and usable the delivered system is, and how well the project has been documented in the final group report. This prize is provided by Head of School, Prof. Uwe Aickelin, and is judged by the Group Project Awards Committee (GPAC) headed by Prof. David Brailsford. The decision of GPAC is final.

The GPAC 2012/13 members are:

The School Group Project Prize for best project is a cash prize to each member of the winning team. The 7digital and Esendex Prize for Software Quality prize is a “prize haul” including:


Projects and Group Allocation 2012–2013

The group allocations should now be stable. Any issues, please let the module convenor Henrik Nilsson know as soon as possible!

If you are not in a group but think you should be, please contact the module convenor Henrik Nilsson as soon as possible, giving:

In particular, if you are an incoming exchange student, or if G52GRP was not among your preliminary module choices, and you have not yet told the convenor, you are unlikely to be in a group.

Similarly, if it becomes clear that some names have been added to groups in error, please let the module convenor know as soon as possible.

Projects and Groups 2012–2013


Links to Past Projects

Links to project descriptions for group projects from some earlier years for reference:


References


Last updated 10 May 2013.