Open Source Development, challanges and Project Management

Offshore project management- Key Success factors

Posted by: uexpress on: May 15, 2009

Outsourcing and offshoring have been the biggest trends of the last decade in IT. As more and more companies take advantage of the overwhelming benefits of reduced costs and increased flexibility, the trend toward offshore work is likely to continue. Companies have been evolving and refining their Project Management processes for software development for many years. Since ages people have been talking about the myths and realities of an offshore project management, i have summarized some of my ideas along with my experiences

Success of a project when developed by an offshore provider is largely dependant on the way the project is remotely managed from the client?s side. If you hope to make a project successful with very little input from your end as a customer, it is unlikely that the project will achieve success in the long term. The basic reason is very simple: you know your business requirements best. Software services companies working in another part of the world can only develop a solution based on the input provided by you.

Fairly large projects have a dedicated project manager who interacts with the offshore team and acts as a virtual bridge between the business and the software developers. If your project does not have dedicated personnel for it, there is no need to despair. You can follow some simple tips mentioned below and manage your project quite successfully.

Define the goal every week: The complete lifecycle of the software development process can be divided into smaller goals which can then be communicated to the team via email or by phone. It is a good idea to have a call with the entire team on Monday morning and run through the list of weekly goals that need to be achieved and then call again at the end of the week to evaluate if they have been achieved or not and what type of roadblocks were faced by them.

Manage the time difference: Time difference is one of the factors in offshore software development projects which can become a pro or a con depending on how it is managed. It is imperative that a “common” time zone is mutually agreed on by you and the offshore vendor. This time should be used for communication and ironing out issues faced by the development team. Though it might take some time to get used to getting in to office at 7 AM, it pays good dividends in the long run.

If there are issues, alert everyone in time: It is advisable that you keep a look out for early warning signals and warn the team up front rather than wait for things to correct themselves. Ninety percent of the time, the issue is not self-correcting but goes on to become a real pain to the entire team before additional effort is exerted to get it on track.

If someone in the offshore team is doing well, comment on it: Encouragement and motivation are required even when you have hired a team with an offshore service provider. Motivating team members with an encouraging email along with occasional gifts sent to them on regional festivals creates camaraderie as well as doing wonders for the project. At the end of the day remember that developers are human beings and they do need an occasional pat on the back.

Although a number of onsite project managers feel that project management tools are advantageous to the flow of a project, the core driver in a successful project will always be good project and human resource management skills.
In addition to this there are several factor which contribute to Successful Offshore Management;

1. TimeZone Management :

Working on different timezone it becomes really important for offshore team to understand time zone difference and plan you activities accordingly. In most of the case i had seen Onsite team expects at least 2-3 hour time zone lap so that both onsite and offshore team are present.

2. Expectation Setting:

As you are remote, expectation setting become somewhat difficult so you should think of other mode of communications apart from email or phone. Like you can get Video Conferencing involved when you are in the mode of setting the expectation

3. Cultural Understanding:

Offshore Team Lead should get be well aware about the Cultural value of that geographical area. Every country has their own cultural values so its good to know for you team you work.

4. Sync Up Process:

Offshore Team should create an effective way to syn up with their onsite team. You can use any mode where both the teams are comfortable. In the initiation of the project team should sync up more.

5. Comfort Feeler:

Onsite Team members should think you as one team. Try to avoid getting this mentality of Client-Contractor relationship. Here the team lead or project managers capability plays vital role
Thought there are challenges associated with this but i would prefer to go with the positives :) .

you can also let me know your views on this

Regards

Neeraj
Senior Project Manager
Azri Solutions

Web3.0 and Indian/Internation travel industry

Posted by: uexpress on: April 27, 2009

Web 2.0 has been a nichy phenomenon with hundred and thousands of microcap efforts addressing one of the Cs, lately, Community being the most popular force, producing companies like MySpace, Facebook, Piczo, Xanga, and Flixster.

Just in case you aren’t aware, Web 2.0 is a term coined to describe the phletora of websites that exists nowadays catering to Internet users to have a place where they can network and participate in a more interactive way. Examples of web 2.0 based are Flickr, where users can share photos, and Wikipedia, a place where users can help to contribute to an article’s content either by editing or adding to it.

And not forgetting, blogging is also included in the web 2.0 family. Compared to the conventional fashion of publishing, it allows readers to share their views by commenting on it. And recently there’s a discussion of the possibilty of the third wave to hit the web in near future, the web 3.0.

What exactly is web 3.0? It basically means web browsing with 3D experience. If Web 2.0 is built towards the social side of the online world, web 3.0 is expected to be where the money will be made by the corporations. Although it have existed for quite some time now, but the exposure is for web 3.0 based applications more towards focused groups. This is possible, thanks to the development of faster processors and hi-speed broadband access that keep on coming our way nowadays.

Web 3.0 based applications are expected to be a virtual reality location where consumers can try anything. An example would be the Second Life, where more than 1 million players, including offline merchants participate.

