01.02.2013 Views

Project startup slides - IDT

Project startup slides - IDT

Project startup slides - IDT

SHOW MORE
SHOW LESS

Transform your PDFs into Flipbooks and boost your revenue!

Leverage SEO-optimized Flipbooks, powerful backlinks, and multimedia content to professionally showcase your products and significantly increase your reach.

DVA313 – Software Engineering 2: <strong>Project</strong> Teamwork<br />

<strong>Project</strong> j start<br />

Jan Carlson<br />

Mälardalen University<br />

School of Innovation, Design and Engineering<br />

jan.carlson@mdh.se<br />

<strong>Project</strong> setup<br />

Provide idea<br />

Discuss results<br />

Customer Steering group<br />

Initiate meetings<br />

Deliver results<br />

Report status<br />

<strong>Project</strong> manager<br />

SVN manager<br />

<strong>Project</strong> group<br />

Discuss progress<br />

Provide feedback<br />

Deal with serious problems<br />

Grade project<br />

Customer<br />

contacts<br />

DVA312 – Software Engineering 3<br />

Responsibilities of the Steering group<br />

● Steering group responsibilities:<br />

● Dealing with serious problems in the project group<br />

● Discuss the progress of the project<br />

● Give feedback on artifacts<br />

● Approve (and grade) the project work<br />

● Not part of responsibilities:<br />

● Identify problems in the project group<br />

● Make the project approvable<br />

● Prevent bad decisions<br />

DVA312 – Software Engineering<br />

Juraj Feljan<br />

…<br />

Jan Carlson<br />

Andreas Johnsen<br />

5<br />

DVA313 basics<br />

● Apply theory from previous courses in a real/realistic project<br />

● Relatively large project groups (7-8 students)<br />

● External customers (from industry or MDH)<br />

● Examination only consists of the project work<br />

● Development<br />

● Documentation<br />

● Presentations<br />

DVA312 – Software Engineering<br />

Responsibilities of the Customer<br />

● Customer responsibilities:<br />

● Have product ideas<br />

● Have (some) time to discuss the ideas<br />

● Give feedback to the group (on issues of interest to the customer)<br />

● In some cases, technical expertise<br />

● Not part of responsibilities:<br />

● Initiate meetings<br />

● Limit the project<br />

● Always be available<br />

DVA312 – Software Engineering<br />

Page 1<br />

Responsibilities of the <strong>Project</strong> manager<br />

● <strong>Project</strong> manager responsibilities:<br />

● Lead the work of the project group<br />

● Keep an eye on the communication within the group<br />

● Be up-to-date on project progress<br />

● Not included l d d in the h responsibilities: b l<br />

● Do all the work, or work harder than the rest of the group<br />

● Always remind people about their responsibilities<br />

DVA312 – Software Engineering<br />

2<br />

4<br />

6


Additional roles in the project group<br />

● Good to define responsible for example for:<br />

● Configuration management (SVN / Git)<br />

● Customer contact<br />

● Particular technologies or languages<br />

● User experience, document templates, requirements, testing, …<br />

● These can (should) start with their respective tasks early!<br />

● Study tools, survey literature, gather ideas, prepare documents, etc.<br />

DVA312 – Software Engineering<br />

Meeting and presentations<br />

● Each phase ends with a presentation<br />

● Mandatory to attend the presentations of all groups<br />

● Each student must present once during the course<br />

● <strong>Project</strong> plan and requirements (Nov 28)<br />

● Preliminary design and implementation (Dec 12)<br />

● Final presentation (Jan 9)<br />

● Weekly status report meetings with the steering group<br />

● Mandatory to attend all meetings of your group<br />

● <strong>Project</strong> status and problems encountered<br />

● Activities during the previous week and plans for the coming week<br />

● Customer meetings and internal group meetings<br />

DVA312 – Software Engineering<br />

Design<br />

● Your responsibility<br />

IImplementation l t ti<br />

Deliverable<br />

Presentation<br />

<strong>Project</strong> Timeplan<br />

<strong>Project</strong> Planning<br />

Test<br />

Requirements<br />

<strong>Project</strong> wrap-up<br />

W46 W47 W48 W49 W50 W51 W52 W01 W02<br />

DVA312 – Software Engineering 11<br />

7<br />

9<br />

Page 2<br />

Process overview – project phases<br />

1. Planning and requirements capturing<br />

● Decide on forms for the group work and assign responsibilities<br />

● Meet customer, capture and formulate requirements<br />

22. Design and implementation<br />

● Early minimal (working) version of the software<br />

● Rapid iterations<br />

3. Test and delivery<br />

● Define and perform acceptance tests<br />

DVA312 – Software Engineering<br />

Deliverables<br />

● The work should result in a number of deliverables:<br />

● Weekly reports (every week)<br />

● <strong>Project</strong> description and plan (w47)<br />

● Requirement specification (initial version W47, final version w51)<br />

● Design documentation (initial version w49, final version w02)<br />

● Product d (i (initial i i l version i w49, fi final l version i w02) )<br />

● Test specification (w51)<br />

● Test report (w02)<br />

● Final project report (w02)<br />

● All deliverables should be available to the steering group latest<br />

Thursday at midnight in the respective week (possibly earlier for w02).<br />

DVA312 – Software Engineering<br />

Passing the course<br />

● Active participation in the project work!<br />

● Mandatory attendance<br />

