BIT colombo project

BIT Final Year Project Guidelines

Objectives
  • To Demonstrate that you have acquired right practical skills & competencies to be an IT professional
  • Opertunity to get real world experience in a software development project.

Overview
  • Compulsory and offer 8 credits (Equivalent to two subjects)
  • Reasonably complex task that spreads over a year (semester 5 and semester 6).
  • Unlike an exam, you need to come up with a product as a solution to a business problem.

Deliverables
  • The working software (web or standalone) application code and database scripts.
  • Demonstration of the product to the evaluation panel followed by viva and code modification session.
  • Dissertation of the project.

What Winners Do?
  • Have a good positive attitude about the project and its benefits.
  • Start in time and finish in time.
  • Select a right client and project. (Having a client is optional but preferred.)
  • Select a right supervisor who has experience and talent to guide you to success.
  • Do not commit too many complex objectives to the customer (If you are having a customer.).
  • Unless you are an experienced programmer, do not demand financial benefits from the customer. It lead to additional complex commitments.
  • Understand the concepts and technologies well before starting the project.
  • If there are skill gaps (for example understanding Bootstrap framework), fill those up front.
  • Use standard technologies and general ways as much as possible. Then, if you get issues, you have a better chance of getting help and resolving it.
  • Do not just do it, but manage (Plan -> Organize -> Lead -> Control) it.
  • Use engineering (Specification -> Design -> Develop -> Test) approach.
  • Have a proper upfront database design (but make it open to change in case of need.)
  • Use agile iterative approach where you deliver working product increments gradually.
  • Measure your progress by functionalities (user stories), and not by other artifacts like diagrams and documentation.
  • Submit project proposal, progress reports, interim reports and other deliverables on time.
  • Do not try to make things perfect at first. Differ things like exhaustive validations, security for latter stages.
  • Nice to have features like e-mail notifications, SMS integrations (if needed) must be done only after core functionalities are completed.
  • Make the user interfaces (UI) simple, consistent and professional.
  • Do not attempt to over engineering. Instead, try to come up with the simplest solution that works.
  • Follow naming conventions in both coding and database tables.
  • Write properly indented code to make it nice and readable.
  • Have a healthy dialog and get help from your supervisor and also get your work reviewed periodically.
  • Use Google search effectively to find solutions. The same problem you face may have been encountered by many others before, and discussed possible solutions.
  • At times, people are blind to their own bugs. If you cannot figure it out yourself, ask a friend to troubleshoot.
  • Use online forums like StackOverflow to get help from others. When you ask questions be nice, polite and thankful.
  • Backup your code, database and other documentation regularly in both online media like Google drive and offline media like a pen drive.
  • Be honest and true to your potential in developing your project rather than trying to match what others do.
  • Do not cheat by getting it done by others. It will badly shape your character, and also may well be caught in the viva and code modification session.
  • Enjoy your work as an interesting challenge.
  • Make sure that your customer is benefited by using your product that he is really happy about it.

Top Mistakes/Traps
  • Have not acquired sufficient practical skills and confidence during first two years of studies.
  • Think that documentation is more important than the product.
  • Think that mere use of complex framework is a silver bullet that will solve all the problems. (In fact, unless you are reasonably competent and experience with coding, use of complex frameworks will make you even more stressed.)
  • Think that use of templates will solve all your problems and finally you struck with it. (Tendency to use template is most cases a symptom that you are not confident about concepts, lack of understanding on simple technologies and laziness to build nice code which you are 100% in control.)
  • Think that miracle will happen at latter stage of the project.

What is a Good Project?
  • You really feel that it is usefull & benifitial to client and users.
  • You really feel that your product has good business potential and customer(s) will be really happy to use the system.
  • It is not just automating a business process. It improve the business process, productivity, quality & competitive advantage.
  • Reasonable size project to demonstrate your technical and other abilities and effort worth of two subjects.
  • Must be a software (web or stand alone) development project that solve a real world buisiness problem.
  • Mere web site development is not accepted, and it must be a web application or stand alone application.
  • Order processing, inventory management, reservation, customer management, HR management, etc.. are examples for typical suitable projects.
  • A reasonable scope must be verified with the supervisor.
  • Research type projects are not encouraged for BIT degree.
  • A reasonable scoped project will have about 12 to 18 tables.

Expected Effort
  • The candidate is expected to spend, on an average, at least 12 hours per week amounting to a minimum total of 300 hours, excluding the time taken for report writing and preparation of presentation material.

How to Find a Client (optional)?
  • A good business always strive to expand and increase productivity. Look for such a business.
  • It can be small or medium scale company or individual business.
  • You may approach to get a project through your friends, relations etc.. (You need your inter personal soft skills and build confidence about your capabilities to get this done.)
  • Think about business values. Unless the proposed IT solution add value, the customer will not be interested.
  • If you are employed, you may develop a system for your organization as well.

Technology Aspects
  • There are no restrictions in selecting the technologies (Programming languages, DBMS etc..).
  • You have the freedom to use frameworks (eg: MVC frame works like CodeIgnitor, Laravel etc.. and responsive web frameworks like Bootstrap, Foundation, etc..)
  • You can use third party components like Jquery calender components, page templates, etc..
  • However, you are not allowed to use high level code generating tools and CMS to build your software.

Sample Reports

References


Aurora Premier Study Center
Summerset College,
# 135, 3rd Floor,
DFCC Building,
High Level Road,
Maharagama.

Aurora Southern Study Center
Summerset College,
129, Anagarika Dharmapala Mawatha,
Matara.

Hot Line
071 984 2030
info@auroracs.lk
© Aurora Computer Studies, 2021