Professional Graduation Project

47
Professional Grad. Project PiTechnologies AhmedYossef

description

This lecture was created by Mashro3na team in PiTechnologies.Session aims to illustrate common mistakes, problems and drawbacks in graduation projects with the expected reasons and the recommended solutions

Transcript of Professional Graduation Project

Page 1: Professional Graduation Project

Professional Grad. Project

PiTechnologiesAhmedYossef

Page 2: Professional Graduation Project

About PiTechnologies

‣Egyptian startup company

‣PiTechnologies is specialized in

‣Mobile applications development

‣Web applications development

‣Embedded systems

‣Wireless communications

Page 3: Professional Graduation Project

About Mashro3na

‣It is an initiative of PiTechnologies

‣Mashro3na aims to provide graduation projects technical and managerial support

‣Mashro3na aims to enhance:

‣The graduation projects

‣The senior year student skills (technical, managerial, team working ..)

Page 4: Professional Graduation Project

Agenda‣What is GP ?

‣Why are you working on GP ?

‣GP Team

‣Common mistakes

‣Meetings

‣ Tools

‣ SVN

‣ Project Management

Page 5: Professional Graduation Project

Survey ..What is GP ?

0

50

100

150

200

20072008

20092010

Region 1 Region 2

Page 6: Professional Graduation Project

Space ship ?

Product ?

Smart Home ?

GPS + MATLAB + Java + Linux + MC + .. don’t forget web application and mobile end :)

Main Categories

Page 7: Professional Graduation Project

Space shipProduct

Smart Home Assembler

Out of scopeLake of supportEnds as bike ..

Low technical experience Waste of time connecting others

It is not accepted as GP in most time

Nothing newYou are traditional for interviewer

It is not a projectYou make enological things

Page 8: Professional Graduation Project

Best Project

New Idea - Old Idea (added Value)

Phases

Applicable (Product)

Independent - learn technologies

Page 9: Professional Graduation Project

Why GP ?

Page 10: Professional Graduation Project

Reasons

‣To do something you should know why you are doing it

‣Learn new technologies

‣Apply theoretical concepts

‣Work as for real

‣Show the world something

Page 11: Professional Graduation Project

GP Team

Page 12: Professional Graduation Project

Team work

‣1 + 1 = 2

‣1 + 1 = 3

‣1 + 1 = 0

Accepted

Expected

Actually

Page 13: Professional Graduation Project

1+1 = 3

‣Different tasks require different skills

‣Different players .. different minds .. new solutions

‣More motivation

‣Work review

‣Focus more on similar tasks

Page 14: Professional Graduation Project

‣Different tasks require different skills

‣Different players .. different minds .. new solutions

‣More motivation

‣Work review

‣Focus more on similar tasks

I will work on all tasks .. me too

i Think .. you work

More arguments .. More problems

You discover my errors .. i will discover yours

I am working on all tasks .. again

1+1 = 0

Page 15: Professional Graduation Project

Solutions‣Changing the previous attitudes

‣It is business not personal

‣I don’t like your idea .. but i respect you

‣You are right your idea is better than mine

‣I don’t like team decision .. i will execute it

‣I discuss only when it is good for my team not to prove my point of view

Page 16: Professional Graduation Project

Common Mistakes

Page 17: Professional Graduation Project

Team Homogeneity

‣All A+ team

‣All F- team

‣All developers team

‣A+ and F- team

Page 18: Professional Graduation Project

Team Homogeneity

‣All A+ team

‣All F- team

‣All developers team

‣A+ and F- team

Team should be miscellaneous Different skills

Same goal

Page 19: Professional Graduation Project

Courses Mistake

‣Divide the project requirements to a group of courses

‣Attending courses till the last moment

Page 20: Professional Graduation Project

Courses Mistake

‣Divide the project requirements to a group of courses

‣Attending courses till the last moment

Define courses you needDefine self study you need

Restrict courses time and dealines

Page 21: Professional Graduation Project

Specs Mistakes

‣Undefined specs .. Undefined project .. Undefined results

‣Defined specs .. Undefined manners of execution

Page 22: Professional Graduation Project

Specs Mistakes

‣Undefined specs .. Undefined project .. Undefined results

‣Defined specs .. Undefined manners of execution

Idea is not enoughYou should have full specs of the system before

starting

Page 23: Professional Graduation Project

Time Mistakes

‣Unplanned

‣Wrong plan

‣Too much time for learning

‣Too much time for working

‣No backup plan and no margins

Page 24: Professional Graduation Project

