Tuesday, August 30, 2011

Scenarios and Use Cases

In the engineering, technology and system development world, a model is anything used in any way to represent something. Some models are physical objects, for instance, a toy model which may be assembled, and may even be made to work like the object it represents. Other models are conceptual models, and are used to represent concepts and/or processes which are part of a system.  Each of these types of model is used to help us know and understand the subject matter we are trying to represent.

There are a number of visual and descriptive techniques used by software engineers and business analysts to model the “as is” and “to be” nature of the system they are analyzing.  Over the course of my posts here on this blog, I’ll delve into a number of these popular modeling techniques. 

Scenario and Use Cases

Scenarios and use cases are written to describe how an actor interacts with a solution to accomplish one or more of that actor’s goals, or to respond to an event.

A Scenario is generally understood to describe just one way that an actor can accomplish a particular goal, while a use case describes all the possible outcomes of an attempt to accomplish a particular goal that the solution will support.  Scenarios are written as a series of steps performed by actors or by the solution that enable an actor to achieve a goal.

A use case describes several scenarios in the form of primary and alternate flows. The primary or basic flow represents the simplest way to accomplish the goal of the use case. Special circumstances and exceptions that result in a failure to complete the goal of the use case are documented in alternate flows.

Scenarios and use cases involve:


  1. Name - the scenario or use case must have a unique name within the project, and should describe which goal or event it will deal with, and generally includes a verb (describing the action taken by the actor) and a noun (describing what is being done or the target of the action)
  2. Actor - any person, system, or event external to the system under design that interacts with that system through a use case
  3. Pre-conditions - any fact that the solution can assume to be true when the use case begins
  4. Flow of events - Describes what the actor and the system do during the execution of the scenario or use case
  5. Post-conditions - Any fact that must be true when the use case is complete
  6. Associations - relationships between actors and use cases are called associations

Monday, August 22, 2011

10 Characteristics of Success Project Leaders


Not long ago the Project Management Institute PMI © conducted a survey to identify the top 10 characteristics of successful project leaders. Below is a summary of those findings.


Inspires a Shared Vision


An effective project leader is often described as having a vision of where to go and the ability to articulate it. They empower people to experience the vision on their own, and to envision their future as part of the vision for the organization.


Good Communicator


The ability to communicate with people across the spectrum is always one of the essential qualities of any successful project manager. Project leadership calls for clear communication about goals, performance, responsibility and expectations.


Integrity


Project managers must always remember that actions speak louder than words. Good leadership requires commitment to, and demonstration of, ethical practices.


Enthusiasm


People will follow others who have a unique perspective on things. We more committed to leaders who have a positive, “can-do” attitude. Enthusiastic leaders are committed to their goals and express this commitment through optimism.


Empathy


The ability to understand and share the feelings of others is an important characteristic of any successful project leader. Project leaders cannot be looked upon simply as rigid task masters, whose only goal is to complete the project at all costs. They must have the ability to understand and empathize with those whom they lead.


Competence


We must believe that the person we’re following knows what he or she is doing. This not only goes for technical expertise, but is further described as the ability to successfully lead a group of people towards a stated goal.


Ability to Delegate


Trust is a fundamental element in a relationship between a project leader and his/her team. One way to demonstrate this trust is to allow others to participate and take on added responsibility.


Calm, Cool and Collected


Since we don’t live in a perfect world, very few projects are delivered under budget and with no major problems or obstacles. Therefore, it is essential that a project leader takes problems in stride, with the ability to turn a problem into an opportunity.


Team Building Skills


In order for a team to progress from a group of strangers to a single cohesive unit, the leader must understand the process and dynamics required for this transformation.


Problem Solving Ability


Although an effective leader is said to share problem-solving responsibilities with the team, we expect our project leaders to have excellent problem-solving skills themselves.

Tuesday, August 16, 2011

Corporate Performance Management: Budgets

A budget is an estimate of income and expenses for a set period of time. They are operational and financial forecasting tools used to attempt to "predict" company-wide performance over a specified time frame. Budgets are an integral part of any successful business accounting regimen. Their intention is to create a plan of action for managers to coordinate the production, sales and/or service of the company’s performance, and then measure that plan against its actual performance. In other words, a budget is a tool that is used to help make business decisions.

