Tuesday 30 June 2015

Student Project Development Life-Cycle

A lot of students(count me as well) in their final year of IT course are confused and overwhelmed about their Project development. Final Year IT Projects are a crucial milestone in every IT students educational phase. If project development is tackled in a unorganized fashion, it can mess up your entire final year score (as final year project have a big share of marks and affect your overall score).

You must have heard about Project Development Phases in Software engineering. Well it does have a lot of importance in your own student project development so make sure you take that subject seriously.
Here are typical Software development phases:

  • Requirement Gathering Phase
  • Analysis Phase
  • Design Phase
  • Coding Phase
  • Testing Phase
  • Implementation & Maintenance Phase


I will be explaining you the importance and meaning of all these phases in terms of student project's point of view and how should a typical IT student look at these phases for his/her project development.

  • Requirement Gathering Phase
    • This is usually the first initial phase of your project development so it is very important to go ahead with this step carefully. What this phase states from a students point of view is that you need to decide on a project topic. 
    • Project topic selection can itself be tricky and the best way to tackle this is to ask yourself will your software, web-application help solve peoples problems (after all the very important mantra of software development to remember is customer is the KING)
    • Once you select a project topic you need to check of similar projects in the practical world and check on their success and feasibility.
    • If your topic doesn't seem to solve real practical problem, chances are your project won't be of any relevance.
    • Talk to people interested in software solutions and find out their technical problems (take a survey) and maybe you might find your desired project topic
  • Analysis Phase
    • Once Finalizing of your project topic is done, you need to validate it ie check for various feasibility parameters.
    • First of all check whether the project is actually implementable. A lot of times students have big ideas which in the end prove to be useless in terms of practical usage (this is usually because of lack of experience so don't get offended students).
    • Second important factor to check is which technology to be used to develop the project. Select the one which you are comfortable with since its your first project you need not learn something entirely new and then fall short of time. Usually students find ASP.NET, C#.NET better over conventional JAVA technology but that is all personal choices. Bottom line select the one that you are comfortable with.
    • Time constraint is also important to check on. Usually this parameter is hard to predict on since it is your first time however it is important that you plot down a rough timeline of your entire project development and strictly follow it. You don't want to submit your project late for sure after so much hardwork right!
    • Generally this phase ends by a Project Synopsis where you create a soft-copy of your project analysis (Check out our website : www.thestudentsproject.com for some synopsis formats)
Students who go ahead with the first 2 phases in a proper organized manner are more likely to get their projects working successfully and more importantly with high efficiency of management.
  • Design Phase
    • This Phase is many a times overlooked by students and trust me they find it difficult to go ahead with the actual coding of the projects.
    • The reason is, when you have a rough design, model, prototype in front of you, it is easy to code the same. 
    • When you plot your visual ideas and make rough designs it can also help with finding out some design flaws and errors which in future could be more troublesome to solve after you have actually coded for the same.
  • Coding Phase
    • Well This phase requires the least explanation i believe although you need to know 2 very important tip here
      • First: When coding always use comments and proper indentation (i know students usually don't since i as a student didn't do it).
      • Second: After completing one module try and run it instead of coding the next module or entire project.
  • Testing Phase
    • This phase is also very important in real life situations as well as for students. Why so?
    • what if you project doesn't work during the final project presentation just because you had to show it on college computer system?
    • So make sure you run your project in 2 or 3 different environments
    • Specially for Android projects, check the application at least on 2-3 different versions of androids with different screen resolutions.
    • Do not test your project all by yourself. Always ask teachers, guides to do a second round of testing, maybe they'll spot some bugs which you couldn't and yes mist likely they will.
    • If its a live project let the client test it as well.
  • Implementation & Maintenance Phase
    • This phase is where you actually run the project. 
    • Maintenance is usually not to be worried from students point of view, however if project is going to have huge database load it is necessary to check on performance regularly till your final project presentation to make sure it doesn't crash at the crucial moment.
Well thats all folks..
All the best with your Project Development.

Don't forget to checkout our Website: www.thestudentsproject.com
Like and share this post if you find it interesting and do follow us on facebook! Facebook Link: https://www.facebook.com/thestudentsproject