In Web 1.0, Commerce had been the driving force, that produced companies like Netflix, BlueNile, Amazon, and eBAY. It had also resulted in the Dotcom meltdown.

The same period that is seeing the surge of Web 2.0, has also seen a great deal of investment in Vertical Search, like Sidestep for Travel.

Personalization has remained limited to some unsatisfactory efforts by the MyYahoo team, their primary disadvantage being the lack of a starting Context. More recently, Netvibes
has raised a lot of buzz, but also lacks the same organizing principle: Context.

With the storm of web2.0 many indian travel sites like yatra, cleartrip, makemy trip etc either went online or got aligned with the trend and now its upto them how they want to move ahead wiht the web3.0 revolution. They have been catching up with the trens and continuousely went under modifications in order to provide better user experiences in terms to services to the end user, so far they have been successful and stood the test of time. Now i am sure everyone is unclear as to how to handle the web3.0 boast, should we go with it or not only the customers will say or a new strong competitor willl arise in the same domain with all web3.0 tools to lure customer which might give a test for true taste of end users. Question is how do we go along adopting web3.0, is it complete modification of existing system or just an enhancement/update that can help us achieve the web3.0

In Web 3.0, I predict, we are going to start seeing roll-ups. We will see a trunk that emerges from the Context, be it film (Netflix), music (iTunes), travel, cooking / food, …. and assembles the Web 3.0 formula that addresses the whole set of needs of a consumer in that Context.

Few facts about Indian travel industry, front and back players

OTA (online travel
agency)

Funding

Investor

Extra plugs

FlightRaja (now called Via)

$5 million

NEA Indo US ventures (owned by Vinod Dham)

Domestic + International flight ticketing, bus ticketing, hotel reservations.

MakeMyTrip

$10 million

SAIF Capital Partners

Domestic flight ticketing, hotel bookings – bundled/packaged service.

Yatra

$5 million

Reliance Capital, Norwest VC, TV18

Domestic flight ticketing, hotel bookings – bundled/packaged service.

TravelGuru

$10 million

Sequoia Capital India (Sequoia Capital and WestBridge Capital Partners)

Domestic ticketing, hotels, cruises, holiday packages, corporate travel

Cleartrip

$3 million

KPCB, Sherpalo

Domestic booking, hotels, place information

Arzoo

Sabeer Bhatiya’s factory!

Domestic + International flight ticketing, Holiday package, car rentals

Rediff Faresearch

Rediff

meta search engine.

Yahoo Farechase

Y!

meta search engine – though not too sure why Y! is not promoting this in India.

Zoomtra

*

meta search engine.

Ghumo

*

meta search engine (for flight/train and hotel bookings)

iXiGo

self funded

meta search engine, read our review here.

ezeego1

Cox & Kings

probably the most relevant meta search engine.

Travelocity India

N/A

Sabre Holdings

Initial focus on hotel bookings.

Travel Chacha

*

Domestic + International booking, car rentals, hotel bookings, Packaged deals

TripMela

*

Focuses only on travel related deals

Meratrip

*

Main focus is on travel related deals

Airdeccan.net

AirDeccan

has a tie-up with TravelGuru for hotel bookings.

Indiatimes

Indiatimes

Travel booking for partner sites

• Travel portals in India did business of $800 million (of the total $15.5 billion travel market in the country) in 2006. This increased to around $2 billion in 2008.
• In 2006, India attracted 4.43 million foreign tourists; the same year, around 350-400 million domestic tourists are estimated to have traveled around the country
• Air passengers in the country increased from 22.788 million in 2005 to 32.172 million in 2006 to around 40 million in 2008
• Flight raja is already profitable and does business of Rs1 crore a day.
• On an average, commission from air tickets which account for the bulk of the business are the lowest and range from between 2% and 9%.
• For hotel bookings, the commission is much higher and varies between 8% and 25%

