Thursday, April 26, 2012

PMI-PMP Preparation || What are Project Stakeholders?

People/Group  which either INFLUENCE OR INVOLVE OR gets IMPACTED positively of negatively by a Project. Some of the key stakeholder of any project can be - Project Manager, Customer, Performing Organization, Project Team, Project Management team, sponsor, PMO, vendors, government etc.


Stakeholder either has any INFLUENCE on a project OR INVOLVED in some way OR IMPACTED by a project. 


- Influence
- Involved
- Impacted


Identification of right stakeholders is extrenely important for a Project Manager.

Wednesday, April 25, 2012

PMI-PMP Preparation || How to differenciate between Portfolios, Programs and projects? (Project Endeavors) - PART2

So far, we have discussed Projects, Operations, Programs and Portfolios individually and here, we are going to discuss about basic differences between these. Here we shall discuss on the basis of different basic parameters -

SCOPE :-

Project : Well Defined Scope.
Program : More attuned towards benefits.
Portfolio : Frequently changes with change in Strategy.

Planning :-

Project : 'Rolling Wave' planning
Program : Plan for a Program, which guides Project planning
Portfolio : Top level plan which of-course is main benchmark for all plans.

Management:-

Project : Project Manager, who mainly concentrate on one Project at any point of time
Program : Takes care of multiple Projects of similar types
Portfolio : Takes care of overall Portfolio of various projects/programs

Change Control:-

Project : Keep changes minimum
Program : Open to changes
Portfolio : Market driven changes are always welcome

Delivery Style :-

Project : Task oriented
Program : Benefit Realization
Portfolio : Value Oriented

Monitoring :-

Project : Project Objective related
Program : benefit related
Portfolio : Value indicator or overall performance
 

Tuesday, April 24, 2012

PMI-PMP Preparation || How to differenciate between Portfolios, Programs and projects? (Project Endeavors)

Before we start discussing about Portfolios and Programs, I would recommend to check about Projects and Operations @ HERE

At top level, Program is basically a group of Projects managed in a coordinated way to achieve synergy which is  not available from managing those Projects individually. 


At the same time Portfolio is group of Projects and Programs and associated operations to facilitate effective management to achieve strategic objectives. Portfolios are designed by main thoughts around business proposition and strategic coherence. 

Program Management at top level take cares of -

- Managing inter-dependencies between different projects and operations. 
- Resolving resource constraints, aligning strategic directions, resolving issues and change management stuff.
- Capability enhancement and achieving end result 
- Program Managers are more open to changes as compared to Project Managers. 

 Few things about Portfolios -

- Portfolios are directly mapped to strategic goals of any organization.
 - Portfolio management is mainly driven by business propositions, market demand and need to maximize  vlue of Organization.
- Guiding investments to streamline organizational objectives.  

Friday, April 6, 2012

Some basic things about White-Box Testing and relevant stuff !

Let's start with basic understanding of White Box Testing first -

White box testing is a method to test the functionality of the code by passing parameters within the code itself.
White box testing involves looking at the structure of the code. When we know the internal structure of a product, tests can be conducted to ensure that the internal operations performed according to the specification. And all internal components have been adequately exercised.
White box testing is also called Structural testing or Glass box testing.


How to approach for White Box Test Planning and Execution :-

In general prerequisites for white box testing are the same as for black box testing. The only difference is the access to the application source code. The white box tester should ask for detailed requirement, functional specifications, high-level design documents, detailed design documents and source code. The white box QA Engineer would analyze the source code and prepare test cases for testing the functionality to ensure that the code is behaving according with the requirements and specifications.


Biggest Limitation of White-Box Testing

Test-Coverage. With most of the White Box Testing techniques,  it's hard to achieve reasonable program paths and you always need to plan testing appropriate workflows.

PROS and CONS of White Box Testing and Black Box Testing.

White Box testing:

Advantages
1) more code coverage
2) more error can be found earlier during the development process.
3) The whitebox testing could start in the early phase along with software development.
4) Just a main module from developer is enough to start to test by using stubs.
5) helps giving more stable build

Disadvantage:
1) more time consuming to develop test cases as it involves development effort
2)often new architecture need to be designed to suit your testing needs.
3) Testers need to be involved in requirements , software design document review also.

Black Box Testing:

Advantages:
1) testers need not know the softwrae design of the SUT
2) requirements are enough to develop test cases
3) Black box tetsing is usually done manual except
 
Disadvantages:
1) more time required to test each test case and verification results
2) less code coverage
3) some scenarios can be eliminated due to human error or ignorance of the system.


Cyclomatic complexity is a software metric which measures the number of linearly independent paths through a program source code.

V(G) = E-N+2

where, E=No. of edges, N=No. of nodes

Tuesday, April 3, 2012

Quick Interview Questions on Test Automation || Basics of Software Testing Automation


# Top level scenarios which you would want to Automate in your Software Development Life-cycle?

1. Sanity tests, which is repeated on every build.

2. Stress/Load tests where we simulate a large no of users, which is manually impossible

3. Regression tests, which are usually executed after every code change)

# Some standard practices for writing Automation Scripts :-

1. Proper code guiding standards

2. Standard format for defining functions, exception handler etc

3. Comments for functions or various parts of the Test-Scripts.

4. Proper error-handling mechanisms

5. The appropriate synchronization techniques

6. Proper framework developed to built scripts