Hi Guys, This is basically the video version of my long back posted article here on IT Knowledge Exchange website. Probably that is one of my earliest blogs and it got quite popular among readers belonging to Project Management, Software Projects, Quality Assurance, Quality Control fields.
Here goes the video that is published on YouTube:
The book is precisely of 200 pages, if you include the last 2 pages meant to jot down notes. It is a well written, well titled, and crisply sequenced book written by Aditya Kalra and Timothy Rajan Alex. Aditya or more popularly known as Ady among his friends, is carrying a little less than 4 years of rich experience in software testing in companies like MindTree, Fidelity and JP Morgan. Currently he is Test Automation Architect in J P Morgan, Bengaluru.
Ady started his career as Test Automation Engineer and very soon climbed the ladder to reach to a height with a new title – Test Automation Architect.
Timothy, co-author of this book, is has a great journey so far in test automation in companies like – Keane, Sapient and Adobe. Currently, he is Automation Tech Lead in Adobe Systems, Bengaluru. Having an excellent experience of over 6.5 years, Timothy is a thorough professional naturally equipped with software testing skills. Starting his career with manual testing, he has excelled in both flavors of testing – manual and automation. By now he has got an expertise in developing any number of variants of automation frameworks – be it open source, or commercial one.
Timothy is as passionate about testing as he is strong in technical skills in software testing. He has mastered and specialized in Web and Windows based applications – JAVA, .NET, SAP, VB – using different tools at different times – HP’s Quick Test Pro Automation tool, Selenium 2.0 (Webdriver), TestNG framework and so on.
1. Change in priorities are always a big hurdle in a project
2. Change is not always good
3. Change does not always brings in good
4. Change is good to avoid at times
5. Change in priorities will boost one project but at the cost of many other ongoing ones
Any project if goes well and ends well keeps drawing stakeholder’s attention during its lifecycle. This attention drawing goes all in positive manner, cheering teams, glorifying moments of milestones’ achievements, project completion etc. It might go other way round also in a way that it does draw everyone’s attention but this time, in a negative manner. Milestones not achieved in time, repeated number of times, teams getting demotivated and demoralized, management losing hopes over completion of project, most of talented people looking out extensively for another job.
If it is later, the situation is not too good for any of the stakeholders. If some of the stakeholders are not getting affected due to these adverse conditions, probably they are holding fake keys in their hands. It is well evident that it is team that makes any project success or failure. A single person may put extra energy or efforts in a project to drive it faster, but a project cannot fail on the whole merely with the wrong intentions of a single person of the team.
There is a big difference between mistaken happened due to ignorance and intentional mistake. A sensible person if makes a mistake ignorantly will learn a big lesson from it and shall never dare to repeat it. Repeated ignorance can be treated as bad or harmful as a big mistake done intentionally to harm project progress in a big manner.
Change in requirements does happen frequently or infrequently depending on the acceptability level of development team. It also depends on how tightly activities are planned and milestones are being monitored. At times there are certain changes that come right in the middle of a project but shake the progress in a big way. It might happen that the changes are inevitable and may nullify all efforts done so far at both ends.
In such a case there will be a fresh start with a valid reason and justification. Such changes are driven by big and usually external forces. Some of such factors are listed below:
1. Economic downturn: A big deal got undone due to certain reasons thereby shaking the anticipated inflow of funds over a period of time in a negative manner will definitely force management to think twice why they should not stop investing big amount in an ongoing project. Why not shrink requirements to save the larger chunk of investments in the project at a later stage when inflow gets stabilized.
2. Political imbalance: It is not about national or international politics. It is about politics that rests within an organization. An imbalance occurring due to any reason may impact the requirements defined for a project to a large extent.
3. Change in top management: This change at the bottom layer of sea and top layer of management usually brings a hidden storm within itself. The changed brain starts impacting existing brain by infusing ideas to mold them in a different direction. An ongoing project could be a classical example of this.
Change in requirements is not an unknown phenomenon in any kind of project. In software development it is rather happens more frequently. The adaptability of asking for such changes from customer end and accepting such changes at vendor end is quite higher and syncs well to such an extent that when a project has overshot budget or planned timeframe – neither of the two get to realize until it becomes too late for both of them.
There could be many positive and negative factors that control demand for changes during an under development project. Some of the top negative factors can be listed below and if these are controlled well during any project; probably success rate of projects will go higher by 50% from current level of failures:
1. Lack of involvement: Requirements have been given at the beginning of project and a sign off of requirements has happened; hence nobody from customer end is required to vet those requirements getting translated into code.
2. Lack of seriousness: At times project gets imposed on customer end users without them taken into confidence and therefore they might not get involved in the project with all kind of seriousness.
3. Lack of Interest: A key user sitting at a high level might have been ignored in past by management and hence just to take revenge; the key user may keep low interest in the project but keeping full care that it does not smell out in the air.
4. Shortage of time: Key users are given this important task of defining and managing business requirements in the project but along with are engaged in many other equally critical activities thereby leaving them with no time to be sincere with the project.
5. Change in strategies: Management at customer end may have change in strategies at their end thereby pushing the ongoing top priority project to a lower one and hence change the prepositions for all involved in the project.
Developers are probably most creative group of people who keep themselves engaged in creating code all the time. Since perfection and human beings are some steps apart in whatsoever is done by human beings, there always is an urge found to strive for perfection. This is what makes them good developers. There are certain pre-requisites to attain that stage, lack of which may behold them to reach to that stage.
Top most reasons that hold good developers to build a bug free code can be listed as below:
1. Tight schedules: Tight schedules as such are not an issue for any good developer. But when it gets clubbed with certain more pulling impacts; the developer gets drifted away from developing extremely good quality of code.
2. Disturbing/ Tense atmosphere: This is what impacts a developer, or for that sake, any creative guy most. The developers need a non disturbing and cool kind of atmosphere around them so that they keep juggling new ideas in their mind and putting them in the code they are building.
3. Frequent interruptions/ Change in priorities: This is something that will disable any person for reaching to his goals. You start for something, change your mind for something else, or are forced to change your current work in hand with some other work; you are never going to attain your goals in life.
4. Lack of Documentation: This is something quite basic in nature but is not being followed for ages. Nobody understands the gravity of documentation and hence least attention is paid to this most important exercise.
5. Change in Requirements: Change in requirements is as disturbing in nature as change in priorities. It is usually done from stakeholder’s end and usually happens due to many reasons like – lack of involvement, lack of seriousness, shortage of time, change in strategies etc.
Whenever any application is used for the first time by a user, there is always a perceived notion in the mind of user on the behavior and functionality of the application. If the application being used for the first time behaves better than the expectations set in user’s mind, the battle is won; otherwise it is lost. Although it is very difficult to satisfy every end user by a single application, there are certain apps which have higher tendency of likelihood by its end user and hence such apps do well across the globe.
It happens in any kind of application whether it is based on client-server architecture or is a web based application. For web based applications some basic information, if is launched, along with the application; will help changing the preconceived notion of user from a wider spectrum to a specific pattern. Such information can be listed as below:
1. Browser Support: The web application, in whichever browser is opened, must clearly state the specific browser(s) on which it has been specifically built and tested.
2. Resolution: an application may play weird if not opened in proper resolution of the system. Hence it is important that the use knows well in advance about the best resolution for the application.
3. Limitations: Every application has certain limitations that are well known to its creators at the time of its launch. It is better to make user aware about such limitations so that he does not remain in dark.
4. Future Plans: If you let your users know about what enhancements you are planning, it will keep your users hooked to the app.
5. Feedback: A must have feature on every app to gather user’s feedback.
It was an astonishing outcome of project manager’s approach when I recently met with a group of project managers managing building of multiple products for multiple customers through multiple development and deployment teams. I started with a survey and as per my feeling most of them failed in that. The survey was focused on deriving findings on their approach, concern, belongingness, bonding; with end users.
It all started with a call from one remote end user who was facing difficulty in using an already launched web application. The screen was to add a new record and had 13 columns to be filled on screen-1 and 7 columns on screen-2. When it was opened by the end user, she could find only 11 columns and despite scrolling down, she was not able to see the rest of columns.
She approached the product manager and this guy remotely did something that she was now able to see the rest of columns. Wonderful though, but next day the same problem occurred to the same user. She approached the project manager this time. The project manager also did some jugglery and set the things right for her.
She could not understand what was wrong and what is being fixed by these two gentlemen that it all becomes ok. It was not at all a comfortable situation for her to work on that application to add any records further facing so many hiccups.
Can you just find out the missing pieces of this puzzle? Try and get back to me to see how many pieces you could find out.
Business applications are moving from client server architecture to web based. The design and usability have become predominantly necessity as strongly as earlier it used to be for navigation. Screen designs need to be dependent on browsers, resolution and focused audience. Microsoft, howsoever popular or widely used has been, still produces unexpected results for which there are no technical reasons. IE8 differs from IE9 and applications working fine on one, do not work well on other, if are not built with depth and knowledge.
Apps built on one browser do not work on others apparently producing lot of misbehaving results. At times there is an incompatible issue that needs to be addressed has to be brought into compatibility mode. Howsoever advancements technology brings in, the issues keep arising in one shape or the other.
Some important factors that need to be taken care of while building a web based product must have following basic factors:
1. Understand web audience well before starting designing of product.
2. Your users are much smarter now as they are not limited to the office boundaries and using only the product hosted on in-house servers.
3. They have understood the strength of web and must have tasted lot number of web based applications before they will start using it.
4. Current day end users are quite tech savvy and well versed with web apps and their strengths.
5. You can’t give illogical or absurd reasons of certain things not happening in the app which are well done in other products on the web. Tools and platform can’t be held responsible for such actions.
Team composition is one of the most critical tasks in any project. It if not the count of people that matters but it is the experience, level and maturity of team members that is to be focused upon while selection of members. Members with more open mind and fewer egos can do well as team members even if they are slightly short in knowledge than other members who have personality otherwise.
The strategy of team composition is highly dependent on the size and nature of project. A large sized complex project would require a higher level of strategy formation as compared to a small sized and simple natured project. Though it would be a misnomer that complex issues do not arise in simple projects, there also it depends on the right formation of team and deployment of strategies. A very small product development project may encounter bigger hiccups if the team composition is not done wisely.
It is better to delay a project for the sake of finding right kind of people rather than just completing the stipulated head count in the team irrespective of the skills and experience matching criteria assigned for the selection of candidates. Inappropriate composition of team members will always delay a project and on the other hand in a delayed project if right kind of people are included in the team, they would be able to cover up the time and milestones achievement backlog.
4. Milestones identification and achievement: Any project definitely needs perfect identification of milestones. Milestones have to be achievable, remarkable and not too distant from each other. Unless you identify quick milestones to project to management that things are moving in right direction, quite visibly; management will lose interest in project and that may start impacting the project and teams involved.
5. Reporting: If you are doing good in a project, you should be smart enough to project it well, timely and accurately, to all stakeholders. The achievements are to be acquired and shared well in time if you want to enjoy them the most, else they may lose their gravity and impact.
So in a nutshell if we see, it is a right nix of all above points that is required to win over all hurdles in a project. Correct requirement gathering not only depends on right process owners to define the business requirements but also require wise guys who understand business criticalities and can read the mind of requirement spellers.
Team that goes for requirement gathering needs to perform some homework in advance before landing into the customer’s location. There are lot of information that can be collected and understood before meeting the customer.
Though it is difficult the assume in advance what kind of problems will percolate during a particular project but more or less all kind of problems faced during a project execution/ deployment/ management can be segregated in five top most reasons or categories. These generic segments/ reasons/ categories will be able to address all issues that are encountered during a project and if these categories are taken care of well in advance in a proactive manner, the chances of failure/ delays in any project get minimized and hence increasing the chances of success.
5 Top reasons can be summarized as below:
1. Customer Requirements: Capturing right requirement first time is an art and a science too. Business Analysts and organizations need to master in this so as to move ahead with crisp directions for development team.
2. Team Sizing: Estimation of right kind of people in team, with right kind of experience and appropriate count of them helps in creating an optimum team size. It could be difficult to do the right sizing well in advance but if customer requirements are documented well, identification of right roles and experience becomes much easier.
3. Team Management: Team management is an uphill task during any project. It is not only the technical aspects than need to be overseen but also the soft side of the personality of each of he individual in the team that need to be addressed to.
Wrong requirement gathering can happen in two ways – 1. The team assigned to collect that information from direct process owners at customer end are incapable to differentiate between picking up right thread and dropping wrong threads so that no confusions arise later. But this is the most critical job and done by least business analysts. And 2. The process owners at customer end are incapable to spell out the right kind of business requirements that need to be built in the new application in question.
This does not mean that the designated process owners are dumb in their roles or knowledge. It is the question of spelling out the right requirement where they might not be expert. Management’s and BA’s role (and experience) comes quite handy in such instances.
Customer needs a tree that needs to have green leaves and bears fruits every season and you documented to build a lemon tree that becomes a cause of failure at the end. Did you ask customer what season should the tree bear the fruit, what should the maximum height and width of tree, what size of fruit will be most suitable for customer, hard or soft fruit required, what are the maximum benefits to be drawn out from the fruit – juice, fibre, extract, sweetness etc.; is very important to capture right in the beginning so as to give maximum clarity to your development team that is well aligned with the customer real requirements.
After all it is the right information that has to flow in building of the application. If it happens RIGHT IN FIRST GO, nothing like it. It becomes win-win for both.
Many of you would not be aware about the abbreviation PBL. Well, it is Project Based Learning. Simple. What do you do with it? Can I see a single document that you made during or after a project that comprised only and only of learning acquired from the project? What? There is no document. Well! Then where is the learning gone? How long will it remain in memory? What will be the final resultant of this learning? Has there been a long term beneficial learning from this project?
Project ending successfully in time or called off after spending some extra months over the stipulated ones; give lot of learning. It all depends on the project team, how much matured it is, so as to get the best pieces of learning getting recorded in their knowledge management and keep referring to it as and when required during the ongoing projects in future.
Project based learning can be termed as learning only if each and every success and failure during the project is minutely observed, documented and analyzed deeply to find out the top 5 reasons that made that success of failure happen.
Delays and achievements of milestones, team member’s strengths and weaknesses, identification of real heroes, achievers, motivators and strategists of the project; all that matters a lot to record.
Someone in the management has to intelligent enough to understand what all is happening during a project that is getting ignored and can become a big knowledge base for future projects.
Any activity that is not done right becomes wrong. Probably it is not the management of project that matters more but it is the learning from previous projects that can help you in running a project well and completing it in time. There are lot of factors that can help in running a project in a well-structured manner and ensuring achievements and success of milestones during each phase of the project.
It is the struggle that project team has to face and win over.
Various wrongs that can ensure project failure are:
Project Estimation: Project estimation, if not done appropriately, can lead to wrong team sizing, wrong direction and wrong milestones selection. A small hole appearing as no warning in the beginning may become cause of the sinking of large ship in deep waters at a later stage.
Project Team: Project team is the real bunch of warriors that make your success happen in the war known as project. A team needs to be rightly selected, so that all members respect each other, stay in sync, keep motivating each other along with being self-motivators and above all need to be success hungry. Any shortcoming in understanding the core requirements of a team can lead to wrong selection of team and hence giving a wrong shape to the project at every step.
Most of the projects get delayed worldwide. There could be various reasons for that. Anything can hamper the progress of a project – be it logistics, demographic, person based or decision based reason. A material getting stuck for delivery could hamper the progress of a project. Any local issue also may arise as a showstopper for a project. Persons involved in a project may become a bottleneck. A major decision could even mar the progress.
Why it happens becomes historical and a reason of analysis to work on at a later stage. As a project manager one needs to be proactive to anticipate a problem in advance and find out the reason to mitigate the risk arising out of it. First goal of a project manager should be to ensure that no risks evolve during a project. Though it is impossible to run a project and complete it without encountering any unanticipated risk but then the second goal of a project manager should be to be prepared for any unalarmed risk and promptly finding out a solution for it so that the risks get minimized and progress gets saved from getting derailed.
Third goal of the project manager should be to mentally prepare himself for any kind and any level of problem arising during the project. He should have means and measures to encounter such unwanted weeds growing vigorously in between the useful crop. For each vertical of a project, project manager should work out alternative routes well in advance so as to take a planned diversion in case of a crisis.
ETL stands for Extract Transform and Load. ETL can be treated as wider and broader horizon of normal testing that is done for business applications. Technically the process remains same as is there in any other kind of testing. First and foremost step is to understanding of requirements and business.
Once the requirements are well understood and business concepts are clear, it needs to be mapped various aspects like what is there at presents, what is required, in what timeframe and with what kind of resources. In fact once the requirements are clear as well the business goals are understood, one needs to validate and get them vetted by the respective process/business owners. After this estimation needs to be worked out on the basis of timelines being proposed to be consumed.
Once this gets approved, test planning is prepared. Basis of test planning is always the test estimates, business requirements and scope of work. Test cases are built along with the test scenarios based on the requirements and understanding. After the test cases are ready and get approved by test lead, test bed is prepared, pre testing assessments are done, approvals are taken and tests are executed to find out the results.
CPA (Critical Path Analysis) and PERT are well proven age old tools to use for scheduling and management of large and complex kind of projects. They came into existence in mid of 1950 when in US huge projects were looking for ways to control them in a systematic and objective manner rather than their get going in subjective manner without any monitoring or control over them. There are many other planning and analysis tools that can help you in driving your project in right direction with right pace.
Tools are nothing but means to equip you to measure your project at any instance; and take corrective measures in case if required so. Tools help you to assess project in an objective manner proactively rather than taking it for granted going in right direction without any real measurement of it.
It is not necessary to invest big amounts for such tools. Simple but effective templates built in-house can be used for the same purpose of analyzing the progress of a project.
Failures do happen in projects. There are definitely sizing and severity of failure in a project. The size and severity of a failure is measured by the impact a failure poses on business in various terms – reputation, financial and future loss in growth impacted by such factors. Some organizations are wise enough to understand the gravity of failure and start working in direction of mitigation of risks that arise out of it.
In fact chances of failures go higher in a project if there is a major component missing during the management of project and that component must be taken care of well in the beginning of a project as a whole; and at the beginning of each phase of the project. This component is nothing but is termed as Risk Management. Risk management in simple terms is how you manager risks. To manager risks it must be clear to you what can pose as a risk in a project and how much impact can it have on the project if it occurs. Measurement of impact needs to be objective.
More realistic assessment of risk, planning preparation to mitigate the risk and actions taken for the mitigation – all deliver to higher chances of progress of a project and its success.
Project comprises of many components. There are people to manage project, there are others who drive the project. Managing and driving a project is not similar though there might be some overlapping forming a common area between the two. Managing could be more of controlling and monitoring whereas driving could be more of actions so as to make management easier.
It is quite possible that ultimate goal could be same – to complete the project in time; but there will be two differential activities happening in the project. One would be more based on strategy forming and planning; second would be acting/ working on those strategies and giving them a real shape.
Planning and implementation go hand in hand – head to head – in a dynamic mode. The moment one becomes static and other remains dynamic; there will be a deadlock. By nature – both are supposed to be dynamic – as there is nothing like planning and then implementing. If it could be that simple, management part could have been required only in the beginning of a project. But in reality it does not happen. Planning keeps changing based on the project taking shape during its implementation. The pace of dynamism in both is actually required to be progressing in sync.
Irrespective of whether it is offshore project or the whole team is sitting within the same building; communication does play a major role in project management. No project covers its trajectory painlessly. It is the communication that keeps all teams attuned and intact in terms of staying together in a project. It is only communication that can revive back a derailed project; if done timely and appropriately. Else a project going in going in high speed in right direction may lose its track and start moving in a wrong direction.
It is not only important to receive proper information. The story does not end here. It is more important to understand the right kind of gravity of information in right time and on top of that – taking action on the same. Closing of loop happens only once you have received an information and understood its impact on ongoing project; and act accordingly in right direction.
How do you treat and build up communication as – as Thread or as Threat?
Do you take Problem as Opportunity?
Project Management Started around 6 decades back when it was felt by top engineers, builders, designers and architects; the need of a systematic and structured approach to manager complex projects so as to stay focused and informed throughout the project about its progress and achievement of landmarks or milestones. The management tools designed during that period spread all across various streams like civil projects, defense projects, engineering and of similar kind.
It was Henry Gantt during 1950s who is known to create some systematic approach to project management by means of concrete planning, monitoring, controlling and measuring techniques. And hence he is also known as the Father of Project Planning. Gantt charts are as famous, popular and effective today as they were in the beginning. Even today Gantt Chart is established as one of the most effective project controlling tool. Henry Gantt was highly influenced by his mentor and teacher Fredrick Winslow Taylor. Taylor is known to be the original creator of theories for the management of projects in a scientific manner.
It was firstly in Taylor’s papers that something known as WBS or work breakdown structure emerged as a good source of cutting down your huge and complex project into simple and small tasks and hence achieving success in each task one after the other. Gradually a group of tasks’ completion earmarks an achievement of a milestone. Completion of certain set of milestones completes a project phase. And ultimately completion of certain phases overall finishes the project.
Once you have created WBS for your project, then comes another effective tool produced by Taylor, known as Resource Allocation.
What is takes in a project is to plan, organize, and manage – time and resources so as to optimize commercial part of the project. And managing it in some way or the other is known as Project Management. The way could be any legacy, orthodox, manual process to a modern, fully automated, state of the art, well proven and well established project management tool.
Basically Project Management is nothing but to run the show in most disciplined manner. Resources, Planning, organization and management is all inclined to gain achievement and success in any project being part of. What you know in a project is scope of work, start time, target time, and usually based on this you have to work out the size of your various teams, financial goals, project plan and its smooth implementation. It is not difficult to achieve results, provided you are well aware of the goals and objectives. There is no project where constraints do not arise during its lifecycle – related to finance, time, objectives, team or customer.
Management of project is a mix of two ingredients – managerial skills and technical capabilities. A right amount of balance is a must in project management. Although these are two entirely different streams of management but somehow at times have a singular goal of achievement in target.
There are many tools available in the global, local and glocal markets that boast about helping you in management of your projects. Some of them might be really good. But the point of fact is that not all good things in life fit in well to everyone. Depending on the culture in your organization, kind of people you have employed who are directly responsible for projects, and above all your intentions of staying wherever you are in competition and revenues aspects or climb up the ladder fast to reach to one of the top few positions and then sustain to stay there for long.
PRINCE2 is one of the legendary tool to manage projects in a well structured manner so as to optimize the project progress throughout it various phases and increase the chances of its success. It was launched in market in the year 1996. It was in line with and an advanced version of an older tool that was known as PROMPT. Gradually it emerged as a strong tool in terms of a strong and well defined project management framework and helps organizations in adopting world class methodologies to manage the project.
Basically PRINCE2 teaches you to synchronize the two major aspects of any project – people and tasks. It provides you with a wire frame to structure your project in a well defined manner thereby aligning all micro level tasks that are part of the project with the various members of the team who are managing the project. PRINCE2 provides you with a wider spectrum to help you in deciding on the design of the project and the manner it must be supervised to ensure its success. There are timely alerts in real time of running of project to get raised in case there is any deviation in the project progress as per its plan. It not only raises an alarm but also finds out best possible ways for you to get back on the track.
As a developer you might be very good in coding having an expertise in writing bug-free code extensively long having thousands of lines and quite rigorous in nature. But what about the non-coding component that is required to be built in and around your coding. Have you ever wondered that not all excellent coders are very successful in life in long run.
Top three tips to become a good coder that can make you an all rounder in all aspects and probably can act as a ladder to climb higher than you normally perceive during your career growth; are:
1. Act as a Catalyst to Business: Your value will increase when you stop talking in coding terms and start talking in business terms.
2. Value your code on the basis of your actual delivery to business: The day you know value of business that your coding can deliver or is delivering or vice versa, you will either start refurbish your coding style (as well as your understanding pattern) or you will start enhancing your coding to deliver more than what you are delivering.
3. Demand business knowledge: When your project manager tries to make you understand the coding he is expecting from you without showing you the wider angle, demand it. Ask what is going to be delivered by writing this code. What value will it add to the business. Your project manager might be travelling on a wrong boat with wrong perception. Brainstorming could help in alignment of technology and business thereby bringing more value to both.
For a tester it is important to be having a different frame of mind in terms of looking at the product from a different angle something uniquely apart from how others look at it. Usually testers have a third eye probably either developed on their own or is god gifted. With this third eye they are able to see the product the way it is to be looked at by the customer or the end user.
A Tester must forget certain things while testing a product if he is determined to produce or find out all of the ‘critical bugs’ hidden in the product so that it goes in a good shape to the customers. Five most important things to remember to forget while testing are:
1. Never underestimate your capabilities and different style of looking at a product
2. Never hide a bug from development team if it appears as a half bug to you. Half bug is something where you are not sure whether it is a bug or not. In any case of ambiguity or doubt in mind, just discuss the scenario with your peers, or superiors to conclude the things.
3. Cover the whole product but passing through each of the chunk. Your test cases have to work both at a broader level and micro level. The product sanity as a whole is as important as the functioning of each of its unit.
4. Deliver in time but without compromising with any of the situation.
5. Re-use test cases from your library where the repository keeps building up as a generic collection.
A project never goes smooth throughout its lifecycle. One or the other hiccups keep raising their heads belonging to various verticals connected to the project. It could be customer raised issue, product related concern or finance related query raised on project, for instance. Things, still, keep moving. Nothing stops. Efforts to overcome these obstacles keep going on. Once or twice in the beginning there is a tendency to give up things all together. Otherwise, based on experience and maturity, this give up tendency is overpowered by never dying attitude.
Attitude of the team matters most in any project. Higher is the amount of risks perceived, higher will be preparation required by the team to mitigate those risks. Mostly similar kind of risks that are part of current project become handy to tackle based on their happening in previous projects and the mitigation process adopted. Though it is not necessary that a mitigation process also remains as it is throughout various projects. A mitigation process also may require increase in maturity level so as to manage the things in a much better way than they were manager previously.
Tester is running n number of test cases to build a confidence over test lead that testing on product is being taken care of in most professional way, with complete coverage of all scenarios. Test lead gets satisfied and after few test runs, the product becomes ready to launch.
Product is working fine and ultimately it is put on production server after all UAT activities are formally closed. Usability is one of the factor that goes with feeling of the user rather than the appearance on screen. It might, though cover appearance, navigation, layout, design, and overall comfort it gives to the user.
Not all users will have same feelings about a product. Depending on how much one is required as an end user to delve in the usage of product, one will start looking at it or rather will start feeling it when it is being used on a regular basis.
Although you are performing your task quite handsomely and have earned a good amount of respect among your peers, team members, management and customers. But one important thing to keep in mind always is that all days are not equal, everyday is not Sunday and above all, you just can’t sit on your laurels. Each day is a new challenge in life. Everyday you have to do something new, a new achievement to establish yourself and maintain your sustainability.
Sustenance is tougher than gaining fame for a particular deed. Memories are short lived as far as achievements are concerned. History is not very important in corporate life. You might have done or achieved far more than others but if that is history, and chances are that if you are running at a slower pace now, many others will overtake you and you might not even get to know about it.
Your team is your most valuable asset in the whole project management cycle. Products come and go, showstoppers chip in and are resolved out, issues are raised and closed, deadlines are given and passed or met, milestones are made to show some tangible achievements during any project.
But how all this keep happening is because of your team. Your achievements, project success, milestones achievements, meeting the deadlines, closure of issues, resolution of showstoppers is all managed by none other than your team members. Imagine a scenario where you are told to manage the show single handed and it is dead sure that everything will become a standstill at that moment only.
When you build your team, it is like building with the best possible people and in best possible manner so that it becomes a win-win preposition for all – including organization, team members, and top management. how about sustenance of the same win-win preposition throughout, forever. Initially when team members are new in the team, they are shown and told about all best things but gradually the thorns start erupting out and the bed of roses starts converting into bed of thorns.
How as a Project Manager do you ensure that this bed of roses remains as it is forever. Think of building the bed with roses after removing their thorns.
Hi Project Manager,
Last time when we were sitting together and discussing about your projects, you were anxious to work out a service level agreement to be discussed with your Internet Service Provider with whom you had a meeting after some time. You wanted to know what are the key factors that should be placed in a standard agreement with the ISP so as to make it more powerful in terms of ensuring consistent unfailing service from your vendor.
Well that you got materialized and your ISP is providing you excellent services for the last one quarter. I was just wondering how about working out a service level agreement between you and your team. How about understanding what your team would be expecting from your besides whatever facilities and perks they are getting in the organization. There is something more than salary and perks that matters in professional life in terms of giving it to your team. Some approach that keeps your team charged, committed, connected and in sync all the time.
Have you ever thought on such matter ever or is it a plain vanilla routine project management running in the organization?
Hey Project Manager, you could be a very successful professional doing perfectly good in your projects. How about your teammates. Have you ever bothered to notice their qualities and have publicly praised and appreciated about those? You might have, I am sure, and many times. After all you know that it is your team that is delivering at their best thereby making you the most successful project manager among your peers.
Well, that is right. But that does not mean everything you have achieved in your professional life is only because of your teammates and with none of your personal qualities or extra efforts that you keep pouring in your project lifeline. That also sounds good. Now let us go a step further. Are you recognized among your team members as a good project manager or a mentor. As a good project manager you will be able to get the best out of your team members but as a mentor your will enhance their capabilities beyond their expectations.
As a good project manager you will be remembered by your team members as long as they are with you. But if you have been able to mentor them well, they will never be able to forget you wherever they are in their career ladder.
Issues getting raised, understood, tackled, handled and resolved is not anything new during an ongoing project. It keeps happening from time to time during the complete project lifecycle. More so often, if there are no problems in executing a project, it becomes doubtful as if there is definitely something wrong in the game.
Priorities do change during the execution not for the purpose of delay in the final timeline committed to the customer but to cover up the delays happening during the project due to various reasons. Prioritization is not simple. It may spoil the whole gamut if it is not done properly and wisely. Re-prioritization is rather more difficult. There are certain things already in stream in which so many team members are engaged. Changing their track and moving them from any running task to a new task is really challenging for all involved in the process. It might be easy to suggest a change in track but looking at its intricacies and requirements of speedily changeover, it becomes an uphill task for project manager to manage the show.
That is why the most important thing before re-prioritization of tasks is to understand the intricacies each task wise and the probably it is always better to do a risk assessment and analysis for such cases demanding higher priority at the cost of already prioritized and running activities.
Reporting, meeting, follow up, timeline are all integral part of any project during any phase. These are generally collaborative tools that make the entire stakeholders lie on the same page for that sake. It is difficult for all stakeholders to work from the same physical location due to their different business aspects and engagements. In that case the regular reporting procedure must be strong enough to fill in such gaps.
Besides some important facts like timely release of report, ensuring it getting addressed to all concerned etc. some more important factors in reporting are:
1. Format/ Template: The template has to be precisely as per the requirements and audience. A chapter of engineering class if included in accounts students’ book will be of no use. It has to be properly designed so as to cater to its purpose.
2. Non-Confusing: It is usually said that if you don’t know what exactly to present in a report, put lot of confusing stuff in it, and mostly you will win the case, until there comes a smart person who understands what is there between the lines and then you will be hiding places.
3. Automate: Try automating the report getting generated automatically and going to respective inboxes of stakeholders so as to shred off the manual efforts.
4. Discuss: Sending reports does not suffice any purpose unless they are discussed and based on that some plans are incorporated.
5. Feedback: Check with the respective recipients of report if it lacks any piece of information or how it can be optimized further. There is always a scope of improvement.
You are a team leader at whatever level you may be. There would be multiple team designs falling under you in your organization chart. Some below the line would be directly reporting to you while the others would be reporting to your first line reportees . It matters a lot how far or close you are with your teams in terms of conveying your messages and building a culture.
Physical distances do not matter in case of maintaining a strong communication process or culture with your teams. Whatever you expect from your team can come possibly in two ways – one you keep telling them about and two, walk the talk. What they must do in the work environment, you must demonstrate them by involving them in certain activities even though they might have no role to play in during that particular activity. While demonstrating you can very easily assess who all are keenly observing and absorbing it for future purposes and who are just carefree and least bothered about it.
In fact the best way of teaching a lesson is only when you are able to teach the least attentive team member. Once the message is conveyed properly, you can be rest assured about your team behavior with customer and other stakeholders even if you are not in the picture. You need not police your team to understand their way of managing the things unless you are too strict in allowing your teams to provide them any flexibility or some of your team members are not matured enough for that matter.
Nurturing of a plant, Upbringing of a teenage child and project management – all comprise of various issues, hiccups, bottlenecks, problems and troubles. All three above require a well-planned charter and its execution. The amount of fertilizer required for a plant cannot be altered in terms of quality. More fertilizer than required may incur harmful effects rather than enhancing its growth. Each child has a different set of combination of moods and in the same manner each project has its own unique experience in terms of initiation, execution, implementation and handover.
Plans, follow-ups, timelines, monitoring, alerts, escalations, meetings, alarms – usually go hand in hand along with the project lifecycle. These are not meant to pinpoint any team member’s integrity but the strengthen project execution process. Basically the overall purpose is none other than timely and rightly execution of project and complete satisfaction of the customer. All the pains encountered during any project get nullified if the end result is welcomed by all stakeholders and all the objectives are met.
It is always a combination of good, efficient people; and well defined processes that build a strong team to make any project successful. As a norm if your well established processes have significantly been successful in terms of project completion; then any deviations from those processes; or for that sake, any shortcuts, would invite troubles that might not be visible apparently over the carpet in the beginning.
Sometimes lack of processes mar efficiency of people and establishes them as useless entities even though they do not fall in that category. On the other hand, no efficient manager would like to compromise with his performance due to lack of processes and in that case would fight for establishing them first. Time and money are two prime tools of a project that have the power of converting it into a win or loss.
Both the prime factors are interrelated too. More time consumption in a project will always call for more expenses and hence decrease in overall margins and profits. The moment project management team becomes capable of identifying time consuming activities and factors behind them; a process enhancement journey begins thereupon. More enhancements of processes mean much sharpening of your swords that are being used in the battle of project management.
The much sharpened sword you have in your hand in the battle, the higher are your chances of winning the match. The same applies in project management too.
Project Management Office has to play three way role in the project. They have to ensure project timelines on one hand; interacting with customer on regular basis; and engaging all stakeholders throughout the project. If this synchronization does not undertaken by PMO, then probably there will be number of blasts during and after the project.
Three quick questions that come into mind in that regard are:
1. Is PMO active entity: PMO has to be active day in and day out during a project lifecycle, else wrong people would be driving the wrong train with wrong destination in mind. With so many wrongs, there are least chances of any project going to see the light of the day.
2. Does any top management member represent PMO: If PMO is not comprising of at least one of the top management member, probably it is going to get into trouble from all ends.
3. Is PMO driving the project: If it is not PMO that is driving the project, there are high chances of getting timelines getting skipped or delayed.
A project is like a large container of apples having rotten ones among them but hidden well in between the good ones; if it is not QCed well. Quality has a major role to play in determining the health of any project/product and to ascertain when the product is in right condition so that it can be released to the customer.
Three qucik questions that come to my mind for a QC head/ team are as below:
1. Do you Get into the shoe of your customer: As a quality team, your prime role, while QCing the product is to get into the shoe of your customer. If you don’t have that capability probably you might do a good quality check of look and feel but the lifeline of the product – its functionality; would get affected in a major way.
2. Are you Aware about the customer requirements: If you have gone through the customer requirements in detail; have clarified all your doubts cleared with the customer/ development team/ product and customer analysis team; it is very good. Otherwise you are hitting the goal in a total dark condition. You need to learn customer requirements well, complete in all aspects; get it into your blood, and then start analysis of the product built to cater to those requirements.
3. Are you engaged in the project right from begining: If you are partnering the project right from its inecption stage; it is great. Otherwise you have not checked all the compartments of the train but a sample testing.
The quick questions that I wanted to post for a project manager who is managing a project come to my mind as below:
1. Do you own the project: Are you merely acting as a project manager without owning the project. If that is the case then probably you will have enough number of things not moving as per expecations in the project and on top of that you would have enought numbrer of excuses for them not getting closed in time.
2. Do you really love your job: If you have become a project manager not by choice and merely by chance then probably you are going to get in thick soup sooner of later unless you start loving your profile thereby taking project timelines passionately.
3. Are you Proactive enough: Do you have an ability to foresee any showstoppers that are going to misalign your project or derail your smoothly running project.
If you have an answer for these three questions, it is good, at least you care for your project. If your answers to these questions are affirmative, probably you are going to win the game; else be ready for a big disaster at any moment of time.
This article is in continuation from the previous one…
4. Clustering: You have different flowers in your garden. It depends on you how you carve them, mould them, arrange them, and cluster them to prepare the best of the bouquet in the world. Generating a feeling of pride in your team for working with you on a project is something that can fetch the best of results for you in any kind of testing conditions.
5. Cognizant: If you respect conscious of each of your team members, probably your will be the luckiest person on this earth to get everybody’s respect from the bottom of their heart.
6. Common-sense: Apply common sense everywhere, in all aspects of your project, though it is not too common. The more you grow in life, the more you will need it. And it applies in reverse order too. The more you apply it in your work, the more chances you have to grow. Understand the nerve of customer in order to win over any kind of situation.
7. Commanding: You have to be demanding and commanding in order to get the best out of your teams and then give them the best in return.
8. Cameo: Remember that you are the hero for your team(s).
9. Cost Effective: You have to be cost effective if you want to increase profitability of your project. Walking the talk is the best way to achieve your mission.
10. Colourful: Wearing the same face expressions, presenting yourself in the same mood, talking to your team members in same manner all the time will make the journey dull and boring. Be vibrant.
Some people match with their job well. Some jobs match with the people who accept it. Doing something well is one thing, doing it in an extraordinary and simple manner is not everybody’d cup of tea. Very few project managers are there who vivaciously run the show with complete positive frame of mind with 360 degrees of integrity.
Ten Cs that can make any project manager a manager with an extra edge are as below:
1. Consistency: One time win cannot sustain a captain as captain. You have to have an urge to win all the time you get down on the field. You have to keep on achieving success not once but always. You can’t sit on your laurels. Failures are unavoidable at times, but learning from failures and let it not repeat again is the mark of wise men. Never repeat a mistake. Making a mistake and learning from it makes you wise. Making the same mistake again proves you fool in front of others, unarguably.
2. Clarity: Clarity of business, clarity in mind, clarity about your product and clarity about customer is very important without which you just can’t survive in the stream. If the picture is not clear to you, it can’t be expected from your team members to have a better understanding and clarity.
3. Cognitive: Perception of success is as important as success itself. If you can’t perceive success in advance, you won’t strive for success. You must have a passion for winning and getting a smile on every face of your team.
Very few projects get cleared off in terms of timely payments. Mostly the reason is that payment terms are not clearly defined in the beginning of a project due to which there remains a scope of ambiguity or confusion. When the execution party thinks it is the right time it is not the same on the other side.
A situation of conflict, confusion and ambiguity can be overcome if following points are taken care of:
1. Clear cut Project Requirements and Scope: A clear scope and set of requirements can help in proper closure of project as and when the scope under target is completed and the requirements are met.
2. Well Defined milestones earmarked for part payments: usually complete payment of the project is divided in different parts. Each part is associated with some success factor of the project, termed as a milestone. A milestone is something distinctly recognizable and ensures that project has reached a substantial progress mark.
3. Business Goals: The purpose and goals of business justifying the purpose of going for the project must be very clear. The benefits anticipated from the deployment of the project might not be drawn immediately during the deployment but the visibility of those must be there in the picture, with clearly measurable means.
4. Payment Terms: Wherever payment terms are connected to subjective achievements. The achievements that are associated with different instalments of payment during the project must be very objective, measurable and demonstrable.
5. Management Satisfaction: Payments are released or put on hold basically on the directions of top management. Top management go by the words of other key members in the frontline or first level management. It is important to understand management goals clearly, define them black and white, and achieve them, before applying for the payment.
Project management is not a film development studio that requires complete dark for a good quality of film to take place. Project management can neither be treated as a long tunnel seeking light of the day. Project management has to happen in daylight, in open and with complete team participation.
So if project management is something that cannot be done in an isolated manner, it means that there need to be intelligent experts who are proactive enough to control any volcano or black hole in the making during project lifecycle. No mistakes, no errors and no separate missions in a project must be the sole goal of all members of project team. Immediate addressable process must be in place to identify any gaps, fill it appropriately and finding out the learning out of it.
Basically a project progress must be visible clearly from all angles to all its stakeholders. Every step movement in the project must be marked on the project status chart updated in all manners. The status of project should cover tasks in hand, tasks which should have been completed, tasks to be completed with timelines, tasks that crossed their deadlines and tasks seeking extra attending to get completed as per their targets set by the team.
Any Project team would comprise of various level and expertise carrying people. Expertise is different to technical strength. There might be a non-technical project, for instance, but would require almost equivalent level of expertise as in otherwise. Depending on the nature of project, team composition is formed that initially need some fillers in terms of generating team sense, harmony, respect among each other in a newly started project.
With the help of fillers (which may be people as well as some intellectually designed exercises/ activities) any kind of gaps that start taking shape among team members, it can be ensured that those gaps vanish soon, are short-lived and do not form again. For any composition of project team there need to be a well identification of expertise of people forming the team besides having their functional expertise. Primarily there are three kind of people that govern and drive a project – Game Setters, Strategists and Warriors.
The number of people in Game Setters category would be very few. They would have a capability of delivering lot of ideas by saying just a few words. They don’t really need to be visible physically, but ensure their presence is being felt throughout the project journey. They are generally trendsetters, leaders, mentors and self-believers.
Strategists are people larger in number and are strong in mind. They strategize winning tactics on the basis of the Game decided by Game Setters.
Warriors are the executioners. They are most front runners, visible, and seemingly the people who are doing most of the work.
Project lifecycle consists of many stages. It starts from Project initiation phase. Although project initiation phase is the formal beginning of a project, actual project related initiations start well prior to that which gradually lead to this stage.
Though every stage of project management has a meaning and importance, it is the Execution Phase that if starts in time, goes well meeting all its milestones within stipulated timeframe and budgets, gets least of jolts and completes its journey successfully; adds a lot of value to overall project success. Every project execution is a new journey, and a new learning. Usually if an already faced issues in any other project, repeats in the current project, it is easy to overcome it, due to already gained learning. But more important is how you manage a first time faced problem.
A well-defined process to face a new problem, document the learning out of it, and making it a repository for other teams to refer to is always helpful. Some kind of benchmarking is important in setting targets for a complete lifecycle of new and old problems, as and when they arise in any ongoing project, plays an important role in PEM (Project Execution Management).
Tackling an existing problem does not ensure that there will be no further issues in the project. Problems come and go, but need to be addressed in a better manner every time as compared to its earlier occurrence if it is a repeated problem. Logically frequent occurring of repeated problems in a project lifecycle if not at all a good sign for any kind of project.
There are various means of understanding your level of comfort in project management. You might have done good in managing a single project well in time and budget. You might have managed multiple projects in your career but one at a time. So far so good! But are you good and comfortable in managing multiple projects at the same time running at different pace and different stages.
Are you comfortable in the midst of your triangle where you have your management, your customer and your team at the three corners of the triangle? Imagine yourself tied with elastic strings and the three corners having the control of those strings, your most successful factor lies in not letting your balance go off at any moment of time, and not let any string break off, at the same time.
Balancing is a very important aspect in project management. You need to be a juggler while managing a project or a number of projects.
Project Management itself is a matter of quality. If the methodology is not quality prone, it is going to result into mishaps time to time. Yes, one way of getting 100% success in your projects is simply not to have any targets in sight. Let it go as it tends to go, without putting any extra expectations in it. Otherwise if you are part of current economic crisis hovering around the world; then you must be having tight budgets and timelines to complete your targets and hence you need to inculcate high level of quality levels in managing your projects.
Five areas where you really need to have quality could be:
1. Customer Dealing: If you know how to identify your prospective customer, covert the deal into a long term customer, then you are a winner.
2. Product Range: If you have quality product in your pocket, your efforts are decreased in getting instant nod from your customer to sign a deal.
3. Customer Requirements: You must understand what customer expectations are when the deal is being signed. Customer might not able to tell you all, but you have to have your quality measures to understand its needs.
4. Team Building: There need to be an appropriate team that faces the customer. Each team members must understand the customized manner in which a customer needs to be managed.
5. Product Sizing: Customer might have agreed for a sample product of different size but his actual needs might not fit well in this size. You need to understand the right size of product (be it a service) that will cater to all needs of the customer.
Is it that project management is denounced so often; it has become a hyped or rather an overhyped subject in the market. Does it require so many consultants, so much matter and so many companies working to correct your ways of managing projects. As a matter of fact, are those consultants, portals and companies working towards improving your project management style, they having a great level of management of their own projects?
There are two ways of learning and specializing in any field of life and profession. One is to take up any challenges and then learn by means of facing them. Second way is to learn from some experts beforehand jumping into a special task. Former would be a painful process and would also be quite time consuming.
But if everything goes well, it is the first way listed above that will produce the gem of an expert. Second way will no doubt be lesser painful and it will also product an expert in return, but those experts produced by means of method 2 will be limited to their prescribed path only and any expertise required in areas away from their path will lead to a demand of another training from expert. These guys might be lesser prone to take up new and unknown challenges as compared to the first ones.
But does it mean that project management experts keep putting their hands on new techniques so frequently so as to get the flavour of them and analyse the pros and cons out of those techniques so as to find out the best of the deal.