Text of COMP 208/214/215/216 LECTURE 1 Introduction 恭喜發財
COMP 208/214/215/216 LECTURE 1 Introduction
Group Software Projects Sebastian Coope (Ashton 3.06) Course Co-ordinator Ashton Building, Room G.18 E-mail: firstname.lastname@example.org Project email address please use email@example.com Lecturer, Project Monitor, Project Reviewer Phil Jimmieson, Dave Shield Technical Support/Advice Wendy England (Centre for Lifelong Learning)
Aims of the Course To give experience of working as part of a team to develop a substantial piece of software Both of these aspects are important: Building a large piece of software presents different problems from coursework exercises Almost all work in the real world is done by teams.
Software Development is usually now a team effort RedHat GNU/Linux 7.1 30 million source lines of code (SLOC) 8,000 person-years effort Cost (if developed conventionally) > US $1 bn (2000 dollars) Microsoft Windows Windows Server 2003: 50 million SLOC Apple Macintosh MAC OS X 10.4: 86 million SLOC Debian GNU/Linux 5.0 324 million SLOC. Source: Wikipedia: Source Lines of Code (consulted 2011-1-16)
This is your project The project gives an opportunity to show initiative and to take control of your learning As a group you are responsible for: Choosing the application area Finding what you need to know Planning the project Progressing the project Delivering the products on time Of course, all of this will be done within the guidelines laid down.
Project Framework The framework comprises: The software required For C208, essentially a database application, in an area of your choice with an interface For C215 E-commerce database with interface For C215 application with Web interface For C214, a system implementing a heuristic search method Various intermediate deliverables which need to be available at appropriate check points: Requirements, design, implementation To provide feedback on your progress To form the basis of assessment A methodology to be followed. Oral & written assessment.
Software Required: 208 From module specification a database, front end tools for maintaining the database, tools for accessing, analysing and presenting the data The aim of the project for COMP208 is to produce a database application in an area determined by you, which, as a minimum: Supports users and administrators Is of reasonable complexity Contains useful information Supports a range of sensible queries and transactions. You must provide an interface to your database, preferably web based
Software 215: eCommerce Group Project to produce a working e-Commerce software application. The aim of the project for COMP215 is to create a database in an area determined by you, which, as a minimum: Is commerce related Supports users and administrators Is of reasonable complexity Contains useful information Supports a range of sensible queries and transactions. Needs an interface, preferably web based You application MUST have some degree of relevant security
Comp 216 (Internet Computing) The aim of the project for COMP216 is to produce a database application in an area determined by you, which, as a minimum: Supports users and administrators Is of reasonable complexity Contains useful information Supports a range of sensible queries and transactions. You must provide an interface to your database, MUST support Web access or alternative access via the Internet
Software Required: 214 The aim of the project for COMP214 will be to create a computer system capable of undertaking an intelligent search of the solution of a given computational problem You will need to structure and represent the knowledge specific to the given problem and implement a search algorithm across it. Suggested application areas include: Timetabling, or Group allocation systems
Resources Module Web Page on vital.liv.ac.uk Any questions: please email me at: firstname.lastname@example.org Books Lectures The Web Your Project Monitor.
Books Thomas Connolly and Carolyn Begg: Database Solutions (2nd ed), Addison-Wesley, 2004. This book gives a step by step guide to developing a database application. This book will serve as a "project handbook". It is essential that each team in COMP208 has access to a copy of this book. Christian W. Dawson: Projects in computing and information systems: a student's guide, Addison-Wesley, 2009. This book gives good advice on all aspects of how to set about computing projects. Every team in all modules should have access to a copy of this book. Of course, you can make use of other books and the WWW if you wish.
Lectures Lectures cover: Introduction Transferable skills: meetings, planning, quality assurance, presentations, writing reports Information about the assessments: requirements, design, demonstration, final portfolio Group working skills Third year projects introduction
Project Stages Detailed planning is up to you. But you must follow the following phases: Phase 1: Requirements, weeks 1-3 (15%) Phase 2: Design, weeks 4-7 (20%) Phase 3: Implementation and Testing, weeks 8-10 Phase 4: Demo and Portfolio, weeks 11-12 (65%) Phase 1, 2, and 4, will produce assessed deliverables: Details of what is required at each stage based on material from Connolly and Begg can be found on VITAL. You may aim to complete these phases more quickly, but each phase must produce its deliverable by the stipulated time.
Project Monitors Each team is assigned a project monitor. The project monitor will: Check progress on the project Act as a point of contact for queries and problems. Project reviews this year will be undertaken by: Mr Sebastian Coope
Technical Support For technical problems, the first point of contact should be Mr Phil Jimmieson (Email: email@example.com) Mr Dave Shield is also a very useful contact (Email: firstname.lastname@example.org)
Assessed Work Meetings Each team must meet formally each week. A note of each meeting must be made available to your monitor within 1 week. (More on meetings in tomorrows lecture) Requirements Review with project reviewer in week 3 Design Review with project reviewer in week 7 Demonstration Given to project reviewer in week 11 Portfolio Submitted at end of week 12. More details on the web page and in laterlectures
Phase 1 - Requirements Database planning Choose an area for your data base Determine its objectives and aims System Definition Decide what will be in the database and what wont Identify categories of potential user Requirements Collection and Analysis Specify the requirements for each class of user.
What to Do First Choose your application area: e.g. sporting information: players, teams, matches, competitions e.g. music information: musicians, bands, albums, record companies, charts e.g. product information: models, brands, manufacturers, outlets NOT a video/music/game shop that is the case study in the text book Plan your project Read Connolly and Begg to find out what needs to be done Identify the tasks that will achieve these things Decide who will carry out the tasks. More on planning in Lecture 3.
Professional Issues Awareness of professional issues is considered important for software developers. The British Computer Society issue a code of conduct. You should be aware of what this says, and follow it as applicable. It is available by following the Professional Issues link from the module homepage.
Submission Deadlines Requirements documents: Friday 17/02/2012 Design documents: Friday 15/03/2012 Group Portfolio: Friday 18/05/2012 Individual Submission:Friday 18/05/2012 All submissions due at 3pm Submit via: School Office
Free version online tools Basecamp Useful for project management, to do lists etc. Keeps everyone informed https://signup.37signals.com/basecamp/Free/signup Codesion Bug management and version control http://codesion.com/products.html Google project hosting http://code.google.com/p/support/ Use whatever tools you find best but DO use them
Backups and your data security You and your team are responsible for this Keep documents and code Online and Offline Version controlled Safe from viruses Data loss is not a valid reason for non or late submission of work
Finally... This course is different to your other courses. You will need to take an active role Team work is required You will be assessed both i