● Attended all weekly meetings<br />

● Attended all three project presentation occasions – presenting once<br />

● If you have valid reason to be absent, contact steering group and<br />

your project manager in advance or as soon as possible.<br />

● Passed project<br />

● Deliverables approved and deadlines met<br />

DVA312 – Software Engineering<br />

8<br />

10<br />

12


Grading<br />

● <strong>Project</strong> grade calculated from:<br />

● <strong>Project</strong> work (as perceived by customer and steering group)<br />

● Technical documentation<br />

● Final product (as perceived by customer and steering group)<br />

● Presentations<br />

● Individual grade:<br />

● Based on project grade<br />

● Work distribution can influence the individual grade<br />

DVA312 – Software Engineering<br />

Dirty Tricks…<br />

● More dirty tricks:<br />

● Ban overtime (restrict number of working hours)<br />

● Give additional tasks to disrupt the schedule<br />

● Change the deadlines<br />

● Introduce quality inspections<br />

● Change the teams<br />

● Really dirty:<br />

● Upgrade the software during the course<br />

● Occasionally crash the hardware<br />

● Slow down the software<br />

● Disrupt the file storage<br />

● When students complain, say “I told you so”!<br />

DVA312 – Software Engineering<br />

<strong>Project</strong> group 1<br />

Photovoltaic solar-powered water pump system<br />

Client: Hailong Li, HST, MDH (hailong.li#mdh.se)<br />

Steering group: Andreas Johnsen, Jan Carlson<br />

● Daniel i lJensen Samuelsson l<br />

● Gonzalo Laso Ferrer<br />

● Pedro Martínez Roig<br />

● Thomas Åkerlund<br />

● Axel Embretsen<br />

● Dimitar Minovski<br />

● Oskar Palmgren<br />

● Viktor Nikolovski<br />

DVA312 – Software Engineering<br />

13<br />

15<br />

17<br />

Dirty Tricks...<br />

Page 3<br />

● From the instructions to a SE project course at Loughborough<br />

University, UK<br />

(Published paper by Ray Dawson: “Twenty dirty tricks to train software<br />

engineers”, at 2nd international conference on Software engineering, 2000)<br />

● Dirty tricks:<br />

● Give inadequate specifications<br />

● Make sure all assumptions are wrong<br />

● Present an uncertain and naive customer<br />

● Customers with conflicting ideas<br />

● …<br />

DVA312 – Software Engineering<br />

<strong>Project</strong> group allocations<br />

● <strong>Project</strong> 1: Photovoltaic solar-powered water pump system<br />

● <strong>Project</strong> 2: Tool for calculations in the construction business<br />

● <strong>Project</strong> 3: XC-SkiLab – Coach tool: Motion-data and Video<br />

synchronized<br />

● <strong>Project</strong> 4: A digital <strong>Project</strong> Office Tool<br />

● All students assigned to a project they ranked 1, 2 or 3<br />

● Average score for assigned project: 1.7<br />

DVA312 – Software Engineering<br />

<strong>Project</strong> group 2<br />

Tool for calculations in the construction business<br />

Client: Peter Valfridsson, Byggwalle AB (peter#byggwalle.se)<br />

Steering group: Juraj Feljan, Jan Carlson<br />

● Miraldi Fifo<br />

● Dzana Kujan<br />

● Ditmar Parmeza<br />

● Filip Andersson<br />

● Simon Yildiz<br />

● Rafael Armesilla Sánchez<br />

● Anders Pantzar<br />

DVA312 – Software Engineering<br />

14<br />

16<br />

18


<strong>Project</strong> group 3<br />

XC-SkiLab – Coach tool: Motion-data and Video synchronized<br />

Client: Magnus Jonsson, Internet of sports, SICS (magnus#tii.se)<br />

Steering group: Juraj Feljan, Jan Carlson<br />

● David Reypka<br />

● Robin Cocks<br />

● Joakim Lindborg<br />

● Ayan Azmat<br />

● Kostopoulos Dimitrios Symeon<br />

● Karl Arvidsson<br />

● Emil Gerebo<br />

● Abed Hassan Ali<br />

DVA312 – Software Engineering<br />

First follow-up meeting on<br />

Wednesday (Nov 14)<br />

● Tasks to do before the meeting:<br />

●Group meeting(s)<br />

● Get to know the group, individual backgrounds, skills and ambition<br />

levels<br />

●Select project manager<br />

●Contact customer, , schedule meetingg<br />

●Prepare a small presentation of the group and the work so far<br />

● Schedule:<br />

DVA312 – Software Engineering<br />

09:15 – 09:45 Group 2<br />

09:50 – 10:20 Group 3<br />

10:25 – 10:55 Group 4<br />

11:00 – 11:30 Group 1<br />

19<br />

21<br />

<strong>Project</strong> group 4<br />

A digital <strong>Project</strong> Office Tool<br />

Page 4<br />

Client: Peter Ohlman, Tritech Technology AB (peter.ohlman#tritech.se)<br />

Steering group: Andreas Johnsen, Jan Carlson<br />

● Niklas Johansson<br />

● Andreas Lundqvist<br />

● Egidi Sara<br />

● Nikola Radisavljevic<br />

● Tomas Agirman<br />

● Bal Krishna Nyaupane<br />

● Antonio Corrales Gámiz<br />

DVA312 – Software Engineering<br />

20

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!