Thinking about your project
COMP 4
What’s good
• Probably the only chance you’ll ever get to
completely manage an IT project from start to
finish.
• No staff, suppliers, budgets to worry about
• Documentation requirement is thorough, but
quite achievable.
• You can do anything you like*
* as long as it’s complex…..
It should be fun, but usually it’s not
• Reasons:
– Project isn’t real (no expectation it will get used)
– Paperwork element isn’t really understood
– Specification ‘creep’
– Time management
• Non-Reasons:
– Technical problems
Choosing the right project
• Complexity considerations:
– Non-trivial algorithms, eg: sorting and recursive algorithms.
– Use of sophisticated features of programming language, e.g.
sophisticated data structures, user-defined OOP classes
– Complexity of non-computing field of the problem, e.g. complex
mathematics or complicated data relationships
• And also available
– Time-based simulation
– Portable devices / games consoles
– Communication Protocols, e.g. TCP connections
– Image Processing / pattern recognition, e.g. steganography, use of
regular expressions
Choosing the right project
• Real end-user
• Real problem that interests you
• Able to include complex elements
• …. that’s it.

Thinking about your project

  • 1.
    Thinking about yourproject COMP 4
  • 2.
    What’s good • Probablythe only chance you’ll ever get to completely manage an IT project from start to finish. • No staff, suppliers, budgets to worry about • Documentation requirement is thorough, but quite achievable. • You can do anything you like* * as long as it’s complex…..
  • 3.
    It should befun, but usually it’s not • Reasons: – Project isn’t real (no expectation it will get used) – Paperwork element isn’t really understood – Specification ‘creep’ – Time management • Non-Reasons: – Technical problems
  • 4.
    Choosing the rightproject • Complexity considerations: – Non-trivial algorithms, eg: sorting and recursive algorithms. – Use of sophisticated features of programming language, e.g. sophisticated data structures, user-defined OOP classes – Complexity of non-computing field of the problem, e.g. complex mathematics or complicated data relationships • And also available – Time-based simulation – Portable devices / games consoles – Communication Protocols, e.g. TCP connections – Image Processing / pattern recognition, e.g. steganography, use of regular expressions
  • 5.
    Choosing the rightproject • Real end-user • Real problem that interests you • Able to include complex elements • …. that’s it.