Time Mistakes

‣Unplanned

‣Wrong plan

‣Too much time for learning

‣Too much time for working

‣No backup plan and no margins

Time should be well dividedProject should be divided into phases

Delay means missing features not project failureEach simple task should be planned

Learn, Design, Implement, Test, DocumentKeep margins

Page 25: Professional Graduation Project

Meetings

Page 26: Professional Graduation Project

Teamwork and Meetings

‣Meeting is the most important part of the teamwork

‣As during meeting:

‣Work is divided into tasks

‣Tasks are assigned

‣Completed tasks are delivered

Page 27: Professional Graduation Project

Agenda

‣Leader should announce the agenda before the meeting

‣Members are free to add any topics before the meeting

‣Leader should state the agenda as check list of tasks, decisions and deliverables

Page 28: Professional Graduation Project

Apology

‣If you will be delayed, you should report before the meeting starts.

‣If you will not be able to come, you should delegate your vote and work to some one else.

Page 29: Professional Graduation Project

During Meeting

‣No argument

‣Limited discussion

‣If A and B has different point of views, each one would separately explain his, then leader should terminate discussion to start voting.

‣In dark situations, leader can make a decision, and you should accept it.

Page 30: Professional Graduation Project

After the Meeting

‣During the meeting, leader should have written notes about the discussions and the decisions.

‣Leader should send MoMs to the team

‣Leader should make the agenda and the time of the next meeting

Page 31: Professional Graduation Project

Apology for deliverables

‣You should report any errors or blocking breaks just when they appear.

‣Always report and make your leader updated

‣Don’t change your task without confirmation

Page 32: Professional Graduation Project

Tools - Version Control

Page 33: Professional Graduation Project

What is VC

‣Version control - Source control - Revision control

‣It is a software enables you to keep history of changing in documents, code files, ..

‣It can be centralized or distributed

Page 34: Professional Graduation Project

Why Version Control

‣No conflict

‣No project_last, project_final, project_finaaaal

‣A change in a single file within the project, generates a new version with number, timestamp, creator and comment

‣No need to merge copies and move code on flash memory

Page 35: Professional Graduation Project

Check Out

‣It is an operation to request a copy of the project to work on

‣You can check out the latest version or any older version you like

Page 36: Professional Graduation Project

Check in

‣Check in - Commit -Submit

‣It is an operation done after checking out and making some modifications

‣You commit your changes to save them as a new version with timestamp and comment

Page 37: Professional Graduation Project

Branching

‣It is an operation to make a sub-project/parallel project

‣You make this operation when you want to test a new feature.

Page 38: Professional Graduation Project

Test ScenarioCurrent Version

Test Code

Real Code

Check Out

Check In

Check Out

Current Version

Test Code

Real Code

Real Code

BranchCheck out Check Out

Page 39: Professional Graduation Project

Examples

‣SVN

‣CVS

‣http://assembla.com/ (online)

‣Git

‣https://github.com/ (online)

Page 40: Professional Graduation Project

Tools - Project Management

Page 41: Professional Graduation Project

What is PM ?

‣It is the process of

‣Diving work into phases and tasks

‣Identifying execution percentage

‣Finding critical issues

‣Finding alternative solutions

Page 42: Professional Graduation Project

Project

PhaseTask Task Task Task

PhaseTask Task Task Task

PhaseTask Task Task Task

Page 43: Professional Graduation Project

Phases

‣You should divide your project into phases

‣Each phase represents a percentage of total project

‣Phase is a milestone, with defined date you should measure your progress

Page 44: Professional Graduation Project

Task‣ It is the building block of the project

‣Each task should have the following

‣Major phase

‣Type

‣Dead line

‣Assigned player(s)

‣Reviewer and/or supervisor

Task the basic element in the project..

If you could manage tasks .. you will manage your project .. otherwise !

Page 45: Professional Graduation Project

Task Types

Planning Learning Execution

• To define tasks• Involves a lot of estimation and lack

of info• Usually involves

learning tasks

• To know about something

• Undefined time• Should has a

deadline

• To get something done.

• Defined goal• Estimated time

Page 46: Professional Graduation Project

Examples

‣Codendi (Web application)

‣Redmine (Web application)

‣Planner

‣QDPM (Web application)

Page 47: Professional Graduation Project

Contacts

www.pitechnologies.netWebsite:

Fan Page: facebook.com/pitechnologies.page

Twitter: @pitechnologiess

My mail: [email protected]

Thanks and best of luck .. AhmedYossef