1 / 111

How to get a PhD in Information Technology

How to get a PhD in Information Technology. Peter Eades, PhD. How to get a PhD in information technology. Six steps Find a good topic Find a good supervisor Use a good research method Give lots of good talks Write lots of good papers Write a good thesis.

zlhna
Télécharger la présentation

How to get a PhD in Information Technology

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. How to get a PhD in Information Technology Peter Eades, PhD

  2. How to get a PhD in information technology • Six steps • Find a good topic • Find a good supervisor • Use a good research method • Give lots of good talks • Write lots of good papers • Write a good thesis

  3. How to get a PhD in information technology 1. Find a good topic

  4. Keywords in Armenian Phylogenia of p-systems: the case k=4 Find a good topic Two extreme topics Team member Terri Independent Ira I have always thought that programming languages which use keywords in Armenian lead to more productive software engineering. Now I can use my time as a PhD student to prove it. My supervisor wrote the first p-system, and for the past 17 years has been studying the phylogenia of such systems. Three other students are studying k=1, k=2, and k=3; I will study k=4.

  5. Independent Ira: has an idea, and wants to pursue it, even alone. Team member Terri: adds a bit to a long term project of her supervisor Find a good topic Two extreme topics • Dangerous topic • may lead nowhere • may be uncompetitive • Can be satisfying for some people • Funding unlikely • Safe topic • Can be satisfying for some people • More chance of funding

  6. Find a good topic

  7. Find a good topic My advice Most people do better in a team. • Most IT theses are somewhere in the middle; other sciences tend to be more team oriented Independent Part of a team

  8. 2231-1 is a prime number 2231-1 is a prime number Find a good topic Two extreme topics Irene the introvert Eddie the extravert This problem has been bothering me for decades. I can’t rest until I know the answer. A guy in a software security company has been phoning my supervisor to ask about this “possibly prime” number, 2231-1. I’ll try to solve the problem.

  9. Irene the introvert: self-motivated, wants to find out for her own sake. Eddie the extravert: Has a customer who wants to know, he will try to find out Find a good topic Two extreme topics There is no customer Customer oriented The customer may be an industrial partner, or a separate community of academic researchers

  10. Find a good topic

  11. Find a good topic My advice Always ensure that your research has a customer Introspective Customer-oriented

  12. The effect of the use of critical path planning in managing software projects How to manage software projects Find a good topic Two more extreme topics Narrow Nancy Broad Betty Narrow and deep: An investigation of a few variable parameters, with many parameters held fixed. Wide and shallow: Considers many parameters at once.

  13. Assume an OO design method Java small teams 10K – 100K SLOC Investigate effect of use of critical path planning Investigate the effects of 15 different design methodologies 7 different programming languages Small – huge SLOC 17 different planning methods Find a good topic Narrow and broad Broad Betty Narrow Nancy

  14. Find a good topic

  15. Find a good topic My advice Choose a narrow and deep topic, and choose your variable and fixed parameters very carefully. Narrow Wide

  16. Robustness theorems for non-pre-emptive scheduling methods Disk cache scheduling for Gnu C++ memory management on a Pentium 4 processor running Solaris Find a good topic Another two extreme topics Andy the applicationist Fred the fundamentalist Fundamental topic: abstraction of specific hardware and software Applied topic: specific hardware, specific software

  17. Find a good topic

  18. P=NP Web-enabled distributed data mining for ubiquitous computing in XML Find a good topic Another two extreme topics Popstar Paul Classical Kirsty I want to solve an problem that has defeated many others I want a lot of newspaper coverage

  19. Find a good topic

  20. Classical hard problems New hot topics Find a good topic My advice Investigate a fundamental and classical topic, with some applications to a couple of hot and applied topics. Another two extreme styles There are IT theses all over this range, but there is a tendency to be near the hot end.

  21. Find a good topic General advice on topics Investigate a classical, fundamental, deep, and narrow topic, with some (perhaps shallow) applications to a couple of hot applied topics. Obtain breadth by being a member of a team. Think of your topic in terms of your thesis . . . Extreme Extreme

  22. Find a good topic • Thesis structure: • Fundamental principles • Case studies • Refer to case studies of other team members PhD Thesis . . . Chapter 2 Investigation of a very difficult well known classical fundamental problem . . . . . . Chapter 5: Case study 1, some hot topic Chapter 6: Case study 2, applied topic . . . Chapter 9 Conclusions: Refer to case studies by your colleagues

  23. Find a good topic • A model of optimizing compilers • . . . • Chapter 2 Describe a new model for optimal code • Chapter 3 Algorithms for creating optimal code under this model • . . . . • Chapter 5: Case study 1: how this model applies to mobile agents • Chapter 6: Case study 2: comparison of optimal/sub-optimal code in a distributed transaction system • . . . • Chapter 9 Conclusions: further support for your hypotheses from work of your colleagues Classical fundamental problem Applications to hot and very applied topics

  24. How to get a PhD in information technology • 2. Find a good supervisor

  25. Find a good supervisor • The relationship between supervisor and student is very important. • It’s like a marriage that lasts for 3 – 4 years: • Commitment is important. • You must like each other. • You depend on each other: • Each needs the other for a good research career • In many cases, you don’t get a chance to choose a supervisor; • But if you have a choice . . .

  26. Find a good supervisor • Algorithm Find_Good_Supervisor • Repeat • Locate person X • Test supervision quality of person X • Is X a good teacher? • Is X a good researcher? • Does X have enough money? • Does X have good international contacts? • Can X help you join a local team? • Until quality is sufficient

  27. Find a good supervisor • a) X should be a good teacher • Can I understand what X is talking about? • Did I enjoy lectures by X? • Has X written any good textbooks? • Has X received any teaching awards? • Has X had many other PhD students?

  28. Find a good supervisor • b) X should be a good researcher • Is X cited often? (From www.citeseer.com: Citeseer_count/2 > years_since_PhD ? ) • Does X publish lots of papers? ( journal_paper_count > years_since_PhD ? )

  29. Find a good supervisor • c) X should have lots of money • Can X get you salary/scholarship? • Can X get you enough equipment/software? ($2Kpa?) • Can X get you enough travel? ($5Kpa?) • Does X supply systems/secretarial support? • Does X supply nice office space?

  30. Find a good supervisor • d) X should have good international contacts • Does X have joint publications with other people? • Is X involved in conference organization? • Is X an editor of an international journal? • Do the former students of X have good jobs?

  31. Find a good supervisor • e) X should be in a local research team • Does X have many students/ postdocs/ associates in the Department? • Does X regularly attend a research team meeting? • Is X a member of too many research teams?

  32. Find a good supervisor • My advice • The three bananas may never come up together, but you should try for at least two.

  33. How to get a PhD in information technology • 3. Use a good research method

  34. Use a good research method • The customer has a problem. • The researcher produces an initial model of the problem. • Repeat • The researcher solves the problem, according to the model. • The researcher evaluates the solution of the model problem. • The customer evaluates the solution to the real problem. • The researcher adjusts the the model. Until the customer is satisfied. The research procedure

  35. Use a good research method • Researchers have several roles to play • Create and adjustmodels of problems • abstract away non-essential details • use scientific theories and formalisms • Solvemodel problems • Use skills in CS/Math/sociology/psychologycommonsense .. • Form hypotheses • Evaluate solutions to model problems • Use skills in Math/Experiments/UCST • Present solutions to other researchers and to customers

  36. Use a good research method • The customer has a problem. • The researcher produces an initial model of the problem. • Repeat • The researcher solves the problem, according to the model. • The researcher evaluates the solution of the model problem. • The customer evaluates the solution to the real problem. • The researcher adjusts the the model. Until the customer is satisfied. In practice, the research procedure takes a long time • In practice, a PhD student is usually involved in a part of the procedure, perhaps only one of: • 1. Creating/adjusting a model • 2. Finding a solution • 3. Evaluating a solution • We need to know • How to create/adjust a model? • How to find a solution? • How to evaluate a solution?

  37. Use a good research method • Create/adjust a model 1. Creating/adjusting a model A model is formed by forgetting some of the parameters of the real problem; models are simplifications of real problems. In IT, models are usually formal and mathematical. Software Engineers are very familiar with modeling.

  38. Researcher B B: Model of problem A • Good researchers can only consider a few parameters at a time. Researcher C C: Model of problem B . . . • In practice, PhD students may be involved at level B or C or even D … Use a good research method • In practice, many models are models of models. Researcher A Real problem A: Model of the real problem

  39. Use a good research method • 2. Finding a solution • Solutions are artifacts that help the customer. Artifacts that make up a solution Programs Metaphors Protocols Architectures Algorithms . . . .

  40. Use a good research method Skills that contribute to a solution • A solution is found using the skills of the researcher. • Your skill set is probably not enough to create a solution. • You need to • Remember your undergraduate work • Read books and research papers • Attend seminars and conferences • Ask your supervisor • Better research comes from a better skill base. Formal logic Compilers OO models Concurrency Algorithms Mathematics . . . .

  41. Use a good research method • Researchers draw on a number of fundamental skills to create a solution consisting of a number of artifacts. Problem Formal logic Program Compilers Protocol Solution OO models Metaphor Concurrency Architecture Algorithms Algorithm Mathematics

  42. Use a good research method • 3. Evaluating a solution • To evaluate a solution, you need • An evaluation measure that tells you whether the solution is good or bad • An evaluation method to compute the measure

  43. Use a good research method • Evaluation measures • There are three basic measures for the quality of a solution: Effectiveness Measures Elegance Efficiency

  44. Use a good research method • The three measures: • Effectiveness: is the solution logically correct? • Efficiency: does the solution use computational resources efficiently? • Elegance: is the solution beautiful, simple, and elegant? All solutions can be measured in terms of these three parameters.

  45. Use a good research method • There are three basic evaluationmethods Mathematics Evaluation methods Experiments UCST And many combinations of these approaches

  46. Use a good research method • The three methods: • Mathematics: theorems, proofs • Experiments • Run programs on test data • Collect data about software projects • Test systems with human subjects • Needs skills in statistics • UCST: Try to sell your solution These are the only evaluation methods in information technology.

  47. Use a good research method • Example: the plotter problem • A pen plotter is a calligraphic device: it has a pen which moves over the paper to draw the picture.

  48. Use a good research method • The plotter problem • A pen plotter has a pen which can be up or down. • It accepts a sequence of penUp/Down/moveTo instructions. • penUp; moveTo (20,80) • penDown; moveTo (80,80) • penUp; moveTo (20,20) • penDown; moveTo (80,20) • penUp; moveTo (20,20) • penDown; moveTo (80,20) • penUp; moveTo (20,80) • penDown; moveTo (20,20) • penUp; moveTo (80,80) • penDown; moveTo (80,20) • penUp; zero

  49. Use a good research method • The order of the instructions has an effect on the pen-up time. • The plotter problem: • Sort the instructions into an order that minimizes pen-up time. • penUp; moveTo (20,20) • penDown; moveTo (20,80) • moveTo (80,80) • moveTo (80,20) • moveTo (20,20) • penUp; zero

  50. Use a good research method • (20,80) • Say speed = 5cm/sec • Bad solution: • Pen-up time = 71 seconds. • Good solution: • Pen-up time = 6 seconds (80,80) (20,20) (80,20)

More Related