Sunday, June 29, 2008

The Powers of a Leader - Missing Sixth Power?

According to PMBOK, a leader wields five types of power. Generally believed definition of *power* is the ability to influence others to do what you want them to do. I tend to think otherwise that *power* is not always to influence others to do what "you want them to do" but to influence others to do things right, whether your way or their way, which ever makes most appropriate sense as the situation demands. And today's blog is inspired more from this thought process.

Five powers are defined in PMBOK as
  1. Legitimate or Formal - power comes about as a result of the leader’s position. This position is as a result of the buy-in from executives and enabling the leader to call the shots.
  2. Reward - is the ability to grant bonuses or incentive awards for a job well done. This ability depends on the position of the leader.
  3. Coercive or Penalty - is the ability reverse of the previous one and also depends on the position of the leader.
  4. Expert - is the *best* form of power in which leader leads the team with his knowledge whether technical or functional and
  5. Referent - power comes when the team members identify themselves more with the leader and have respect.
I would like to add the *missing* power of motivator to the list. Probably motivator can be included in the "Rewards" or "Experts" but I feel that this should be segregated and defined as a separate power wielded by the leader.

Motivation is the single most important ability emerging for a leader in the ever changing world of change. Leadership is all about change management by leading the team from the realities of today to the dream of tomorrow. Motivating is not the ability to influence others to do what you want them to do but what others ought to do. There is a thin line..isn't so?

Saturday, June 28, 2008

Chinese Garden, Portland

These snaps are of Portland Chinese Garden. Garden includes nine buildings and more than 500 species of plants and a lake in the middle. The garden, which is called Lan Su Yuan in Chinese means "Portland Suzhou Garden", also known as the "Garden of Awakening Orchids". There are 5 Elements in a Chinese Garden, Stone, Water, Plants, Architecture and Literature. These 5 Elements are used in the Portland Chinese Gardens in order to balance nature with humanity. The Gardens take up one city block in Portland’s Chinatown, making this the largest Classical Chinese Garden outside of China. Last two snaps shows the view of Portland downtown and bridges.

Thursday, June 26, 2008

San Diego, California

These snaps are of San Diego, second largest city California. It is bordered by Mexico, the Pacific Ocean, the Anza-Borrego Desert and the Laguna Mountains. Places to visit includes Balboa Park, San Diego Zoo , SeaWorld San Diego & Gray Whale Watching. A stay in Del Coronado (First Snap), just across the San Diego Bay. Hotel del Coronado is considered one of America's most beautiful beach resorts

Sunday, June 22, 2008

Silicon Valley, a bird's eye view

These snaps are taken en route from San Jose, California to Portland, Oregon. Snaps show a bird's eye view of Silicon Valley taken from the flight. The sixth snap is of Crater Lake, located in Southern Oregon on the crest of the Cascade Mountain range, 100 miles (160 km) east of the Pacific Ocean. It lies inside a caldera, or volcanic basin, created when the 12,000 foot (3,660 meter) high Mount Mazama collapsed 7,700 years ago following a large eruption. And in the last snaps, one case see The Columbia River Gorge, an 80-mile geologic wonder that forms the border between northern Oregon and southern Washington, is proof of Nature's unbridled strength.

Certified Scrum Master

This post is about Certified Scrum Master. Agile project management is as radically different from traditional project management as agile processes are different from traditional methodologies. Rather than plan, instruct and direct, the agile project manager facilitates, coaches and leads. This person is called a ScrumMaster in the Scrum agile process to denote the difference and remind the person filling this role of the new responsibilities.Accepted participants learn how to be a ScrumMaster and how to make a development team, a project, or an organization agile. Exercises, case studies, and examples used to bring home the realization of how to be a ScrumMaster instead of a project manager.
Scrum Certification is about attending a two-day course, which gives participants hands-on experience using Scrum. Participants gain practical experience working with Scrum tools and activities such as the product backlog, sprint backlog, daily Scrum meetings, sprint planning meeting, and burndown charts.
Following successful completion of the course, each participant will be designated Certified ScrumMaster. This certification includes a one-year membership in the Scrum Alliance, where additional ScrumMaster-only material and information are available.

Scrum References

Following are some of the Scrum References
  1. Agile Project Management with Scrum (Ken Schwaber)
  2. The Scrum Papers (Jeff Sutherland)
  3. Scrum and XP from the Trenches

Scrum Resources

Following are some of the resources for Scrum
  1. Scrum Alliance
  2. Mountain Goat
  3. Implementing Scrum
  4. Control Chaos
  5. Origins of Scrum
  6. Scrum Users [Yahoo Group]
  7. Scrum Forum

Scrum in a nut shell

Scrum is an Agile process or framework for managing Agile projects. It is a project management process, certainly not a methodology, as that would be too heavy. Scrum is an iterative, incremental framework. Scrum structures product development in cycles of work called Sprints, iterations of work which are typically 1-4 weeks in length, and which take place one after the other.
Scrum is one of several Agile methods for developing and deploying software, although it may be used for non-software initiatives whenever people need to work together to achieve a common goal. The primary objective of Agile development is to deliver value early in the Project Lifecycle based upon customer and market demands. The ability to deliver value early and often, yet readily adapting to change, is considered to be a major contributor in making Agile Development one of the more rapidly growing trends in technology.
Scrum is a method for project management that is becoming increasingly more common
in the software industry. Small teams consisting of a maximum 6-8 people divide their
work into “mini projects” that have a duration of about one month during which a limited
number of detailed tasks are solved. Where traditional methods focus on staying on
track, Scrum is aimed at – like other agile methods - delivering business value