Now the above players are surviving either by a sustainable business model or by variour marketing campaigns held during the year but the points is all of them are well aware of they online presence and they spend a lot in catching up with the latest trends in technology, so far they have invested a lot in getting web2.0 and its it will be a big business discussion on rolling over to web3.0.
Today anyone with an Internet access and Credit card can just like that, plan for a week’s tour to South Africa or the Himalayas, thanks to the travel sites who offer trip planning at your finger-tips – flight booking, hotels and car rentals along with the reviews of the hotels, places of interest, and information on packaged deals. Clearly travel sites have been redefining the travel agency business.
Online travel is one of the largest e-commerce categories. According to Forrester Research the online travel industry is projected to grow from $63.6 billion in 2005 to $110.5 billion by 2008 in the US only . JupiterResearch on the other hand estimates $128 billion to be spent on online travel in the US in 2011. Jupiter expects 38% of all travel revenues to be made online by 2011. Over the last few weeks, we have analyzed the Travel sites based on the Web 3.0 framework.
The online travel industry is expected to continue its strong growth and this is one of the main reasons for the ongoing VC and entrepreneurial interest in this category. The fact that online travel is a booming industry is clear from the growing number of travel sites, emergence of travel metasearch engines like Kayak and SideStep and the mushrooming of niche sites like yatra, makemytrip etc.
Context is, by and large, poorly understood by the sites, although nuances like flights, hotels, car rentals, cruises, vacation pacakges, maps, hotel and destination reviews, trip planning, sharing, etc. allow the consumers to plan their trips and make bookings. But few have created contexts like student travel, luxury travel, adventure travel, romantic travel, etc.
The Content offerings at many of the sites are good. Some, like Lonely Planet, come from Content roots, and do an especially good job. The CPM rates for these sites are similar and are in the range of $15 to $65 per thousand impressions. Considering the present boom in the online travel industry, ad rates are expected to rise in the coming years.
The Community features on most of these sites lack punch and leaves a lot to be desired. Trip Advisor has the best community section but the rest really needs to improve the community features and incorporate photo and video sharing, forums and blogs on different aspects of traveling like trekking, backpackers, family, summer holiday, etc.
Online travel is the largest Commerce segment and most of the revenues come from the commissions earned on the bookings made through the sites. However, most of the Indian websites are not taking full advantage of e-commerce and I believe there is an opportunity for these sites to retail a lot of travel related merchandise through their site.
What I would like in the Vertical Search space is that the sites allow users to Search by Context and by this I mean, if I am a student I would like to search for hostels for backpackers like me, as well as other travelers to hang out with, by destination.
Personalization is sub-par in most of these sites and they allow users to plan their trip, save and share their trip, photos, make posts and write reviews. They have email alerts for travel deals and newsletters. Endless possibilities exist, all the way to a Personal Concierge.
Conclusion
The online travel industry is projected to grow at 30% per annum in the next 5 years and this has resulted in a number of entrepreneurs, VC and PE funds entering the space. However, travel sites that are able to integrate the latest technology, differentiate their offerings, build their brand and provide consumers with the best Web 3.0 experience will have an edge in this highly commoditized industry, and that opportunity applies just as well to the major airline sites.
PS: I went through different Blogs and forums to develop my understanding and also took some data and material from different websites to make it an effective reading for the reader.

Ten Guidelines From God

Posted by: uexpress on: April 21, 2009


Effective Immediately,
please be aware that there are changes YOU need
to make in YOUR life. These changes need to be
completed in order that I may fulfill My promises
to you to grant you peace, joy and happiness in
this life. I apologize for any inconvenience,
but after all that I am doing, this seems very
little to ask of you. Please, follow
these 10 guidelines

1. QUIT WORRYING:
Life has dealt you a blow and all you do is sit
and worry. Have you forgotten that I am here
to take all your burdens and carry them for you?
Or do you just enjoy fretting over every little
thing that comes your way?

2. PUT IT ON THE LIST:
Something needs done or taken care of. Put it
on the list. No, not YOUR list. Put it on MY
to-do-list. Let ME be the one to take care
of the problem. I can’t help you until you turn
it over to Me. And although My to-do-list
is long, I am after all… God. I can take care
of anything you put into My hands. In fact,
if the truth were ever really known, I take
care of a lot of things for you that you never
even realize.

3. TRUST ME:
Once you’ve given your burdens to Me,
quit trying to take them back. Trust in
Me. Have the faith that I will take care of
all your needs, your problems and your trials.
Problems with the kids? Put them on My list.
Problem with finances? Put it on My list.
Problems with your emotional roller coaster?
For My sake, put it on My list. I want to
help you. All you have to do is ask.

4. LEAVE IT ALONE:
Don’t wake up one morning and say,
“Well, I’m feeling much stronger now, I think
I can handle it from here.” Why do you think
you are feeling stronger now? It’s simple.
You gave Me your burdens and I’m taking
care of them. I also renew your strength
and cover you in my peace. Don’t you
know that if I give you these problems back,
you will be right back where you started?
Leave them with Me and forget about
them. Just let Me do my job.

5. TALK TO ME:
I want you to forget a lot of things.
Forget what was making you crazy.
Forget the worry and the fretting because
you know I’m in control. But there’s one
thing I pray you never forget. Please, don’t
forget to talk to Me – OFTEN! I love YOU!
I want to hear your voice. I want you to
include Me in on the things going on in your life.
I want to hear you talk about your friends
and family. Prayer is simply you having
a conversation with Me. I want to be your
dearest friend.

6. HAVE FAITH:
I see a lot of things from up here that you
can’t see from where you are. Have faith in
Me that I know what I’m doing. Trust Me;
you wouldn’t want the view from My eyes.
I will continue to care for you, watch over you,
and meet your needs. You only have to trust Me.
Although I have a much h bigger task than you,
it seems as if you have so much trouble just
doing your simple part. How hard can trust be?