There are 3 main types of budgets employed by most companies... 
  1. The static budget is a budget that is based on projected levels of activity (planned outputs and inputs), developed prior to the start of the period. It's expressed as a set of budgeted financial statements for the selected time frame. The company uses it as an operating plan to carry out management’s plans to achieve company-wide goals and objectives. In summarizing management’s operating and financial plans for the upcoming period, it reflects the impact of the operating decisions and financing decisions to be made during the coming period. As the name "static" implies, it is the original budget for the period, not updated as information about the period becomes known.
  2. While the static budget remains fixed and unchanged, the flexible budget uses figures that are based on actual output. This type of budget is prepared by adjusting the volume values (i.e. sales) in static budget to match the actual level of output derived at the end of the budget period. Since variances due to volume variations are expected, it does not make much sense to continue reporting them on the variance report as causes of variances. Flexible budgets help plan for potential changes in production costs or sales volume, and allow for businesses to respond quickly to changes and maximize profits by seizing the opportunity. Flexible budgets also provide for a greater degree of management control, for by eliminating sales volume as a source of variance, any variances highlight other causative factors.
  3. A project budget is an entirely different type of budget than that of static and flexible budgets. While they are also used to forecast revenues and/or expenses, they do so for specific initiatives or projects, rather than operational activities. Examples of projects that might be budgeted for are: 1) capital budgeting projects - such as the purchase of a new machine or construction of a new plant, 2) the development and testing of a new product, 3) acquisition of another company, 4) a marketing plan for entering a new geographical area, 4) or a budget for a long-term contract. Projects must be planned over their entire life spans and should be viewed as special commitments. Their budgeted amounts must be integrated into the static budget of the company for the relevant period or periods.

Monday, August 15, 2011

Corporate Performance Management: Benchmarking

In an earlier post I talked about the concept of the balanced scorecard, which if deployed correctly, will enable a company to better evaluate its’ corporate performance.  Please review this post to re-familiarize yourself with this concept, because the very first thing that a company must do in this regard is to identify the critical success factors for its business and the processes it needs to benchmark

Critical success factors are the aspects of the company’s performance that are essential to its competitive advantage. Each company’s critical success factors depend upon the type of competition it faces. One of the best methods companies use to develop these distinctive competencies that lead to customer satisfaction and competitive advantage is to identify and adopt best practices. This can be accomplished through benchmarking.

A benchmark is a standard of performance; and benchmarking is the process of measuring the organization against the products, practices and services of some of its most efficient global competitors. These measurements are called targets, and in this way, companies learn how their competitors perform and, more importantly, the business processes that explain why these firms are successful.  Dimensions typically measured are quality, time and cost.  

The company can use these targets as a model for its own operations (also called best practices). Through the application of research and software analysis tools, companies undertake best practice analysis to cut costs, boost output, and achieve their strategic business goals and objectives. This process continuously strives to imitate the performance of the best companies in the world, and through meeting these higher standards, the organization may be able to create a competitive advantage over its marketplace competitors. 

Best practice analysis involves investigating and documenting what the best practices are for the processes that are used in performing the firm’s critical success factor activities. Once all the critical success factors and best practices have been identified, the final step is to set up a system for measuring those factors and practices.  As has been mentioned in my earlier post, one of the most effective systems at measuring these best practices is the Balanced Scorecard.

Tuesday, August 9, 2011

Business Analysis: The Agile Approach

In years past, the business analysis discipline has been largely associated with the traditional project management (waterfall) approach, whereby the needs of the customer where gleaned by the business analyst well in advance of solution design and development. Traditional (waterfall) approaches are predicated on defining everything up front, with the mindset that the customer can definitively know all their needs and wants (i.e. scope) from the start, and that those requirements will not change during the project implementation. Of course, the world does not remain fixed while a project team is busy; the business needs of the customer can oftentimes vary. Traditional (waterfall) approaches can be considered “plan-driven”, whereas agile approaches are looked at as a “change-driven” approach.

Plan Driven

This approach to analyzing & delivering business requirements is driven by the need for predictability and delivery according to plan. It is effective in cases where the outcomes of a project can be perfectly articulated, requirements can be fully defined and remains fixed during the project, and project execution has to be managed as one delivery rather than incrementally.

Change Driven

This approach is driven by the need for adaptability and delivery according to business value. It is effective in cases where outcomes are not explicitly articulated up front, there are changing customer preferences, and project execution is more focused on time-to-market.

On projects that follow the “change-driven” approach, there is far more emphasis for the business analyst to value:

  • Individuals and interaction over process and tools - business analysis activities occur througout the life of the project
  • Working software over comprehensive documentation – focus is on a working, viable solution
  • Customer collaboration over contract negotiation – the relationship with the customer is on collaboration and insight, not sign-offs between phases
  • Responding to change over following a plan – gathering feedback on deliverables earlier so as to apply that feedback to later releases

Project Management: Traditional vs. Agile Approach

