Title: T76'41155115 Software Development Project III 20052006 Customer Info
1T-76.4115/5115 Software Development Project
I/II 2005-2006Customer Info
- 20.9.2005
- Jari Vanhanen
- Ohjelmistoliiketoiminnan ja tuotannon
laboratorio - Software Business and Engineering Institute
- (SoberIT)
2Agenda
- 1615-1700 Customer info, Jari Vanhanen/SoberIT
- 1705 Topic presentations, customers
- 1900-gt Free discussion with the students
3Course Personnel
- Responsible professor
- Casper Lassenius
- Responsible teacher
- Jari Vanhanen
- Mentors
- Mika Mäntylä
- Tuomas Niinimäki
- Markus Rautopuro
- Seppo Sahi
- Kari Suhonen
- Lauri Svan
- Course homepage
- http//soberit.hut.fi/T-76.115/
- Teachers e-mail
- t76115_at_soberit.hut.fi
4Project Roles
- Project group
- management group developers
- develops the software
- Management group
- 3 students
- project management
- requirements engineering
- customer relationship
- QA management
- architectural design
- participation to real work
- Developers
- 4 students (3-6)
- programming and testing
- Customer
- provides the topic
- participates throughout the project
- Technical advisor
- arranged by the customer
- helps with technical issues
- Mentor
- arranged by the course
- helps with working methods etc.
- ensures good development process
5Goals of the Different Stakeholders
- Customer and technical advisor
- getting good software
- getting experiences of technologies and working
methods - learning the customer role in an IT-project
- Project group
- learning something new about software development
- producing great software
- getting study credits and good grade
Project
- Mentor
- ensuring the fullfillment of educational goals
(using the minimum set of mandatory work
practices) - ensuring that the project succeeds as well as
possible
6Topics - Requirements
- Reasonably well defined
- no time for long requirements elicitation phase
- Appropriate difficulty and scope
- flexibility
- Public documentation
- code and technical specs may remain unpublished
- customer may want to review documents before
publication - published on the web
- Participation fees will be collected in early
November
7Topics Selection Process (Customer)
- Each management group contacts 2-3 customers
- after the topic presentations
- Discuss with the interested groups
- their (lead developers) skills
- developers are recruited later
- their agreement to your requirements about the
rights (and NDA) - Dont make the final selection before Thursday
22.9. 1300 - if you get many contacts (gt4)
- say immediately no to some of them
- inform the best of the early candidates, that
they are likely to get the topic - if you get no contacts, inform the teacher
- After that select a group quickly
- ensure that your favorite group is still
available - inform all other interested groups and the
teacher about the selection
8Software Process Challenges
- Project is done for an external customer
- understanding the true (and changing) needs
- -gt requirements engineering during the whole
project - Physical distribution
- all stakeholders and group members are physically
distributed - not necessarily any common work place
- -gt special care for communication and increasing
project visibility - communication practices, reporting, iterative
development, risk management - Temporal distribution
- only one of several on-going projects for all
participants - long duration, but only 1-2 days a week
- -gt documentation overhead, you cant keep
everything in your head - No existing, common development culture within
the team (process) - people are not necessarily familiar with each
other - -gt process must be planned from scratch and
communicated to everyone
9Software Process Overview
- Process framework provided by the course
- iterative and incremental
- use case driven
- enforces certain good work practices and crucial
documents - allows lots of freedom (and responsibility) for
customization
Read the details from the Process Framework
documenthttp//www.soberit.hut.fi/T-76.115/05-06
/ohjeet/process.html
10Software Process Project Control Variables
- Quality fixed
- high quality recommended
- some alleviations to selected quality aspects are
allowed if the customer wants - Calendar time fixed
- project schedule defined by the course
- major control points such as iteration demos
- Effort fixed
- 170h/person (most of the students)
- -25h, if 5 points version
- -20h, if no T-76.5633
- additional 20h for the T-76.5633 course
- software engineering practice assignment related
to this project - Scope flexible
- adjusted depending on the groups skills and
knowledge of the problem domain
11Software Process Effort from 2004-05 Projects
12Software Process - Iterations
13Software Process Mandatory Requirements
- Mandatory practices
- iterative development
- iteration planning
- documenting
- risk management
- time reporting
- software size reporting
- communication
- iteration demo
- version control
- coding convention
- defect tracking
- peer testing
- In addition many detailed requirements related to
the following activities - project planning
- requirements engineering
- planning and performing quality assurance
14Software Process Controlling the Projects
- Customer/technical advisor
- regular meetings
- especially early in the project
- rich communication
- less effort wasted on wrong things
- give feedback based on
- weekly progress reports
- documents
- sw deliveries
- on-line demos
- Project manager
- daily/weekly management
-
- Lead developer
- technical coordination of the development work
- managing sub groups of developers?
- Mentor
- following the process framework
- helping in whatever way he can
15Software Process - Iteration Planning
- Group and customer must plan each in the
beginning of each iteration its 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 - Group and customer should arrange a meeting
- customer selects and prioritizes what is
implemented next based on - business importance
- groups allocation of implementation effort for
the iteration - groups rough effort estimates for implementing
sw units - groups technical briefing about the chosen
implementation order - Group concretizes goals and deliverables into
required tasks - re-planning, if task effort estimates and
allocated resources differ largely
16Software Process Iteration Demo
- Arranged in the end of each iteration
- 19.-20.10., 7.-8.12., 1.-2.3.
- exact times (We Th 800-1900) published in
early October - inform the teacher immediately about impossible
times - at SoberIT (Innopoli 2, 4th floor, Tekniikantie
14) - Participants
- all project stakeholders
- Group presents
- project status (10-15 min)
- iterations results including sw demo (20-25 min)
- Customer evaluates the work performed
- private discussion about the given points with
the mentor after the review - send/tell comments about your evaluation to the
group
Tip! Arrange the iteration planning meeting right
after the iteration demo.
17Software Process Required Documentation
- Required project documents
- project plan
- including QA plan and description of work
practices - requirements document
- technical specification
- users manual
- test 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 - Documentation is done incrementally and
iteratively
the course sets no requirements on the content
or format of these documents
18Evaluation General
- Both achieved results and working methods are
evaluated - Evaluation is done in the end of each iteration
demo - Evaluation is an effective measure for steering
the project - most groups are motivated by getting a good
grade - Total points of
- a manager PP I1 I2 RESULTS
- a developer I11.5 I21.5 RESULTS /-
PERSONAL EVALUATION
19Evaluation Iterations (Customer)
- Working methods
- 1/3
- Delivered software and technical documents
- 2/3
- Set realistic goals in iteration planning and
compare the results to the goals
20Evaluation Projects Results (Customer)
- Set realistic project goals and communicate them
clearly - update the goals during the project, if needed
- Compare the results to the original/updated
project goals
21Infrastructure for the Groups
- A218 in T-building
- 8 Windows PCs (3.2 GHz) some very old PCs
- J2EE/J2SE SDK, Eclipse 3.1, Together Architect
2006, MS Visual Studio 6, - All computer classes at HUT
- CVS, lots of other software
- no administrator rights to the computers
- Customer
- customer must provide other necessary
hardware/software - e.g. server machines
22Tips for the Customers and Technical Advisors
- Clearly state and prioritize your goals
- both on project level and for each iteration
separately - Require some kind of progress reports from the
groups - Test the system and read the specs and code
during the project - you can ask improvements and guidance only during
the project - give feedback
- regular testing of the latest development
version? - on-line demo version
- Appreciate the students work and opinions
- some are already experienced software developers
or even managers
23Feedback from the Customers 2004-05
24(No Transcript)