7. SHARE:
You were taught to share when you were
only two years old. When did you forget?
That rule still applies. Share with those who are
less fortunate than you. Share your joy with
those who need encouragement. Share your
laughter with those who haven’t heard any in
such a long time. Share your tears with those
who have forgotten how to cry. Share your faith
with those who have none.

8. BE PATIENT:
I managed to fix it so in just one lifetime
you could have so many diverse experiences.
You grow from a child to an adult, have children,
change jobs many times, learn many trades,
travel to so many places, meet thousands
of people, and experience so much. How can
you be so impatient then when it takes Me
a little longer than you expect to handle
something on My to-do-list? Trust in My
timing, for My timing is perfect. Just
because I created the entire universe in
only six days, everyone thinks I should
always rush, rush, rush.

9. BE KIND:
Be kind to others, for I love them just
as much as I love you. They may not dress
like you, or talk like you, or live the same way
you do, but I still love you all. Please try
to get along, for My sake. I created each
of you different in some way. It would be
too boring if you were all identical.
Please, know I love each of your differences.

10. LOVE YOURSELF:
As much as I love you, how can you not
love yourself? You were created by me for
one reason only — to be loved, and to love
in return. I am a God of Love. Love Me.
Love your neighbors. But also love yourself.
It makes My heart ache when I see you
so angry with yourself when things go
wrong. You are very precious to me.
Don’t ever forget……

Behavior Driven development the practical truth

Posted by: uexpress on: April 21, 2009

Behavior Driven Development (or BDD) is an Agile software development technique that encourages collaboration between developers, QA and non-technical or business participants in a software project.

The focus of BDD is the language and interactions used in the process of software development. Behavior-driven developers use their native language in combination with the ubiquitous language of Domain Driven Design to describe the purpose and benefit of their code. This allows the developers to focus on why the code should be created, rather than the technical details, and minimizes translation between the technical language in which the code is written and the domain language spoken by the business, users, stakeholders, project management etc.

Dan North created a story-level BDD framework for Ruby called rbehave which was later integrated into the RSpec project.
The focus

The practices of BDD include:

* Involving stakeholders in the process through outside-in software development
* Using examples to describe the behavior of the application, or of units of code
* Automating those examples to provide quick feedback and regression testing
* In software tests, using ’should’ to help clarify responsibility and allow the software’s functionality to be questioned
* Test use ‘ensure’ to differentiate outcomes in the scope of the code in question from side-effects of other elements of code.
* Using mocks to stand-in for modules of code which have not yet been written

Few Pros and Cons that you might realize once you start working with BDD

Pros:
* I like that when I break a test or when a test is broken on the build
server that we know which business case will fail. That means broken code
relates directly back to the bottom line.
* I like that for *certain* cases I can give the bdd specs to a PM type
figure to read and double check my sanity.
* When I’m on a BDD roll, I find it faster to create tests than when unit
testing since I can test in larger chunks.
* It’s great to wade back into some old tests and have them make perfect
sense after just reading the class and method names.
* I’m forced to think in terms of business value. If I go off to write a
bunch of code that I can’t think of specs for it makes me pause and realize
that my specs may not be needed by those who pay me.
* I get 80-90% of the value of BDD by using the same unit testing framework
I was using for vanilla TDD.

Cons:
* I’m forced to think in terms of business value. It’s a PITA trying to
figure out how to think in terms of specs vs. layers/units. This is a mixed
blessing but ultimately, especially when first starting out, I wouldn’t say
you would want to force everyone to write in this style because it could
cause some serious velocity issues.
* It can be difficult to find specs you care about if you don’t name the
files/folders in your spec project properly. Right now there is no brilliant
guidance on the best way to do this either.

Let me know your views on this and if there are any practical expereinces

Neeraj
Senior Project Manager

Behavior Driven Development using Rails

Posted by: uexpress on: April 21, 2009

This post is mainly Defining Context Boundaries as this is a crucial factor while practicing BDD in rails

Before we can begin doing BDD (behavior driven development) we need to install some tools to help.

sudo gem install cucumber rspec-rails webrat

Next I go to my Rails application and run some scripts to get the basic set-up inside my rails directory structure:

script/generate rspec
script/generate cucumber

Now in the newly created features folder I will create a file called user_administration.feature. This file will contain all my scenarios for this feature. After spending some time thinking about how to express my features I come up with two basic ones to start:

Feature: User Administration

So that I can control access to the application
As an admin
I want to manage users

Scenario: Create a new user account
Given no user “joetest”
When I create a new user “joetest” with password “skymonkey”
Then the user “joetest” can log in with password “skymonkey”

Scenario: Suspend an existing user account
Given a user that is active
When I suspend the user
Then the user can not log in

Now I run the following command to have cucumber generate snippet methods that I can then copy into a step definition.

script/cucumber features/user_administration.feature

I create a new file named user_steps.rb in the features/step_definitions folder. Now that we have our step definition snippets the next job is to take them from “pending” into something meaningful. We’ll start with the first scenario. After giving it some thought it might end up looking like this:

