Overview
Reading
Key Dates
Lectures
G52GRP & G52SEM
Assessment
Open Day
Presentation Day
Awards
Projects & Groups
Past Projects
References
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! |
|
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. |
Task | Date or Deadline |
---|---|
Equipment requests | From 17 October, one request |
Interim reports due | Friday 9 December 2011 |
Final reports due | Friday 30 March 2012 |
Open Day | Wednesday 9 May 2012 |
Presentation Day | Friday 11 May 2012 |
Each deliverable should be handed in no later than 4:00 pm on the due date.
This lecture overview is preliminary from 17 October onwards.
Lecture# | Date | Content | Speaker(s) | Slides | Reading |
---|---|---|---|---|---|
1 | 3 Oct | Overview: Aims, Organisation, Assessment | Dr. Nilsson | On-screen Printing (4 up) | Student Handbook |
2 | 10 Oct | Team Working and Group meetings | Dr. Nilsson | On-screen Printing (4 up) | Student Handbook |
3 | 17 Oct | Version Cotrol with Subversion | Dr. Nilsson | On-screen Printing (4 up) | [CSFP08, ch. 1 - 5] |
4 | 7 Nov | Guest Lecture: A Day in the Life of a 7digital Developer | James Atherton and Paul Shannon (7digital) | Slides and Blog Post | |
5 | 14 Nov | Guest Lecture: Project Organisation in Software Development Teams | Matthew Walton (EvoEnergy Ltd) | Slides | |
6 | 21 Nov | Guest Lecture: What is it like to work in an agile software development? | Neil Kilbride and Sam Wessel (Esendex Ltd) | Slides (PDF) and Blog Post | |
7 | 28 Nov | Guest Lecture: Live Test Driven Development | James Atherton, Rob Bowley, Daphne Chong, Hibri Marzook, and Paul Shannon (7digital) | ||
8 | 6 Feb | Guest Lecture: Software testing: Theory, Practise and Reality | David Vines, IBM | Slides (PDF) | |
9 | 13 Feb | Report Writing and Peer Marking | Dr. Nilsson |
On-screen
Printing (4 up)
Prof. David Brailsford's notes on grammar |
[Dup98] |
10 | 19 Mar |
Giving an Effective Presentation
Group Project Open Day | Professor David Brailsford Dr. Steve Bagley |
Slides (PDF)
Poster instructions (PDF) |
Guest lectures
7 November: A Day in the Life of a 7digital Developer
Speakers: James Atherton and Paul Shannon (7digital)
The speakers will cover the various meetings and practices that they follow on a typical day at 7digital. James will be the developer for the day. The presentation will start with the morning stand up, go through how we do development through different types of test, then look at deployment, collaboration with a tester, stakeholder etc. Then we'll see what happens when a piece of work is finished and the next one needs starting: analysis, a quick whiteboard design, t-shirt sizing and then coming up with acceptance criteria. All this organised using a kanban board.
7digital is a leading digital B2B media delivery company based in London and operating globally. They provide Cloud-based services, MP3 music, e-books and video services to a wide range of partners around the world.
James Atherton holds a BSc(Hons) Biochemistry and Computer Science from UMIST (2003), and an MSc Informatics (BioInformatics) from Edinburgh (2005). He is currently a developer in the Search Team and has been with 7digital for 1 year and 3 months. In his spare time, he enjoys running.
Paul Shannon holds a BSc in Computer Science from the University of Nottingham (2000-2003). He has been with 7digital for 2 months and his current role is Team Lead in the Content Ingestion Team. He founded the Agile Staffordshire user group, published 2 papers on Agile, Kanban, Lean and SOA. In his spare time, he likes motor racing.
14 November: Project Organisation in Software
Development Teams
Speaker: Matthew Walton (EvoEnergy Ltd)
Working in a team can be very different to working alone. Drawing from experience of working in a variety of team sizes in different environments, this lecture will give an overview of some different approaches to managing tasks in a software development team, and look at which ideas work - and don't work in different situations.
EvoEnergy Ltd is one of the largest solar power specialists in the UK. They aim to help creating a sustainable energy future by designing and installing Solar Photovoltaic (PV) systems, which generate clean and efficient electricity
Matthew Walton is a Systems Developer at EvoEnergy Ltd. He started computer programming at an early age, ultimately studying at the University of Nottingham and graduating with BSc (Hons) Computer Science in 2003. After graduation he worked at a small startup in Cambridge developing transparent network cache appliances. In 2005 he returned to Nottingham to study, but left in 2007 and took a job at Thomson Reuters working on high-performance multi-threaded network routing and access control software for financial trading systems. In 2011 he went for a change of direction, and now develops software to support business processes at EvoEnergy.
21 November: What is it like to work in an
agile software development?
Speakers: Neil Kilbride and Sam Wessel (Esendex Ltd)
For Computer Science students at the University of Nottingham, the 2nd year group project module is the closest experience the course provides to working in a real life software development team. A successful group project team must assess project requirements, organise team members' responsibilities, and ultimately work together to deliver a functioning piece of software before the deadline. In this talk we will discuss the processes and practices a working agile development team uses to continuously deliver high quality software to meet the demands of a large, international customer base. We aim to demonstrate how these principles can be usefully applied to the students' group projects. We hope to give the students a taste of life in our team, and leave them with some helpful ideas for progressing their skills as developers.
Esendex Ltd are the UK's leading specialist business SMS provider. Passionate about business communications, they are involved in creating the next generation of text messaging products and platforms.
Neil Kilbride graduated from the University of Nottingham's Computer Science department in 2005. He immediately joined Esendex as a junior web applications developer and was part of a team that helped Esendex become the UK's leading SMS provider. Neil is now a lead developer for Esendex and is a part of an agile development team, using the latest technologies to deliver first class messaging APIs and web applications.
Sam Wessel built his first web site in 1994, when he was 12 years old, and has been following the evolution of the web ever since. After graduating from the University of Nottingham with a degree in Computer Science, Sam took his passion for learning to Codeweavers Ltd, where he was able to develop his programming skills while helping to advance the company's adoption of agile practices. He has run several conference workshops on agile approaches to design. In February 2011 Sam joined the development team at Esendex Ltd, where he leads weekly coding dojos and nurtures the company's agile processes. He is currently a co-organiser of the GeekUp Nottingham software group.
28 November: Live Test Driven Development
Speakers: James Atherton, Rob Bowley, Daphne Chong, Hibri Marzook,
and Paul Shannon (7digital)
Two developers will be pair programming to produce a small application in the lecture. They'll develop something in the 7digital domain, like a music artist search web application. They'll start with an acceptance test, then go on to produce the production code by unit test driving the code. The aim is to get a very basic web application test driven in about 40 minutes. While the two developers are actually producing the code, a third will narrate the process: explaining what is going on, and why, covering ways that this could be used in a group project.
7digital is a leading digital B2B media delivery company based in London and operating globally. They provide Cloud-based services, MP3 music, e-books and video services to a wide range of partners around the world.
James Atherton holds a BSc(Hons) Biochemistry and Computer Science from UMIST (2003), and an MSc Informatics (BioInformatics) from Edinburgh (2005). He is currently a developer in the Search Team and has been with 7digital for 1 year and 3 months. In his spare time, he enjoys running.
Rob Bowley holds a BA(h) Business Studies from Nottingham Trent University. At 7digital, he is the Head of Development, having been with the company for 2.5 years. He is currently also the Programme Chair for the SPA Conference, and has previously been the programme chair for XPDay conference. He has a particular interest in Complex Adaptive Systems and Cognitive Bias.
Daphne Chong holds an BSc in Computing Science from the University of Technology, Sydney (2000-2003). She has been with 7digital for two and a half years and is currently the Team Lead in the Payments Team. She is an avid baker, half marathoner and love to travel.
Hibri Marzook holds an MSc in IT Consulting from London Metropolitan (2005). He is currently the lead developer for the Services Team and has been with 7digital for two years. In his spare time, he enjoys photography and he does the twitter @hibri
Paul Shannon holds a BSc in Computer Science from the University of Nottingham (2000-2003). He has been with 7digital for 2 months and his current role is Team Lead in the Content Ingestion Team. He has Founded Agile Staffordshire user group, published 2 papers on Agile, Kanban, Lean and SOA. In his spare time, he likes motor racing.
6 February: Software testing: Theory, Practise and
Reality
Speaker: David Vines (IBM)
Testing is a vital part of the development process and there are always more tests. This talk will cover some of the aspects of software testing, including what could be tested, what should be tested and what actually happens
David will also be available after the talk to discuss software engineering issues in general with groups or one-on-one, as well as career opportunities within IBM.
David Vines is a Senior Software Engineer and Master Inventor at IBM. He has been a software developer for longer than he cares to remember (or, sometimes, can remember!). He develops components for the WebSphere Application Server as well as helping customers who have encountered major problems with our software before we could find them first.
G52SEM Software Engineering Methodologies is a co-requisite for this module (unless you have taken G52SEM or G52LSS previously).
G52SEM
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 |
---|---|---|
Interim Group Report | Friday 9 December 2011 | 20% |
Final Group Report | Friday 30 March 2012 | 30% |
Software | Friday 30 March 2012 | 20% |
Open Day | Wednesday 9 May 2012 | 15% |
Presentation Day | Friday 11 May 2012 | 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 11 May 2012), 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 30 March 2012 |
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 reports.
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 our sponsor and 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:
09:00 | A32 opens to Students for setting up stands |
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 | Sponsor and 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 stands and tidy up. |
The programme for the Sponsor and Alumni Talks is as follows:
The talk focuses on the major problems facing the world of storage today, and some of the work going on to address those problems.
Geraint North is a UKI Technical Staff Member Senior Engineer and Master Inventor, Systems Storage, in the IBM Manchester Lab. He joined IBM three years ago as part of its acquisition of Transitive Ltd, where he was Principal Engineer. Since then, as senior engineer, he has been involved in a number of projects. Initially, he worked on hardware high-availability and performance features for future POWER Systems (IBM's high-end server microprocessors). He then moved to the Power Systems Software organisation, where he architected the PowerSC Trusted Logging, part of the PowerSC suite of virtualization security tools released in October last year. Currently he is at Systems Storage, working on the V7000 midrange storage controller and the recently released V7000 Unified NAS appliance
Last year, Geraint North was awarded the title of IBM Master Inventor for the patent portfolio he has built up over the years and the guidance he has provided to both engineers under his supervision and the legal teams in IBM. Geraint North is also a member of IBM's UK Technical Consultancy Group — a team of technical leaders who coordinate technical work across IBM's lines of business in the UK and report to IBM's UK executive leadership. Geraint North further serves on the Industrial Advisory Boards for both the Manchester and Manchester Metropolitan Universities, where he also occasionally lecture.
When interviewing graduates applying for jobs at Google, Simon Stewart usually finds that they have a great deal of theoretical knowledge about Computer Science. That's an essential prerequisite for a job in IT, but what else do you need to know in order to get ahead? Simon will be sharing with you the lessons that he learned from a decade in industry, highlighting some of the common trends, and the things he wish he had known about or participated in before leaving university.
Simon's first job after graduating from Nottingham in 1999, with a BSc (Hons) in Computer Science, was as a radio broadcast engineer, a job his degree in CS meant he looked singularly unqualified to do. Fortunately, radio stations were becoming more and more computerised, and he'd arrived at just the right time. Since then, he's worked in several companies, most recently ThoughtWorks and now Google in a variety of programming languages, from Perl and PHP to Java and Javascript. Simon loves writing software, particularly using TDD, and has been a contributor to many Open Source projects. He is currently the lead of the Selenium project, which is a browser automation framework. Patches are always welcome.
Mark is a lead programmer at Framestore, an Oscar-winning Visual Effects company based in London. He obtained a BSc (Hons) in Computer Science from the University of Nottingham in 2002 and and then pursued a PhD in Computer Vision from 2002 until 2007, looking at deformable models for face tracking.
He and his colleagues create the special effects you see in films and commercials. Mark designs and builds cutting-edge computer software used to produce films like the “Harry Potter” series, “Avatar”, “Batman: The Dark Knight” and plenty of others!
In this talk he'll be giving an overview in how computer science and software development is involved in the film-making process.
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:
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.
Like the last few years, two Prizes are going to be awarded. We are very happy that IBM this year kindly has agreed to sponsor one of the prizes. Both prizes are going to be presented at an awards ceremony at the end of the Open Day.
The first prize is the IBM Group Project Prize. This 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 it has been documented. Of course, it's virtually certain that anything scoring well on all these criteria will have been produced by a very well-coordinated team. This is a cash prize of £50 for each member of the winning team.
The second prize is the School of CS and Alumni Open Day Prize. This prize is awarded to the second year group project team that is judged to have staged the “best stall” during the Open Day and/or has produced the most commercially viable product. This is also a cash prize of £50 for each member of the winning team. It has been made available thanks to the Head of School, Prof. Steve Benford.
The prizes are awarded by the Group Project Awards Committee (GPAC) with, if necssary, input from a sub-committee (TBA) for the Open Day Prize. The GPAC members are:
The GPAC has decided that no single group shall win both prizes. The decisions of GPAC are final.
The group allocations should now be stable. Any issues, please let the module convenor Henrik Nilsson know as soon as possible!
Links to project descriptions for group projects from some earlier years for reference: