Title: Integrated Project (EIE360)
1Integrated Project (EIE360)
- Dr Daniel Lun
- Department of Electronic and Information
Engineering - Tel 27666255 Office DE637
- Email enpklun_at_polyu.edu.hk
- URL www.eie.polyu.edu.hk/enpklun/EIE360/EIE360.h
tml
2 3Objectives of the Subject
- Apply knowledge acquired in other subjects in an
integrated manner - Experience different stages of project
development - Many factors lead to the success of a project
- Technical competence of the workers
- Programming skill
- Hardware integration skill
- Computer knowledge, etc.
- Soft skills
- Resource management
- Problem solving
- Communications and teamwork
- Creativity
Should have been covered in other subjects
One of the major objectives of this subject is to
create an environment for students to practice
these soft skills
4Objectives of the Subject
- Resource management
- To practice managing resources, e.g. time,
manpower equipment as they are always limited - Should identify the constraints of the project
and make good plan to use them - Problem solving
- No matter how good you plan in managing resource,
problems will still arise due to many unexpected
reasons - Need to practice dealing with problems
- Communications
- To practice working with your partners, your boss
and your customers - Creativity
- To practice generating new and feasible ideas
5Topic this year
- Interactive Virtual Aquarium
Picture extracted from www.dreamaquarium.com
6Topic this year (cont)
- Interactive Virtual Aquarium
- ABC Software Company would like to develop a new
software called Interactive Virtual Aquarium - Use 3D graphics to reproduce an aquarium on a
computer - The swimming fishes and other inhabitants are
rendered in real time - Although those creatures are not real, they
should do everything that real ones do - Pecking at objects in the tank, eating food,
chasing each other, swimming amongst the plants,
or even fighting with each others!
7Topic this year (cont)
- My Virtual Aquarium
- Different from the current virtual aquarium in
the market, ABC Company would like to introduce
the following two features - The growth and behavior of the living creatures
in the virtual aquarium should follow a time
function (just like tamagotchi!) - E.g. the fishes will grow-up, change size and
shape, and die as time goes by - E.g. the tank will get dirty if not cleaned
regularly in time - The virtual aquarium will interact with the user
based on his/her body motion - Achieve by using a Kinect sensor device a
motion sensing input device created by Microsoft
8Architecture of the Interactive Virtual Aquarium
System
Computer A
USB port
Your program
Kinect Sensor Device
Network
Computer B
3D Graphics System
Your program
3D Graphics
9Tasks to be achieved in this project
- Each team is provided with
- a Kinect Sensor Device
- Carry out the following tasks
- Collect the information of real fishes and other
inhabitants of an aquarium - Based on such information, develop their graphics
and animation - Design the interaction between them and the
player - Implement such interaction by making use of the
Kinect Sensor Device to detect the body motion of
the player
Kinect Sensor Device
10Tasks to be achieved in this project (cont)
- Not only technical tasks, but also non-technical
task - Each group needs to make a study on the behavior
of fishes and other inhabitants in aquarium - Nowadays, the success of an IT application is not
only due to its technical excellence, but also if
they are liked by the users very often due to
non-technical reasons - E.g. Apples iPhone vs Nokia N9000 smartphone
Which one is more success? Why?
11Tasks to be achieved in this project (cont)
- More example The success of the XBox car racing
game Project Gotham Racing is not only due to its
graphics or interactivity, but also the
incorporation of the real scenes of over 12 car
racing tracks in 4 cities in the world -
- Nowadays, software designers, particularly those
in the IT area, put great effort in contents
design, which often determines if their software
is successful or not
12Things to do in this subject
- Learn the features, working principle and
implementation methods of different sub-systems
required in this project - A series of tutorial and lab exercises will guide
you to achieve the minimum of the project
requirement - Need to make demonstration for each tutorial and
submit report for the lab - Find a partner to form a group
- Each member will be responsible for one part of
the project - Work of the members should be combined to form
the whole system - Make the first demonstration of the design
- Summarize the experience and design your software
- Make a background study of the behavior of fishes
and other inhabitants of aquarium - Prepare a proposal to indicate your plan of
designing the system - To record the progress of the project, each
student needs to keep a logbook - Implement your design and show in the final
demonstration - You are also required to make a presentation and
a final report to elaborate your work and the
result
13Schedule and Arrangement
- Lectures tutorial (CF504)
- Week 1 to 3 (twice per week), week 4 to 6 (once
per week) - Lab exercise (CF504)
- Week 7 to 9
- Two students form a group. Each team member will
do a different lab - Miniproject (CF504)
- Week 10 to 14
- Submissions
- Lab report and demonstrations x 2 (Note the
submission deadlines) - Proposal Mar 20
- Final report Apr 14
- Logbook check and sign by assessor on Mar 12
and submit on Apr 14 - First Mini-project Demo Mar 12
- Final Demo Apr 10
- Presentation Apr 14
14Assessment Weighting
Assessment Type Weighting
Tutorial exercises (Demo) 15
Lab exercise (Demo report) 10
Logbook / Proposal / Final report / Presentation 25
Results in the First and Final Miniproject Demos 15 25
Project Management 10
15Assessment Criteria
- Lab exercise
- Finish the open-ended exercise as given in the
lab sheet - Each team member will do a different lab
- Each student needs to submit
- a lab report (the computer program of the
open-ended exercise) and - make a demonstration of the result
16Assessment Criteria
- Logbook
- Individually keep a logbook (a diary) on the
tutorial, lab and project work performed - Check by the assessor on Mar 12
- Submit the logbook on Apr 14
- Assessment will be made based on the completeness
of the contents for recording the findings,
results and the discussions made in the project
17Assessment Criteria
- Proposal
- Submit a proposal on or before Mar 20
- Should include the following
- An abstract
- The topic and objective of the system
- The background study
- The proposed functional and technical
specifications - The proposed methodology to achieve the
specifications - Preliminary results obtained
- References
- The general criteria for assessing a proposal
include - Completeness of the above items
- Feasibility of the plan
- Presentation of the report
18Assessment Criteria
- Final report and Presentation
- Submit a final report on or before Apr 14
- Based on the report, make a presentation on Apr
14 (in English) - The contents of the report and presentation
should include - Description of the background study
- Description of the operation of the software
system developed - Actual techniques adopted to implement each
sub-systems - Difficulties encountered (both technical and
non-technical) and the solutions used to solve
the problems - Results achieved by using those techniques
- The ways to manage the resources and how teamwork
is implemented in the project
19Assessment Criteria
- First and Final Miniproject Demonstration
- All teams are required to attend the First and
the Final Miniproject Demonstration held on Mar
12 and Apr 10 - The objective is to ensure all teams have reached
the defined milestones - Assessment divide into two parts
- Performance in achieving the common objective
- E.g., the background study and the game flow
- Performance of the sub-systems responsible by
each member - E.g. the graphics, the interaction between player
and the system - Individually assess
20Assessment Criteria
- Project Management
- A total of 10 marks are allocated to this item
- To encourage teamwork
- To encourage the teams using good approaches for
managing resources of the project - Manpower, Time, Lab facilities
- Need to specify the approach in resource
management and teamwork in the final report and
presentation - Need to give evidence!
21Project Competition
- Project development is not the same as doing an
assignment, it is open-ended - To reward those students who spend great effort
in continuously enhancing the result of the
project, a project competition will be held along
with this subject for them to showcase their
achievement - Award
- The Best Project Award
- For the team that gives the best design (graphics
and features) - Robustness in implementation is another important
assessment criterion - Cash prizes and certificates will be awarded to
the winners of the competition
22Why project management?
- A project involves the interaction of different
parties - A project will be successful only if all parties
do their job right - By having good project management, we can
- Achieve the project goal on time and within the
budget - Keep your boss and your customers happy
- Keep the team focus on the goal and work well
- Everyone shares the load
23Project Management
- Project Planning and Implementation
- Define objectives / requirements
- Define work/tasks
- Identify resources
- Plan schedule
- Iterate
- Plan modification
- Execution Management
- Get objective signed-off
- Track plan progress
- Communicate within team
- Customer communications
- Secure resources
- Project discipline
Technical
People
24Project Planning
- The process of project development is full of
uncertainties - The more uncertainties you have, the less
possible that the project can be successful - Uncertainties can be reduced by having a good
feasibility study before the project - Background research
- Understand the resource required and acquired
- Risk analysis
- The feasibility study has been prepared for you
in the lab exercises
25Requirement Analysis
- The purpose is to identify and document the exact
requirements for the project - Much interaction must take place between the
customer (e.g. Professor) and the developer (e.g.
students) - Should be well documented since very often it
serves as an agreement of the functions that will
be provided by the system developed - The document is sometimes called user
specifications or functional specifications - May form the basis for project commissioning
- Your proposal should contain the above items
26System design and specification
- Split into two sub-phases architectural and
detailed design - Architectural design
- Define the overall organization of the system in
terms of high-level components and their
interaction - Detailed design
- Lower level modules in each component and their
interfaces - Example In software development
- Architectural design the function and
relationship of classes - Detailed design the internal modules and
interfaces of each class - Should be well documented
- The document is sometimes called technical
specifications - Your proposal should contain the above items
27Implementation Work breakdown
- Split project into tasks and estimate time and
resources required to complete each task - Organize tasks concurrently to make optimal use
of workforce - Minimize task dependencies to avoid delays
caused by one task waiting for another to
complete - Should be detailed in the proposal and final
report
28Example Activity Timeline and Job Allocation
1/6/06 1/7 1/8 1/9 1/10 1/11 1/12 1/1/07
Lun Hsung Cheung EO
T3
T12
T1
T4
T5
T8
T5
T6
T9
T10
T11
T7
T2
M1
M2
M3
T3
T1 Define objectives and requirements T2 Room
renovation T3 Hiring staff T4 Purchase
equipment T5 Installation of equipment M1
Milestone 1 - Demo room equipment T6 Testing
motion tracking system T7 Testing game engine
T8 Testing other hardware and software T9
Prepare preliminary demo M2 Milestone 2 -
Preliminary demo T10 Integrating all
sub-systems T11 Develop final demo program T12
Prepare documents M3 Milestone 3 - Final demo
29Teamwork
Need to give evidence in the final report to
prove your team has followed them when
implementing your project
- Teamwork means
- Concerted effort
- All team members work towards the same goal and
direction - Interdependent collaboration
- Contribution of team members is inter-related and
used to achieve the goal of the project - Shared decision making
- All team members take part in the decision making
process
30Wrong Concepts and Bad Practices
- For students who are new in doing projects, they
often have the following wrong concepts and bad
practices -
- We will not be able to finish the project since
all techniques required are new to me. - It is exactly the kind of training we need you to
go thru. Learning to learn is one of the most
important parts of a project. In reality, it is
very often you are asked to do something you
dont know. Only those who can learn faster than
the others can win in the society
31Wrong Concepts and Bad Practices (cont)
- We didnt allocate task to members since we work
together all the time. - A very bad practice. It means that there is no
teamwork among members. To avoid you doing this,
each member of the team will be given a different
task. The results of all team members should be
combined to accomplish the project objective.
32Wrong Concepts and Bad Practices (cont)
- My team member didnt do anything. I decided to
leave him alone. The work submitted was done by
me. - See, finding suitable partner is very important.
That team member certainly will fail, since team
members will be individually assessed. The marks
of the team in project management (in particular
teamwork) will also be deducted.
33Wrong Concepts and Bad Practices (cont)
- Our team was very busy in many different things
so we skipped all the tutorials, lab works and
demos. But we managed to use the last few days to
finish everything and made a good demo of our
game in the Final Demo. - Assume that you are doing this project for your
customer. If I were the customer of your project,
I would never hire your team to do project again!
All customers want to see both progress and
result. So your marks in project management will
be deducted.
34Wrong Concepts and Bad Practices (cont)
- Time is limited in doing this project. If I have
more time, I can do it much better. - It is exactly the objective of the subject to
provide training to students on time management.
Bear in mind that the subject does not ask you to
achieve a perfect result, but a satisfactory
result within a time limit. Only those who have
good time management skill can get good grade in
this subject.
35Some Advices on Problem Solving
- People like to solve problem based on its symptom
and try to remove the symptom - Following the philosophy of western medicine, if
you have headache, you will be given a Panadol to
remove the headache - It works sometimes but not always. Sometimes
removing the symptom may just let the real
problem (can be big problem) unable to be
discovered - Have we ever taken time to think of the reason
behind the problem and try to really solve it? - Sometimes you can find out the reason, sometimes
you cannot - But it is still worth a try
36Some Advices on Problem Solving (cont)
- When finding the reasons of a problem, dont
ignore any small abnormality in the course of
project development - Particularly in software development, even a
small bug can bite you hardly, and perhaps at the
most crucial time! - Of course, if there is no hope to solve the
problems, looking for tricks to get around them
is still a good solution