Given /^no user (.+)$/ do |login|
lambda{ User.find(login) }.should raise_error(ActiveRecord::RecordNotFound)
end

This first part sets us up. It allows us to express the given state, in this case not finding a user named “joetest”.

When /^I create a new user “(.+)” with password “(.+)”$/ do |login, password|
visit new_user_path
fill_in “user_login”, :with => login
fill_in “user_email”, :with => “#{login}@test.org”
fill_in “user_password”, :with => password
fill_in “user_password_confirmation”, :with => password
click_button “Sign Up”
end

Next we describe the action we’ll be taking. This code simulate the submission of a form, using Webrat. We take this approach because it makes us exercise the whole stack views, controller and models. It’s just short of me going to the site with a browser.

Then /^the user “(.+)” can log in with password “(.+)”$/ do |login, password|
visit login_path
fill_in “login”, :with => login
fill_in “password”, :with => password
click_button “Log In”
response.should contain(”Logged in Successfully”)
end

Lastly we test our outcome, that the user the admin created is able to log in. So the end result is test that describes the behavior of an admin creating a new account for a user, and they are able to successfully log in.

Along the way you may find tests go red (fail), this is normal. You want to write code (just enough) to make them go green, then continue to write more test code. Keep repeating this until all your tests run green.

Also the nice thing about step definitions is that they can be reused in other tests. We’ll likely have other scenarios where we create a new user or try to log in as one. Our code stays dry and we (the developer) stay confident.

I will be covering few other things in my next post.

reference: http://www.ozmox.com/2009/03/29/bdd-step-by-step-example-part-1/
Cheers

The Practical approach to Project Management

Posted by: uexpress on: July 9, 2008

With variety of applications and hundreds of web development framework and craziest client demands, one of the most common questions I hear from project managers are:

- How do I determine how long a project should take?

- How many resources should we introduce in a project?

- Which PM tool to use?

- Which development methodology to use etc etc

- How do I deal with nuisances of development L

Many project managers use the old-fashioned gut check method, in which they rely on past experiences to provide guesstimates for the following questions. While this method may occasionally work for smaller projects, it becomes more difficult to accurately execute as the project grows in size and complexity.

The following methods can guide you in determining your project schedules and cost with a higher degree of accuracy and help your organization efficiently plan and track projects.

- Activity definition

Activity definition is when you break down a project into the individual tasks that are necessary to produce the project’s deliverables. Here you define the modules to a very granular level and sit/decide in presence with a technical architect manager upon the timelines as most of the time in open sources you have to be very alert and updated on the latest developments.

For example in rails (MVC framework) you have the direct GEM/Pluggin to achieve a set of functionality in no time so if you are not aware and your client is aware then you are in mess, so be updated on these fronts

There are many ways to go about this, but I tend to use process decomposition through a Work-Break down structure; it allows me to break down each element of the work packages into a scheduled activity by team member based on who is responsible for the package. At this point, you can also create the activity lists, which help define what needs to be done later.

Note: I leave some tasks unallocated as I want people to come forward and accept tasks and behave proactive. I am using Redmine (Open source PM tool) and it allows me to define a particular task with related material like , test cases, use cases, scenarios and conditions, wireframes etc and also allows me to associate these tasks with others

Activity sequencing

Activity sequencing is when you decide the order in which the project’s activities need to be completed. Here I am not going with big technical terms like arrow sequencing etc, its just straightforward for me like

Design, development, integration, testing and deployment

Since the tasks is already divided through a WBS on a very granular level I put up these modules and sub modules before the client to present me with his priority List in a MOSCOW fashion.

After I have the lists I concentrate Musts and Should first, rest everything is flexible as per the dependencies

Activity duration estimation

Many factors contribute to determining a project’s activity duration; these factors may include business needs or situations that have legal requirements.

To estimate an activity’s duration, start by using your Project Scope statement in order to understand any project constraints or assumptions that could impact your estimating. You can base your estimates on similar activities that have occurred in the past (analogous estimating), or you can estimate based on how long something typically takes to accomplish (parametric estimating). An example of a parametric estimate is: If it takes two hours to build one user registration and login page along with forgot password facility etc etc

You may have a customized template for this estimation. Since you already have all the tasks broken down and a clear idea of the code/previous code/Open Source etc that you are going to use, you can give a clear estimate on the timelines and add 20% as the contingency

you never know when you are going to use this but still if there is no contingency situation you can use it for code review and code optimization”

You can also estimate an activity’s duration by using the Program Evaluation and Review Technique (PERT) formula. PERT weighs the average of the pessimistic (P), most likely (M), and optimistic (O) estimates for an activity. For example:

PERT formula = (P+4M+O) / 6

Activity resource estimating

Once you know which tasks to complete, it’s time to figure out: how many resources you need, when you need the resources during the project, and how long you will need the resources.

You shouldn’t need to do much guessing because you can rely upon your Organizational Process Assets, expert judgment, published existing data, or bottom-up estimating when validating your resource requirements. All of these methods are valid ways to put firm numbers in place when determining your resource needs.

