Agenda • Why are we doing this • What are we building • What should you learn? • Other benefits • Details Why Do This Today programming projects are more than 3 or 4 people People issues are often more important than technical issues Computer science grad school needs to prepare students for that What Are We Building? A task manager Actually an activity manager for any activities Can be used by one person or an organization It’s flexible, involves a number of good data modeling issues Learning Goals In real projects, people issues are often more important than technical issues If you know the right answer but can’t persuade the group to adopt it you might as well not have than answer If you can’t work well with others much of your time will be wasted in controversy Most learning will be about people and organizing More Learning Goals Translucency is valuable and we will use it for all our security controls There will be some learning about the discipline needed for shared development Key Success Ingredient We must have frequent releases Weekly releases on the production system that really work They we add capability to a working, integrated system At the end we are not all crazily trying to integrate for the first time Grades You will be graded along the way You will have a personal assignment that you report on Your team will have responsibilities Missing deadlines is very serious for your grade Guidelines Use the class email list for communication about the project Put “xx Team” and subject in subject line Meet deadlines Never criticize another project participant— criticize an idea but not a person Next Week System Engineering Team will lead development of Version 1 of the data model Class will organize now into these teams: 1. System Engineering (done) 2. Data Model (includes translucency and views) 3. Processing 4. User Interface Teams Teams must be of mixed ethnicity and mixed experience level Teams will develop goals for each release, working with system engineering team Data model releases will be limited in number, as will view releases. Releases Teams install new release on test server Teams demonstrate new release to system engineers, who test System engineers port to production configuration Professor makes final test This must happen often System engineers develop this CM plan Success Criteria The application is to meet basic professional standards of software ease of use speed freedom from errors security If the whole thing doesn’t work, no one can get grade above C for the project Next Week System Engineers and Data Model Team prepare data model Class reviews it, final version is developed Data Model team takes over Version 1 of the data model Following Week Each team develops and delivers Version 1 of their code Each team develops their Use Cases Class will be used to review all of them