Post on 12-Jan-2016
transcript
T-76.4115 Software Development Project I
Customer Info
16.9.2008
Jari VanhanenOhjelmistoliiketoiminnan ja –tuotannon laboratorio
Software Business and Engineering Institute (SoberIT)
Agenda
16:15 – 16:55 Info for customers general info software development process project’s evaluation project topics
16:55 – 17:00 Break
17:00 – 19:00 Topic presentations
19:00 – 19:45 Free discussion between customers and students
Roles
Customer organization provides the problem/system requirements helps with technical issues takes the responsibility of the system after the project
Project group 3 software engineering experts
project manager, QA manager, architect 4-6 developers develops the software
Mentor course personnel ensures the fulfillment of the educational goals
helps with working methods
Educational goal
To provide a context where students can try in practice several common SE methods and tools that they have
previously studied in theory.
Allow the students spend enough effort for this aspect of the project.
Support for the Projects from the Course
Process framework Mentoring Participation in iteration demos Experience exchange sessions Some sw&hw infrastructure Grading and feedback
Software Process – Framework
Prepared by sw engineering teachers at SoberIT
Enforces certain good work practices and crucial documents educational aspects included too
Allows lots of freedom (and responsibility) for customization
Software Process – Special Challenges
New team and organization-> process must be planned from scratch and communicated to everyone-> team spirit
Team members are not domain experts understanding the true (and changing) user needs-> requirements engineering during the whole project
Physical and temporal distribution-> special care for communication and project visibility-> you can’t keep everything in your head-> documentation overhead
Software will be maintained by other people after the delivery the group is not responsible for the system -> involving the customer’s technical people early-> high code quality
Software Process – Project Control Variables
Effort fixed 5-8 credits, 7-9 persons 27h/credit/person - ~15h spent before the project
-> 120-200h for project work + educational aspects
Calendar time fixed project schedule with major control points such as iteration demos
Quality ”fixed” high quality recommended some alleviations to carefully selected quality aspects are allowed if that is
what the customer really wants
Scope flexible adjusted depending on the groups’ skills and knowledge of the problem domain
Software Process – Typical Effort Distribution
design; 8
documenting; 17
infrastructure; 4
meetings; 17programming; 32
proj. management; 8
studying; 8
testing; 6
Software Process - Iterations
Software Process - Iteration Planning
Group and customer plan each iteration’s goals and deliverables goals are higher level ideas of what is expected from the iteration deliverables include software units and documents to be created/updated
Iteration planning meeting customer selects and prioritizes iteration’s content based on
business importance group’s effort allocation for the iteration group’s rough effort estimates for implementing sw units group’s estimates about architectural impact
Group concretizes goals and deliverables into required tasks re-planning, if task effort estimates and allocated resources differ largely
Software Process – Iteration Demo
Arranged in the end of each iteration 21.-22.10., 9.-10.12., 3.-4.3.
exact times (8:00-19:00) published in early October at SoberIT (Innopoli 2, 4th floor, Tekniikantie 14)
Participants all project stakeholders + teacher, other personnel from SoberIT, Accenture
Group presents project status (10-15 min) iteration’s results including sw demo (20-25 min)
Customer evaluates the work performed prepare in advance! private discussion about the given points with the mentor after the demo give comments about your evaluation to the group
Tip! Arrange the next iteration planning meeting right after the iteration demo.
Software Process – Controlling the Projects
Arrange regular meetings especially early in the project
Demand some regular, low overhead reporting Give concrete feedback
Software Process – Project Management
Software Process – Requirements Engineering
Software Process – Design and Implementation
Software Process – Quality Assurance
Software Process – Required Documentation
Project plan including QA plan and description of work practices
Requirements document Technical specification* User’s manual*
QA reports Progress reports (a slide set for the iteration demos) Final report
Course provides some document templates their use is mandatory, but irrelevant topics can be omitted
*the course sets no requirements on the content or format of these two documents
Infrastructure
Hardware several computer classes at TKK Maarintalo has some group work rooms (http://www.tkk.fi/atk/luokat/)
Software Microsoft MSDN AA
licenses for students’ own computers Magic Draw Personal Edition UML tool
licenses for students’ own computers TKK wiki, CVS, subversion, …
Customer must provide other necessary hardware/software: e.g. servers, phones for testing, bug tracking tool, …
Evaluation – General
Customer evaluates intermediate and final results, and slightly also working methods mentor ensures the objectivity of the evaluations
realistic expectations
Mentor evaluates working methods
Group members evaluate personal contribution of the other group members
Evaluation – Iterations (Customer)
Evaluation – Project’s Results (customer)
Compare to the original/updated project goals
Customer Satisfaction 2004-05
Project Topics – Legal Issues
Intellectual property rights (IPR) open source, or customer gets IPRs
Non-disclosure agreement (NDA) if required, must have been
mentioned in the topic proposal
Contracts prepared by TKK lawyers
TKK <-> companies TKK <-> students
Public documentation except code and technical specs if the customer requires NDA she
must review documents before publication
Participation fee external: 3000e + VAT TKK: 1500e TKK/T-dep: 0e invoices sent in November
Project Topics – Selection Process
Students have formed 14 groups 3 SE experts + max. 3 developers teacher adds more developers 19.9.
A group contacts 2-4 customers
Groups appreciate customer’s commitment to the project customer’s domain understanding provided infrastructure provided technical guidance realistic description of the expected
skills from the group
Customer can choose any of the interested groups
…if someone else didn’t already take them
If you get a group inform the teacher and he will remove
the topic from the list
If you don’t get a group by tomorrow inform the teacher and he will highlight
your topic on the list
Topic Presentations
Every 5 minutes if the presentation lasts < 5 minutes you can take answer 1-2 short questions longer discussions after 19:00
Next presenter to the stage while the previous one is answering questions
Topics