Team plays an important role so before assigning any resource make the competitive resource matrix where you will be estimating the intellect and competence of a resource based on their expertise and experience and each resource perform on a different level.

Put extra/backup resources with active involvement as you never know when they are needed as there might be changes that some people are not able to continue and knowledge transfer is not done

Schedule development

During schedule development, you bring together information from activity sequencing, activity duration estimation, and activity resource estimating to help build your project schedule, as well as your project schedule baseline.

If there are any issues at this point in your schedule, you can perform resource leveling or schedule compression. Resource leveling will help you manage your resources during periods where you may have initially found them to be over/under committed. Schedule compression will show you the impact of adding more resources to any critical path items or how running tasks in parallel can benefit the schedule.

Schedule control

While schedule control is part of the necessary Integrated Change Control process, you must also know where your project is at any point in time. This step will help you define and communicate how to handle things that affect the project’s timelines. Any changes that may impact areas such as the schedule baseline or approved change requests need to be handled via this process to ensure you can track their significance on the project.

Note: Take all approved change requests in account so that your schedule is not out of control and adjust your schedule accordingly

Summary

During the course of any project, you will struggle with questions about what to do, how to do and when to do it. By taking a more structured approach when defining and answering your questions about time management, you will put yourself in a better position to come away with a plan that you can explain and execute.

Stay small and be agile in order to succeed, its like If you have an application with three different modules “x”, “y”, “z”, differentiate them separately along with their association and assign separate team/people for each module like this the bigger picture is small and clear and the overall picture is still big and clear

Neeraj

Functional project managers

Posted by: uexpress on: June 20, 2008

Functional managers organize the work of similar people (people performing a given function). They hand off their deliverables to another group. Project managers coordinate the work of numerous people to deliver a product to the organization. Matrix managers manage people of a similar function and deliver people to the projects.

In the hiring book, I wanted people to understand the problems these managers solve. But here, I want to explore a bit about how those managers intersect, and how to avoid many managers for one person, especially if the project managers work in a matrix organization.

I taught a project management workshop recently, and has a discussion about who does what. The big problem facing these matrixed project managers was: how did they learn the state of the project without looking like they were micromanaging the technical staff, and how to behave so that people didn’t have two managers, both telling them what to do?

Here’s how I separate the work of the functional managers and the project managers when the project managers are matrixed into the organization to lead projects:

Functional Manager Project Manager
Assign project Assign work for project
Discuss how well person is doing that work and if person wants to continue doing it (providing opportunities for growth) Discuss state of work for project
Gather information from other PMs to write the evaluation Provide feedback about performance/work on this project at least weekly
Work with employee to set and coach on career goals Work with employee to improve specific skills as they relate to this project

The functional manager and the project managers have different ranges of vision. The functional manager reviews the strategy of the group and how well people are performing that strategy. The project manager is tactical, focused on finishing this project successfully.

If you’re both a functional manager and a project manager (how do you do that??), keep at least some time every week to review the strategic picture and make sure you’re fulfilling the strategy. It’s too easy to let the project needs overwhelm you.

Project Manager’s view for Project Failures!

Posted by: uexpress on: October 24, 2007

Unless you are in a mature industry such as banking or insurance, where information is the life-blood of what you do, chances are you will be familiar with at least some of these 10 project management failings put together by Robert Francis Group analyst Mimi Ho.“One, they’re right on the button and two, if you take a look at the large majority of them, it all has to do with project planning and early stages of analysis that companies like to jump over,” said Jeff Monteforte, owner of Exential, an independent project management consultancy in Cleveland, Ohio.

In other words, when IT projects fail it rarely is a result of the technology. At its core, project management is all about people.

“Even in some of our clients, some of them are doing very well … and others are just starting where they don’t even have executive support and they get the executives saying ‘Just start the project I don’t care what you do’,” said Ms. Ho. “And projects fail … and they’re like ‘It’s IT’s fault.’”

The Top 3 problems Monteforte, a 20-year veteran of the project management business, encounters most often are: lack of executive support; changes to project scope and the lack of change management; and failure to establish user expectations which leads all too often to unrealistic deadlines.

The Top 3 project killers he encounters are: lack of executive support; lack of pre-project planning; and insufficient people (not monetary) resources allocated to get the project done.

Ms. Ho also sees the same problems—especially lack of executive support—as Monteforte but adds poorly defined project requirements to his lists.

“You need to speak with stakeholders directly because the bill changes or they visualize the project being a certain way but when it’s communicated the project could be different,” said Ms. Ho.

According to RFG and Ms. Ho, what follows, in no particular order, are the 10 most common pitfalls to successful project completion:

Undefined or poorly defined project requirements. – Project managers should collaborate directly with key project stakeholders to define specific detailed project requirements and deliverables. Defining specific project requirements is necessary to maintain alignment of project tasks to desired business outputs, as well as to ensure that projects have clear and specific project objectives established.

