I can say this for sure that the things you learn from a bad project or near to disaster project is far more valuable then from a good project. I'm facing the same situation.
First let me present the history of the project that will give you a chance to analyze from where this all has started that in the end move towards the disaster (which is not actually the case now).
A firm has given us a proposal to develop a complete reporting website that will present about 17 reports based on a Queue Management System's back-end Database and without any feasibility study we accepted the proposal.
Impact: We've just created a mess for us right here
Lesson Learned: Must Do Feasibility Study
We must do feasibility study before accepting any of the project, we must analyze, the project which we are accepting by asking a question, "Are we capable enough to develop this project?"
The developer who was previously working on this project have made about 4 reports and guess what they were completely generated by a custom tool, He haven't write a single line of code by hand and when we look at the nature of the project they actually require highly customized reports. When he shipped these 4 reports you can guess what would happen yeah! all of them were a crap and sent back to the company by the client.
Impact: Effecting Company's Image
Lesson Learned: Adopt strategy after analyzing the nature of the project for development
Another mistake we've made is that we completely relied on the Client's given Requirements which was a big mistake, Requirements Engineering in itself is a big topic to cover here but sometimes or most of the time client don't even know what he/she is talking about, what he needs, so, you should ask him questions why you need this feature? what benefit it will provide you?
Impact: Following wrong Requirements; Developing wrong Things no matter how perfectly you develop them It'll be useless in the end.
Lesson Learned: Always make specs before starting the project
Now previous software developer have left the job and have given me the opportunity to watch the show 'How a Project can be a disaster', I've received the work which he has done on this project which was completely out of synchronization and was not according to the initial requirements, I've tried to change its shape according to the requirements but failed to do so. Everything has to be done from scratch.
Impact: Wasted a lot of time
Lesson Learned: Time is one of the factor that determine Project's success
I've analyzed one more thing, clients actually have a habit of requesting a change and then rejecting it, It doesn't matter at first but when time is a critical factor in determining a project's success then it does matter, how much you have already worked on the change client has requested? and whether new implementation will take more time time then the previous one? If so it will definitely hurt the delivery date and won't allow you to complete the project within time and within budget. In this scenario management should negotiate with the client about the consequences and effects of this change in overall quality of the product etc.
Impact: Trying to make project unsuccessful
Lesson Learned: Negotiate and Stay within budget
cont...
Wednesday, April 8, 2009
Friday, April 3, 2009
Future of VB.NET
At PDC 2008 Microsoft has unveiled VB.NET's Next version, watch the cool new features VB has to offer in the next version i.e. 10.0 and also where It's heading... Technology is changing at a mind boggling speed!
http://channel9.msdn.com/pdc2008/TL12/
http://channel9.msdn.com/pdc2008/TL12/
Thursday, April 2, 2009
Things you should Learn
Although this post has nothing to do with Technology or .NET in anyway but It's worth reading http://www.downes.ca/post/38502
Wednesday, April 1, 2009
Why do we Blog?
Blogging means different to different people, Some may use it for portraying their feelings or sharing their knowledge, Some use it to expand and advertise their businesses while other use it to simply create an impression that they have a blog actually :). But blogging for me is quite a different thing as compared to the other fellows, I Blog because it lets me analyze what I've learned where I am standing, It actually provided me with an opportunity to polish my skills because to write a single post it includes a bit of research but how extensive depends on the Topic itself, this actually provide me with an another opportunity to discover and to learn the new things that come in the way while trying to describe the topic in hand.
Some people often argue they haven't came across a single post on various blogs where visitors have left a single comment, it means no one is bothering to read your post so why to waste time? But they have failed to analyze that the writer himself is learning far more better because this extra effort actually giving him the command over the topic he's writing and let him analyze the mistakes and flaws in it because human brain actually thinks one thing at a time, For example in Software designing phase if the design is in your head and you just start coding later in the development stage you will certainly feel some thing is wrong or the design is not coming up the way it should be on the other hand if you draw that design on a piece of paper you'll be in a better position to decide whether or not to use it, how much potential it has and also gives you the choice to come up with alternative designs and research shows teams who document their designs tends to have better products.
So, I am just following the same principle !
Tuesday, March 31, 2009
Keep in Touch !
Most of you already familiar with twitter, a web application that let's you stay in touch with your loved ones, It's just all about a single sentence "What are you doing?", you can update your status on a go, It also provide notification services but in selective countries, as far as updating your status on twitter from Pakistan you can integrate your twitter account with isms.pk - a free SMS service in Pakistan (But account activation takes a day or two), then all you have to do is send an SMS to the specified number in order to update your status on twitter !
Subscribe to:
Posts (Atom)