Tuesday, June 16, 2009

Evolution of Team And In The Making True leaders

Introduction
In information technology industry, formation of team and the team work is of great importance like any other industry it does. The only aspect that differs in IT industry is the fact that it is mostly a client service industry so the customer satisfaction is always a priority. This indeed helps to fetch more work from client. A set of people when come together to achieve common goal is called as team. If we look back for a while and ponder what differentiate team from group. Apparently team is working towards common objective and group always thrives towards satisfying individual needs and glory.

What makes a team?

Team willing to work for ultimate goal and working together with diversified skill is what team is. Team has to depict the true picture of cohesive understanding, empathic listening qualities, Co-operation among members and thus combining their unique strength to ultimate goal at end. In a team, hierarchical and sensible reporting structure makes lot of sense and meaning to overall foundation of team. Most likely said, team requires variation in thought process, open to discussion and appreciate ones work whenever requires. Moreover teamwork needs distribution of knowledge evenly in such a manner that it creates synergy of continuous productivity for customer satisfaction.

How team works?

There are at least two scenarios in real world the ways the team works. The twofold is Push and Pull method. In Push, the ultimate command and force of orders are actually comes from senior heads to lower heads whereas in other method that is ‘Pull’ method ,the team itself propel themselves to achieve common objective and goal. In ‘Pull’ the order and willingness to work comes from the lower end resource and eventually appreciated by senior heads. In current scenario the management most likely opts for ‘Pull’ method as it works in favor of employee and thereby creates a favorable environment for team to excel at their work. The encumbrance and shortcomings are the two enemies to dismantle a team into group. As mentioned, a group works for their vested interest and hence detrimental to team progress in future.

What is Teamwork?
A setting expectation at the start of making new team is the base for forming a team. Later on, training and knowledge transition on functional, technical and process are the necessary entities for creating synergy to execute the planned task. A team member having good communication skill helps in creating a good client relationship. A good communication skill helps in understanding and interpreting scope of requirement to final product. A good communication is impetus to the growth of team thus eliminating early problems, issues and risk. This specifically helps in mitigating risk and aligns the contingencies ratio at its reasonable threshold. Last but not the least, to devise a good organizing skill is also important for teamwork. Each one at its best has to manage their time while executing tasks and prioritize activity as and when required.

How Team is made?
Team is usually the lowest level project organization chart and falls under the lowest base of pyramid. Forming a best team is a challenge and requires a critical factor to consider while selecting a team member. This critical factor is basically depends upon skills and placing skills into proper roles and responsibility is essential. Mapping skills in right roles and responsibility is crucial. Overseeing this aspect of teambuilding endanger the overall formation of team. The team selection process evolves around the four types of skills as they are specialized skill, generalized skill, technical skill and team behavioral skill. The other factor of team selection process is to consider cost or bill code of resource as this may drastically affect the budget in client facing product. To adjust skill and compromise on cost may impact quality at the end. To chose between these factors require sensible approach and require considerable amount of time to churn out the right candidate for right roles and responsibility. Apparently the most effective from above all is the factor of hierarchy level within team that decides the delegation responsibility, reporting mechanism; facilitate mentoring down the level and timely balanced team in terms of task execution.

How Leader is born?
Once the team is formed the crux of the problem is to identify the right leader. The leader is the one who guide and who always makes a constant effort to bring team as a team whenever requires. One needs to understand the difference between the effective leadership and efficient leadership. Effective leader does right things first whereas efficient leadership believes in doing right things right. One, who coaches, controls, coordinates and counsels the team is actually a leader in true sense. To posses these characteristics behavior is what called right leader having right leadership skill.

The leaders constantly make an effort to build and refine team at every walk of life. They interpret the project plan to the team and thereby creates team plan to accomplish the task within permissible budget and without schedule overrun and slippage. They even delegate the right job to right resource ensuring quality product. They checkpoint, review, validate and verify every important activity that is going to be a milestone. They should have empathic listening quality .This is essential and plays a significant role while given feedback and assessing the performance of an individual. The genuine leader follows a golden rule of leadership style. They know when to provide direction; when to control, when to delegate and when to provide support to the team. The leader understands and follows these four leadership window.

Tuesday, January 13, 2009

Testing ! Not My Cup Of Tea

Currently I am developing a system using SDLC V-Model. I learned the importance of having proper Test process in place at each phase SDLC. As a developer we tried our level best to deliver the quality and high performance system but sometimes we fail to fulfill the client's expectation. The reason being not having proper planning of 'Test Process' setup during phases of SDLC.

Sometimes we feel the one who develop the system can very well do the testing and can detect the defects at earlier stage. But this not true,developer can never be a good tester.It always requires a 'Third Eye -Critical Reviewer' to look at things at different perspective. The Developer claim his/her piece of module works fine and the Tester claims it is a defect because it is not working .This fight is endless. The mentality differs at each level .The perspective ,views and thought process is different at each level. Developer thinks tightly to the executional model and tester inclined more towards domain and functional knowledge. It is good practice to inherit the better understanding of domain and to cast it properly to the real time system.So I eventually realise testing won't be my cup of tea.

One need to understand the product quality in terms of budget and performance. There can be two testing aspects one is functional testing and non functional testing. The functional testing is done during user acceptance testing before delivered to production. The non functional testing stands for quality related to performance,business compliant standard and match with competetive market.
Below is the summary matrix .

Highlights Testing Refresher:






















Testing

Test Cases Introduced At Phase.

Actor

Environment

Description

Unit Testing/Component Testing

Development/Built Phase

Developer
Developer's Local machine
Testing done for one set of functionality. For E.g. Add operation in Gridview.

Technically:This can be a library.

Integration Testing/Assembly Testing

Design Phase

Testing Team
Application deployed on Development Server
Testing done for integrated set of component.For E.g Business Work flow between components.(Raise Request-Assign Request-approve Request-Close request) .

Technically: This can be one project solution having reference of all project in it.

Product Testing

Requirement Phase

Testing Team
Application deployed on Staging Server(Simulated Production Server)This testing verifies the tracebility and mapping of requirement and system acceptance by end user.