While this step may seem obvious, many companies will skip this stage and go right to solutions to jump start a project. Business and/or IT executives assume the requirements (such as controls, dashboards, data, dependencies, functionality, integration, metrics, outputs, and workflow) are met without performing any confirming analysis.

These projects tend to fail and the companies usually encounter over spending, project restarts, rework, and/or unmet expectations.

Lack of project planning. – Once the requirements are known, then conducting thorough, upfront project scope planning is an essential next step to help project managers and stakeholders accurately and clearly define project scope.

It is important for people to understand that there is more than one way to achieve the requirements and that scope and cost vary by approach. Project scope management is therefore necessary to develop reasonable project estimates, enhance the management of customer and stakeholder expectations, and mitigate project risks such as cost overruns and schedule delays.

Project managers should establish and standardize a scope management process to develop concise project scope statements and credible budget and schedule estimates.

Lack of or poorly developed budget forecast. – Thorough research and preparation is necessary to develop a reasonable budget estimate. Many companies will skip this step or just do a very rudimentary estimate due to the amount of work needed to complete the task.

Some companies that do not maintain internal archives of project costs turn to external consultancies to acquire external spending/budget information on companies that have completed similar projects in a similar market.

Using the estimated budget, project managers should collaborate with stakeholders to help further refine the project scope and final deliverables. Project managers should use their initial budget to base actual spending plans as well as to proactively track spending and respond quickly to potential issues to prevent shortfalls in the budget.

Lack of stakeholder involvement. – Project managers should ensure that primary project stakeholders are involved with the project from the beginning and throughout the entire project. This is crucial to ensure that visions are properly communicated, defined, and verified.

It is very common for project efforts to be delegated to staff that do not have sufficient knowledge or understanding of the desired effort. As a result, projects are defined incorrectly and the projects delivered do not meet the expectations of key stakeholders.

Lack of executive support. – An IT project can be highly political and may end up involving an excessive number of unnecessary or incorrect participants. IT executives should seek ongoing senior management endorsement and enforcement of the planning process to keep the effort on track and to minimize pushback from line of business (LOB) managers.

Support from senior management and staff involvement are both needed to drive and keep the effort focused and moving. Ownership of the project must be shared to satisfy the demands of user management. IT executives must convey this message to senior management to retain involvement and participation.

Frequent or large changes to project scope. – Scope changes can significantly impact the cost, schedule, risks and quality of the entire effort. Project managers should watch out for early and frequent changes to the project scope.

While scope is defined early in the planning and estimation phases, there are valid reasons for change. For example, a stakeholder may acquire additional insight into a problem during the course of the project or external market conditions and/or government regulations can drive requests that extend beyond the initial project scope. However, changes to project scope can also occur as a result of developing a poor initial scope document.

Project managers must ensure that adequate time is spent on defining and refining the work effort directly with key stakeholders.

Cheers

Neeraj- Project Manager

Ten Guidelines From God

Posted by: uexpress on: October 23, 2007


Effective Immediately,
please be aware that there are changes YOU need
to make in YOUR life. These changes need to be
completed in order that I may fulfill My promises
to you to grant you peace, joy and happiness in
this life. I apologize for any inconvenience,
but after all that I am doing, this seems very
little to ask of you. Please, follow
these 10 guidelines

1. QUIT WORRYING:
Life has dealt you a blow and all you do is sit
and worry. Have you forgotten that I am here
to take all your burdens and carry them for you?
Or do you just enjoy fretting over every little
thing that comes your way?

2. PUT IT ON THE LIST:
Something needs done or taken care of. Put it
on the list. No, not YOUR list. Put it on MY
to-do-list. Let ME be the one to take care
of the problem. I can’t help you until you turn
it over to Me. And although My to-do-list
is long, I am after all… God. I can take care
of anything you put into My hands. In fact,
if the truth were ever really known, I take
care of a lot of things for you that you never
even realize.

3. TRUST ME:
Once you’ve given your burdens to Me,
quit trying to take them back. Trust in
Me. Have the faith that I will take care of
all your needs, your problems and your trials.
Problems with the kids? Put them on My list.
Problem with finances? Put it on My list.
Problems with your emotional roller coaster?
For My sake, put it on My list. I want to
help you. All you have to do is ask.

4. LEAVE IT ALONE:
Don’t wake up one morning and say,
“Well, I’m feeling much stronger now, I think
I can handle it from here.” Why do you think
you are feeling stronger now? It’s simple.
You gave Me your burdens and I’m taking
care of them. I also renew your strength
and cover you in my peace. Don’t you
know that if I give you these problems back,
you will be right back where you started?
Leave them with Me and forget about
them. Just let Me do my job.

5. TALK TO ME:
I want you to forget a lot of things.
Forget what was making you crazy.
Forget the worry and the fretting because
you know I’m in control. But there’s one
thing I pray you never forget. Please, don’t
forget to talk to Me – OFTEN! I love YOU!
I want to hear your voice. I want you to
include Me in on the things going on in your life.
I want to hear you talk about your friends
and family. Prayer is simply you having
a conversation with Me. I want to be your
dearest friend.

