The Project Management Institute (PMI) encourages its members to advance the profession. One of the ways to do this is by helping others increase their project management skills. The target audiences for this blog are professional PM’s early in their careers as well as those who manage projects but are not PM’s by title or trade. I will be posting every week or so, offering practical tips and tools on the full range of project management topics. I hope you will find this useful and help you advance your career.
Getting requirements right is a process. Your business stakeholders will rarely (if ever) be able to give you all of their requirements without some method of generating relevant questions to draw the requirements from them. What I am going to present in this and the following posts on this topic is NOT a new way to document your old thinking. It is a new way to think about requirements.
The deliverables created from this approach are:
- Identification of all processes in scope
- Documentation of the specific Use Cases for each process
- Identification of all of the stakeholders that interact with the business processes
- Creation of a framework with which you can generate and execute your test cases
Many analysts start and end their requirements elicitation with “functional requirements” (e.g. “I need to search by Last Name” or “Requests for time off need to be approved by the manager”). In the Event/Response/Use Case approach, functional requirements are derived from the Use Cases at the end of the analysis process.
The analysis sequence is as follows:
- Business Objectives
- Project Objectives (1st cut)
- Event Model
- Project Objectives (verified)
- Use Cases
- Functional Requirements
In the next post, I will discuss how the Business and Project Objectives are defined and used in the Event/Response methodology.
This is the start of a multi-part series on my favorite requirements elicitation technique: the Business Event/Response Analysis. Early versions of this methodology were developed in the late 1980’s by some of the great system development minds of that era. Since then it has evolved and I have adapted it to meet the needs of whatever organization for which I am working.
There are some that think you can gather requirements by just asking the sponsors and users “what do you want?”. Needless to say, this method will generate incomplete requirements and tends to start and end with functional requirements. In the latter half of the project when large requirements gaps are discovered, the sponsors/users blame the analyst and vice versa.
When I teach on this topic, I tell the analysts it is their responsibility to gather complete requirements. Given this, we need a method that will (1) generate the appropriate questions to ask, (2) ensure that we have the complete set of requirements, and (3) allow us to derive the functional requirements from the model.
The Business Event/Response method meets these desired outcomes. The advantages are:
- It helps the Business Analyst create the questions needed to draw the requirements from the Business Owner, even if the Analyst has no knowledge of the business area.
- It organizes the requirements in the context of Business Processes and Usage to promote better understanding.
- The output serves as a starting point for defining the testing scope and scenarios.
In the upcoming posts I will describe this method in detail.
You can setup your SharePoint site security at a variety of levels. You will need to be the site administrator to do this. Here are some of the key ways you can secure your site:
- Site Level – Control access to the entire site. You can deny access to individuals or groups. You can also define large groups of people as visitors (read only). You may assign the appropriate individuals the ability to create content or design content. You can also assign others to be site administrators but I advise you to limit this to one backup person.
- Library/List level – by default all libraries and lists inherit the site level security. If you want different security for some libraries and lists, you need to break the inheritance and custom define the security for that library/list. This is useful for private or sensitive documents such as contracts and individual performance evaluations. If you secure a library/list, it will not appear in the navigation or the site map for those in which access is denied.
- Document level – by default all documents in a library inherit the document library security. You may break this inheritance for individual documents within the library. This is useful if you have a very small number of documents to secure and don’t want to establish a new library.
You need to pay close attention to how you setup security so the site will be useful to all stakeholders while simultaneously protecting sensitive information. I suggest you consult with your project sponsor and establish a security access process before allowing access to the site.
Assembling a Project Status Dashboard is a powerful way to use the capabilities of SharePoint. Instead of having to create a weekly status report manually, SharePoint can do it for you using information you are already updating on the site. This can be a big time saver. The page is updated in real-time as you update the component parts that are shown on the page so the sponsor or other stakeholders can always see the latest status instead of having to wait for you to send it.
Another advantage of the dashboard is that it acts like “mission control” for the project manager. I would always start my day on the dashboard to help determine on what I need to focus. In one place you have your upcoming milestones, high impact issues and risks, and action items due in the next 7 days. You can drill into the details of each item right from that page. This beats looking for each piece individually in documents on a network drive.
I use the SharePoint “web part page” to set up the Project Status Dashboard. A “web part page” allows you to assemble a page from existing lists, libraries and other SharePoint components you have already built on your project site. I like the 3-column format for fitting all of the important information.
Here is the information I include and how I format it:
First Row, across all 3 columns:
The Project Information Announcement – contains basic project information such as the name, number, description and benefits, sponsor name and project manager name.
Second Row, across all 3 columns:
The Project Status Announcement – contains a few sentences from the Project Manager and Lead Business Analyst on the state of the project. I like to update this weekly or whenever an important milestone is reached.
Column 1: The Project Health Scorecard
Column 2: A view on the Issues list containing only high impact Issues, and under that, a view on the risks list containing only high exposure Risks
Column 3: Upcoming Milestones (current month and next month)
Fourth Row, across all columns:
Time Off Calendar for key project team members and stakeholders
Fifth and Sixth Rows, across all columns:
Action Items Due in the next 7 Days – I use a view over the Action Items List.
Action Items Completed in the last 7 Days – I use a view over the Action Items List.
Seventh Row, across all columns:
Key project documents from the document libraries.
You may need to educate and train your users to come here first for information but it will be well worth your time to do so.
The SharePoint Calendar web parts are a convenient way to share date related project information in a convenient format. It also connects to MS Outlook so meeting invitations can be managed in either platform.
Here are the two main calendars I always set up for my projects:
- “Calendar of Events”. I use this to show key upcoming events such as regularly occurring meetings, key milestones and any other events of interest. I always add this web part to the home page as well as making it part of the left navigation.
- “Upcoming Time Off Calendar”. This one shows the upcoming planned time off for key project contributors. I always add this web part to the status dashboard.
When I display these calendars as web parts on other pages, such as the home page and the status dashboard, I use “list view” and limit the number of entries displayed so they fit neatly on the page. As with all SharePoint web parts, users can click an item on the list to drill into the details (e.g. meeting locations and agenda, reason why someone is absent, etc).
Another use for the Calendar web part is to show high level project phase start/end dates. MS Project can be too complex to read or most non-PM’s so the SharePoint Calendar offers an alternative.
You can create document libraries in SharePoint for any of your project-related documents but in this post I will only address the libraries I use for Project Management purposes. Having all of your key documents organized in SharePoint is useful for communication, collaboration, reference and external audit.
The five libraries I always establish on my project SharePoint sites are:
- Project Initiation
- Project Planning
- Requirements and Scope
- Project Execution
- Project Close
The Project Initiation library contains the Project Charter, the approved Business Case, the Roles & Responsibilities matrix and any relevant Contracts.
The Project Planning library contains the Master Project Schedule and any sub-schedules, plus any and all project planning documents (e.g. Project Management Plan, Project Activity Plans, etc).
The Requirements and Scope library contains all of the documents related to the project requirements including diagrams and tracking matrices.
The Project Execution library contains all of the formal status reports including both the internal reports only used by the core team as well as the publicly published reports. It will also contain any formal change requests.
The Project Close library contains all of the formal sign-offs and the Project Close checklist that may be mandated by your organization.
You may also wish to create libraries for your Software Development Life Cycle (Design, Construction, Testing, Implementation).
The SharePoint List is a powerful feature. It has a lot of the features of Excel but because it is native to SharePoint you don’t have to open a document to use it. You can also create views and web parts from a list, as well as sort and filter on columns. When I address the Project Status Dashboard, we will use views over lists to create some of the pieces of the dashboard.
Here are some of the key lists you should create as part of your project site. You may find a need for additional lists based on the needs of your project.
- Action Items – I use this to track tasks that are at too low of a level to be on the MS Project schedule. Typical fields on this list are: description, assigned to, date assigned, date due, status, completion date, and comments.
- Risks – I use the SharePoint list for risk management because of the versatility as noted above. Typical fields on this list are: risk description, status, date created, probability, impact, exposure, risk trigger, mitigation plans, contingency plans, risk owner, and comments.
- Issues – I also use the SharePoint list for issue management because of the versatility as noted above. Typical fields on this list are: issue description, status, date created, assigned to, impact to project, date closed, and comments.
- Milestones – I take the major milestones from the MS Project Schedule and place them in a list for easy reference. These are also used on the dashboard. Fields are: Milestone description, planned date, actual date.
- Test Cases – having your test cases in SharePoint is especially useful for projects with two or more testers. It makes it easy to assign work and check status across the testing team. The testers can update the list themselves for assignments and status updates.
- Test Issues – SharePoint has the ability to link lists. Since there are usually more than one Test Issues associated with a Test Case, I like to link the Test Issues list with the Test Cases list to get a complete view of each Test Case.
In Summary, the SharePoint List is a powerful feature and I highly recommend you consider creating lists to replace any Excel project tracking documents.