In this post, I will be sharing my experience on how to lead a project. There is a specific reason why I am writing this post. Since the day the term 'project' came up in the university, I were bound with the term 'leader' in all the occasions. I have been the leader of ITA, SE, ITP, SEP, PDM according to my knowledge. So I would like to talk about the experience of me leading those projects. 

You might wonder something. 

"What were the results of the projects?"

And don't worry. The projects that we had published results, we got A's and 2nd year ITP project was selected to be presented as an example project for this year 2nd year students. So I think that I am in a good position of talking about leading. 

Before leading a project, there should be a project team to lead. And there are things that you should know before leading. The project team consists of members. Those members have different capabilities and capacities may differ. As a leader, you should identify those and understand each an every member in a project group. Project is not an individual thing. It is a team effort. 

There may be excellent programmers, designers and speakers in a project team. The best thing is to assign the appropriate fields to the respective person. As an example if there's a person who is great in presenting, let him handle and decide the presentations and how the team is going to present. In that way every member in the team gets a part of the project that they really like and love. So no one would have a doubt that a particular area is not good since the experts are handling it.

As a group leader you should be disciplined. You can't tell someone else to be punctual if you come late. And simply you can't advise someone on something if you don't follow that in the first place. So once you have established that, you have to be gentle and motivating. And you should be listening and caring. That leads a team to always rely on you and feel confident of the work that they do. All the above things are good qualities that a leader can have according to my experience. 

There are some things that you can do in order to maintain the quality of the team and also the project itself.

  • Divide work load equally and appropriately
  • Assign experts for different areas of the project
  • Evaluate members and how they perform
  • Give feedback to members so that they can improve 


There is a thing to be told. A leader is also a human being. The members should know that as a fact. Most of the time, Leader is the one who is in stress that the project would not go well. But it is the responsibility of other members to share the stress with him by working according to plan. There are times when the leader gets really angry. Let's say "When you have a presentation due a day back and if a member comes and asks you how to implement an "ADD" function". At those times, what you can do is to let another member who has already finished his tasks to explain how that thing is done.

Likewise there are practical scenarios where your leadership skills are tested. You should figure out a way to deal with those and make the right calls. Leadership is all about taking right decisions at right time according to my personal view. Anyway this is a post I wrote according to my experience and you can get the good if you think there is any.

Good luck being Leaders!  

When we start a project, there are several ways that we can use to continue it. In the last post (click), I mentioned the methodologies that project teams use. Of them the mostly used methodology was the traditional method which was the waterfall method. 

There were several steps and those were fulfilled by the time and the product was made. But when there comes to the testing phase and an error is found, then we have to go back to the place where the error occurred and fix it and follow the other steps as well. That's a very hard and time consuming work. Then there came the iterative waterfall model where the errors in a phase is tested after it is implemented. That was good but to make changes, we had to follow the process again.

So to overcome all these, there came a new trend AGILE. When we take the simple word Agile, that is about flexibility and speed. You might know games with agility heroes and what they can do. Most of those agility heroes start small and becomes the carry of the team in the mid and late game. So this new agile method is about,

  • Teamwork
  • Delivery Value Early
  • Quality
  • Customer Collaboration 
  • Responding to Change


Scrum comes under agile. Here there are 3 categories in Scrum Framework. 

  1. Rolls
  2. Ceremonies
  3. Artifacts


This is the process of a scrum in a nutshell.


I know it is boring to read facts so the following video will be showing you all the aspects that you need to know about scrum and how easy it is.
So I believe that you got some idea of how Agile Scrum works. And this is the method that we used to do our 3rd year project. Unlike the last projects I really feel involved and efficient because we use Scrum. 

My next post will be on leadership and the roll the leader plays in a project.

For more information :


Projects are a key part of every IT undergraduate in their university life. That is because these projects give the fundamental experience of how to work in the actual industry that everyone is hoping to work in some day. So according to the experience I had, I will be writing this post on how to start a project.

First of all, to start a project; there should be a project to be started. By that I mean there should be a requirement for a project. 'Requirement' is a very important term which goes with the term 'Project'. A project in my prospective, is the way of obtaining an outcome which satisfy the requirements.

Requirements alone does not make any sense. When we talk about requirements, there are people who have requirements and want a solution. These people are the Clients. And it is the job of an undergraduate to talk with the clients and gather requirements. But this is not a very easy task. The clients might have a good understanding of what they want and how they want you to do it. They might have a good understanding of the IT field as well. But that is the best case scenario. There can be clients who have no idea about IT. And in the worst case, have no specific idea what they want and how they want it.

That is where the experience and interaction comes in to play. A project team has several members and each an every member has different skills. As an undergraduate, we must identify what the client knows, and what idea client has about the system that they want. Then with the technologies and other technical aspects known, we can suggest the client about the things that they might want and alter the project for good. Then that will be easier for the clients as well as you, the actual developers to engage effectively in the project.

There are several follow up ways with the methodology that we will be following to do the project.

1 - Adaptive Project Framework
2 - Agile Software Development
3 - Crystal Methods
4 - Dynamic Systems Development Model (DSDM)
5 - Extreme Programming (XP)
6 - Feature Driven Development (FDD)
7 - Information Technology Infrastructure Library (ITIL)
8 - Joint Application Development (JAD)
9 - Lean Development (LD)
10 - PRINCE2
11 - Rapid Application Development (RAD)
12 - Rational Unified Process (RUP)
13 - Scrum
14 - Spiral
15 - Systems Development Life Cycle (SDLC)
16 - Waterfall (Traditional)

Above mentioned are some of those aspects. For more details click here to view full details.

This is how a project is started, I will be writing on the method that we used to do the project and will be writing about it in the next post.
Hi people! I am Janitha Senevirathna, an undergraduate of Sri Lanka institute of information technology. Some of you may know me by the name ආගන්තුකයා. And if you know me, yes that is my Sinhala Blog. So you might wonder why I am moving to an English blog. That's what I am here to tell you.

As an undergraduate reading for a Software Engineering degree from Curtin university-Australia, we have a huge project to be done through out the year. This project will be based on a real world client and we were asked to post the user experience of us on a personal blog. Since my sinhala blog didn't seem right for the task, I thought to move in to a new blog where I can freely write about the experience of the project.

"So that means this is all about your experience on a project?" 

some may ask. 

And my answer is NO. I am not just writing posts on the user experience I gained from the 3rd year project. I will be writing posts that would help the 1st year and 2nd year students about their programming subjects as well. And if I find something interesting to share, I will be writing it here. And I am thinking of making some video tutorials and posting them when I have time.

You may comment any questions and how stuff had to be done or even how I should have done certain things. That would be a good feedback and I am more than happy to help with the projects of the 1st and 2nd year people at SLIIT. But don't take it the wrong way, I am not doing the projects for you. You may ask things that matters and bugs you and if I think it is really important, I would even write a post on that particular matters.

So this is a tech based blog and I will be updating it whenever I find something interesting and when I do something good that may help people.

See you in the next post on the project experience.