Scrum Basics
Scrum is an iterative, incremental framework.

Scrum is not a process – rather, it’s a framework which provides a lot of visibility to the team, and a mechanism that allows them to “inspect and adapt” accordingly

Scrum structures product development in cycles of work called Sprints, iterations of work which are typically 1-4 weeks in length, and which take place one after the other.

The Sprints are of fixed duration –they end on a specific date whether the work has been completed or not, and are never extended.

At the beginning of each Sprint, a cross-functional team selects items from a prioritized list of requirements, and commits to complete them by the end of the Sprint; during the Sprint, the deliverable does not change.

Each work day, the team gathers briefly to report to each other on progress, and update simple charts that orient them to the work remaining.

At the end of the Sprint, the team demonstrates what they have built, and gets feedback which can then be incorporated in the next Sprint.

Scrum emphasizes producing working product at the end of the Sprint is really “done”; in the case of software, this means code that is fully tested and potentially shippable

Scrum Values
  1. Openness
  2. Focus
  3. Commitment
  4. Courage
  5. Respect and
  6. Visibility
Scrum forces teams to take ownership of the success or failure of their project. In traditional waterfall methodology, its more often than not, a project manager who is responsible for project's success or failure.

What is Agile Software Development

According to the definition in Wiki
Agile software development is a conceptual framework for software engineering that promotes development iterations throughout the life-cycle of the project
Agile is a set of processes for software development, that uses iterative, incremental techniques and relies on self organizing, self managing, cross functional teams.
Software developed during one unit of time is referred to as an iteration, which may last from one to four weeks. Each iteration is an entire software project: including planning, requirements analysis, design, coding, testing, and documentation. An iteration may not add enough functionality to warrant releasing the product to market but the goal is to have an available release (without bugs) at the end of each iteration. At the end of each iteration, the team re-evaluates project priorities. Agile methods emphasize working software as the primary measure of progress. From a product perspective, agile methods are more suitable when requirements are emergent and rapidly changing.

Companies are moving to agile processes because the technology marketplace demands its suppliers be highly responsive to change. In order to compete in the global economy, companies must move quickly to provide solutions to a client base that has more and more choices available to them. Agile approaches promise faster delivery of working code, higher quality, and an engaged development team that can deliver on its commitments. Traditional waterfall, with its long phases and heavy investment in “big up-front design,” lacks the flexibility to swiftly respond to the market.

Agile is a different way to work, one that requires greater communication and cooperation from its participants and greater leadership from its managers.

10 Key Principles Of Agile Software Development
  1. Active user involvement is imperative
  2. The team must be empowered to make decisions
  3. Requirements evolve but the timescale is fixed
  4. Capture requirements at a high level; lightweight & visual
  5. Develop small, incremental releases and iterate
  6. Focus on frequent delivery of products
  7. Complete each feature before moving on to the next
  8. Apply the 80/20 rule
  9. Testing is integrated throughout the project lifecycle – test early and often
  10. A collaborative & cooperative approach between all stakeholders is essential
From an organizational perspective, the suitability can be assessed by examining three key dimensions of an organization: culture, people, and communication.

In relation to these areas a number of key success factors have been identified (Cohen et al.)
The culture of the organization must be supportive of negotiation
  1. People must be trusted
  2. Fewer staff, with higher levels of competency
  3. Organizations must live with the decisions developers make
  4. Organizations need to have an environment that facilitates rapid communication between team members
Principles behind agile methods — The Agile Manifesto
Some of the principles behind the Agile Manifesto are:
  1. Customer satisfaction by rapid, continuous delivery of useful software
  2. Working software is delivered frequently (weeks rather than months)
  3. Working software is the principal measure of progress
  4. Even late changes in requirements are welcomed
  5. Close, daily cooperation between business people and developers
  6. Face-to-face conversation is the best form of communication
  7. Projects are built around motivated individuals, who should be trusted
  8. Continuous attention to technical excellence and good design
  9. Simplicity
  10. Self-organizing teams
  11. Regular adaptation to changing circumstances
Agile Vs Tradition Methodology
Both agile and traditional development recognize the triple constraint: cost, schedule, and scope. But whereas traditional development advocates locking down the requirements so that schedule and cost can be estimated, the agile approach says that scope is always changing and therefore schedule and cost should be fixed. This way projects don’t become death marches, and the product is developed in a fashion where it’s in a perpetual releasable stat
Agile means completely new environment where the team makes decisions instead of being told what to do. It means more individual responsibility for team members, and more facilitation skills required for the project manager

Oregon Garden

These snaps are of Oregon Garden taken in the month of June 2008. Oregon Garden is an 80 acre botanical garden and tourist attraction in Silverton, Oregon. Oregon Garden showcases thousands of plants in more than twenty colorful specialty gardens. The last snap is of 400-year-old, 100-foot (30 m) Signature Oak, which is one of Oregon's Heritage Trees.