6. HAVE FAITH:
I see a lot of things from up here that you
can’t see from where you are. Have faith in
Me that I know what I’m doing. Trust Me;
you wouldn’t want the view from My eyes.
I will continue to care for you, watch over you,
and meet your needs. You only have to trust Me.
Although I have a much h bigger task than you,
it seems as if you have so much trouble just
doing your simple part. How hard can trust be?

7. SHARE:
You were taught to share when you were
only two years old. When did you forget?
That rule still applies. Share with those who are
less fortunate than you. Share your joy with
those who need encouragement. Share your
laughter with those who haven’t heard any in
such a long time. Share your tears with those
who have forgotten how to cry. Share your faith
with those who have none.

8. BE PATIENT:
I managed to fix it so in just one lifetime
you could have so many diverse experiences.
You grow from a child to an adult, have children,
change jobs many times, learn many trades,
travel to so many places, meet thousands
of people, and experience so much. How can
you be so impatient then when it takes Me
a little longer than you expect to handle
something on My to-do-list? Trust in My
timing, for My timing is perfect. Just
because I created the entire universe in
only six days, everyone thinks I should
always rush, rush, rush.

9. BE KIND:
Be kind to others, for I love them just
as much as I love you. They may not dress
like you, or talk like you, or live the same way
you do, but I still love you all. Please try
to get along, for My sake. I created each
of you different in some way. It would be
too boring if you were all identical.
Please, know I love each of your differences.

10. LOVE YOURSELF:
As much as I love you, how can you not
love yourself? You were created by me for
one reason only — to be loved, and to love
in return. I am a God of Love. Love Me.
Love your neighbors. But also love yourself.
It makes My heart ache when I see you
so angry with yourself when things go
wrong. You are very precious to me.
Don’t ever forget……

I.T HAS TO BE THE INDIAN WAY

Posted by: uexpress on: October 13, 2007

                                                   FACE THE TRUTH OF INDIAN IT INDUSTRY

Many Indians work 80-hours a week, the highest average worldwide. Worldwide this is now well known which is evident from the outsourcing work coming into India. This is because of unusually high commitment levels on the part of Indian professionals.

In fact, most Indians take pride and talk easily about this “sacrifice”, fondly believing it would help further their careers. Americans and Brits typically work 40-hour weeks. France has legislated a 35 hour week and Germany is working towards 36 hours.

Abroad, it is amazing to see people get up and leave office sharply at 5pm! It looks as of they are lazy or overstaffed or both. By the same logic people in the developing world, have to work more and this gives an impression that we are understaffed. A comparison of productivity ratios, however, reveals quite the contrary!

In the process a research study conducted revealed certain factors that keep people at the workplace for extended hours. Let us call them ‘motivators’ which we are deliberating below:

E-mail: Many employees spend most of their workday on email. Colleagues comment that they have cleared 150 mails from ‘Inbox’ today, expecting sympathy. What we choose to ignore here is that that email is an efficient communication tool, and not a substitute for work.

Internet: Browsing through recommended or ‘googled’ web-links and online trading and tracking of investment portfolios is another attraction during the workday. One now wonders how employees pretended to be busy before the advent of computers.

Gossip: While gossip is normally associated with women, men provide serious competition when it comes to workplace related gossip. Hot topics include the boss, his/her favorites and the newest pretty young tease in the block.

Impress the Boss: Insecure employees may be reluctant to be the first to leave office. Many also believe that being the last to leave reinforces the ‘committed employee’ reputation. Equally, egoistic bosses may insist or expect subordinates to stay alongside them in office everyday. Overnight, late-staying stopped except in genuine cases, which were few and far between.

Hang out: Companies began investing in the fun@Work theme and hang out with work mates after hours. Free/subsidized meals and air-conditioned office spaces may make the option more appealing, compared to the uncomfortable 3 in 1 paying guest digs or crowded one room tenements that they have to return to. Some IT companies, which provide dormitory beds, shower facilities and television sets, find that a cross section of employees rarely leave the campus! In many cases, the habitual late-sitter may start leaving the workplace on time upon getting married, without a perceptible dip in performed.

Free Downloads: Bandwidth connectivity provides heavier video and music downloads, online shopping and surfing, leading to both savings both in time and cyber cafe charges.

It needs to be clarified that these ‘motivators’ apply to ‘peace’ times. However, if the war continues through the year, then it calls for serious soul searching, lest we run the risk of premature burnout.

The above, ‘motivators’ theory is not applicable to all the employees but only a few. In other cases Indian professionals put on genuine efforts for career growth.

Cheer up Indian Leaders..Its our time to Grow

http://www.pmhut.com/

Best PM website- No bookish knowledge all from practical knowledge. A place for best project managers

Blog Stats

  • 363 hits