These days there are a number of project management approaches being employed by IT project managers and business analysts. Approaches can range from the traditional (waterfall) method, to Critical Chain project management and Agile, all the way to more Extreme project management approaches. Each of these methodologies has their strengths and weaknesses, and the approach chosen is often a reflection of the type of implementation needs required by the project team. Of all of these competing methodologies, the two that are most widely used in practice today are the Traditional approach and the Agile approach.

Traditional Project Management

This project management methodology is a linear model and is the simplest and most intuitive of all the major models in the project management landscape. It identifies a sequence of steps to be completed, and attempts to complete each step in a specified order, with each step needing to be complete before the next step begins. The sequence of steps is:
  1. Project Initiation
  2. Project Planning and Design
  3. Project Execution
  4. Project Monitoring and Controlling
  5. Project Completion
Strengths: The entire project is scoped out and scheduled at the beginning of the project, resource requirements are known from the start, provides a methodical and structured approach, team members don’t have to be co-located
Weaknesses: Does not accommodate change very well, requires complete and detailed plans early in the project, extends the time before any deliverables are produced, must follow a rigid sequence of processes

Agile Project Management

This project management methodology is a non-linear model that bases its’ approach on collaboration, with a series of relatively small tasks conceived and implemented in an adaptive manner, rather than as a completely pre-planned process. Instead of attempting to plan all aspects of an entire project at the very beginning, the project team evaluates a prioritized list of high level requirements – sometimes referred to as a “product backlog” – and implements a set of features from this list. Iterations of planning, execution and delivery of a feature set – sometimes referred to as “sprints” – are short in duration (usually 2 to 4 weeks).

Strengths: the client can review the current partial solution for suggested improvements, scope changes can be processed between iterations, you can adapt to changing business conditions
Weaknesses: it requires a more actively involved client, it requires co-located teams, the final solution cannot be defined at the start of the project

Wednesday, August 3, 2011

Corporate Performance Management: The Balanced Scorecard

The trend today in Corporate Performance Management today is to use a more encompassing method of evaluation and include not only financial measures, but also non-financial measures by looking at the overall contribution to the achievement of company goals. One methodology that is popular today is called a balanced scorecard.

The balanced scorecard is a strategic management tool which developed as a response to problems caused by evaluating managers only on the quarterly or annual financial performance of their business units. If managers are evaluated and rewarded for one thing (short-term financial performance), it results in their focus on that one thing, often to the detriment of other dimensions which are equally, if not more, important for improved long-term financial performance.

The balanced scorecard encourages managers to focus on elements of long-term success instead of on short-term financial performance by rewarding them for improvements in those elements of long-term success.

Each company needs to develop its own set of metrics and means to assess continual improvement, and they will probably be different for different divisions and departments within the same company. However, the metrics fall into four broad categories of performance indicators, known as perspectives.

The four perspectives are:

  1. Financial perspective, focusing on profitability. Financial performance is still a priority, but it is recognized that good long-term financial performance will not be achieved if goals in the other categories are not attained.
  2. Customer perspective. Developing the company’s customer perspective involves identifying the market segment(s) it wants to target and then measuring its success in those segments. Customer satisfaction is another vital part of the customer perspective, because if customers are not satisfied, they will take their business elsewhere. And without customers, a business has no business.
  3. Internal business process perspective, which includes innovation in products and services, innovations and improvements in operations, and customer service/support after the sale.
  4. Innovation and learning, which emphasizes an organizational culture that supports employee innovation, growth and development. In today’s technological environment, employees need to be continuously updating their skills.
It is important for the business to select just a few critical measures that are most relevant to its specific business strategy and then to track them rigorously, rather than using many different measurements. These critical measures are called critical success factors. They are measures of the aspects of the company’s performance that are essential to its competitive advantage and therefore its success.

Different business strategies call for different scorecards, and quality is more important than quantity when developing balanced scorecard measures. Management attention needs to be focused on the few key measures that are the most important to implementation of the company’s chosen strategies and not be distracted by measures that are not critical.

The balanced scorecard uses a concept of a strategy map which links these four perspectives together, beginning at the bottom, innovation and learning. The goals of the innovation and learning perspective contribute to the internal business process perspective, because the staff members use their competencies and strategic awareness to make operational improvements. In turn, the operational improvements made in internal business processes support the goals of the customer satisfaction perspective, since they provide the operations support needed to fulfill the goal of customer satisfaction. And customer satisfaction brings about increased business, increased profits, and improved financial performance. When the company’s financial and non-financial measures are linked in this way, the non-financial measures serve as leading indicators of the firm’s future financial performance. The strategy map provides a way for all employees to see how their work is linked to the corporation’s goals.