Data Management
Project Management Dr. Ardeshir Badr
Objectives
• Understand the importance of IT alignment with business needs
• Understand how to assess technical, economic, and organizational feasibility
• Become familiar with work breakdown structures, Gantt charts, and network diagrams, and how to create a project plan, and how to staff a project
• Become familiar with use case driven effort estimation
• Understand how to manage the scope, refine the estimation, and mange the risk of a project
• Understand how the environment and infrastructure workflows interact with the project management workflow
• Project: A set of activities with starting and ending times meant to create an information system that brings added value to a business
• Project Management: Is the process of planning and controlling/monitoring the development of an information system that meets the requirements within a specified time frame, and at a minimum cost
• Project manager: After years of experience as an analyst, one can become a project manager, who is responsible for managing and coordinating hundreds of tasks and roles
Introduction
Project Management Workflow (Unified Process)
Project Identification
Feasibility Analysis
Project Selection
Project Effort Estimation
Workplan Creation and Management
Staffing Project
Environment and
Infrastructure Management
• Business needs:
• Supporting a new marketing campaign, reaching out to new type of customers, or improving interactions with
suppliers
• Drop in market share, poor customer service level, increased competition
• Enabling new business initiatives and strategies
• Emerging technologies
• A project is identified when someone in the organization identifies a business need to build a system. The project identifier
can originate from one or more of the following in an organization:
• A business unit
• IT department
• Steering committee charged with identifying new business opportunities
• Recommendations made by an external consultant company
• Project sponsor: Is someone, usually from a business function or IT, who recognizes the strong business need for a system
has an interest seeing the project succeed. The size and type of project determines the kind of sponsorship needed; small
projects will have a single manager, while large projects might need sponsorship from senior management
Project Identification
• Requirements: The features and capabilities an information system will contain
• Tangible value: Can be quantified and measured, for example, 10% reduction in operation costs
• Intangible value: Hard to measure but important added value, for example, improved customer service
• After project sponsor identifies a project that meets the business needs and he/she can identify the system’s business requirements and values, then a project can be initiated
• Project initiation begins with system request
Project Identification
• A system request is a document that describes the business reason for building an information system and the value (tangible/intangible) the system is expected to provide
• The completed system request is submitted to approval committee for consideration
• Based on the information in system request, approval committee decides to investigate (feasibility study) the proposal or not
Project Identification – System Request
Project Name
Project Sponsor Name of project sponsor
Business need Short description of business need
Business requirements High level description of business requirements
Business value Tangible and intangible values system can provide
Issues or constraints Other relevant information concerning stakeholders
• Feasibility study guides an organization in determining whether or not to proceed with a project
Feasibility Analysis
Technical Feasibility: Can the system be successfully designed, developed, and deployed by IT department? The answer is essentially a technical risk analysis. Risks include: • Lack of familiarity of users and analysts with the functional area • Familiarity with the technology; new technologies increase risks • Project size; larger projects preset more risks • Technical compatibility; the lack of compatibility with the existing systems increases risks
Economical Feasibility: Should we build the system? The answer identifies the associated financial (costs and benefits) risks with the project
Organizational Feasibility: How well the system will be accepted by the users and incorporated into the existing and ongoing operations? The answer needs to assess the following factors: • Strategic alignment; the greater the alignment the less risky the project will be • Stakeholders (person, group or organization that can affect or be affected by a new system);
The feasibility study should be revised several times before each iteration of the development process
• System request and feasibility study documents, are submitted to approval committee who decide whether to approve, decline, or defer the project.
• The decision will also consider the portfolio of the projects of an organization
• Portfolio management takes into consideration the different projects that exist in an organization and tries to have a good mix of projects for the organization’s needs
• Projects can be classified based on size, cost, purpose, length, risk, scope, and return on investment (ROI)
Project Selection
• A task is a unit of work that will be performed by a member of development team
• A task has name, start date, completion date, person assigned to the task, deliverable(s), status, priority, resource needed, estimated time to complete, and the actual time took to complete
• Work Breakdown Structure (WBS)
• Gantt Chart
• Network Diagram
Project Management Tools
Task Identification
Tasks are organized within a Work
Breakdown Structure
Gantt Chart
Network Diagrams
• Work Breakdown Structure (WBS): • High level tasks are first listed
• Each high level task is broken down into subtasks
• A WBS includes: • Duration of task
• Status of task
• Task dependencies
• Approaches to organizing a WBS: • By development phase
• By product
Project Management Tools – WBS
Project Management Tools – WBS
1. Inception 1.1 Feasibility Study
1.1.1 Technical 1.1.2 Economic 1.1.3 Organizational
2. Elaboration 3. Construction 4. Transition
1. Applets 1.1 Inception 1.2 Elaboration 1.3 Construction 1.4 Transition
2. Application Servers 2.1 Inception 2.2 Elaboration 2.3 Construction 2.4 Transition
3. Database Servers
Sample WBS based on development phase Sample WBS by product
Task Number Task Name Duration (weeks)
Dependency Status
1. Inception 4 In Progress
1.1 Feasibility Study 2 In Progress
1.1.1 Technical 1 In Progress
1.1.2 Economic 1 1.1.1 Open
Task Number Task Name Duration (weeks)
Dependency Status
1. Applets 10 In Progress
1.1 Inception 4 In Progress
1.1.1 Feasibility Study 2 In Progress
1.1.2 Technical 1 1.1.1 Open
• A horizontal bar chart that shows the same task information as WBS in graphic way
Project Management Tools – Gantt Chart
• Project manager makes trade offs among: • The functionality of the system
• The time to complete the project
• The cost of the project
• The project manager needs to estimate each of the above items and continuously assess how to roll out a project to meet the requirements
• Estimation is the process of assigning the projected values for time and effort, and will evolve during the system development life cycle
• The estimate numbers can be taken from with similar tasks and technology, or by experienced developers
• In Unified Process, which is use case driven, we use case points (UCP) approach to estimate the time required to develop a system
Project Effort Estimation
• Use case models: • Actors: A role that a user of a system (can be also another system) plays, for
example, administrator
• Use case: A major business process that system will perform to benefit an actor, for example, login use case logs in an administrator
• For use case points estimation, actors are classified as: • Simple actors: Separate systems with which the current system must communicate
through a well defined API
• Average actors: Separate systems that interact with the current system using TCP/IP, FTP, or HTTP protocols, or an external database using SQL
• Complex actors: The end users (human) communicating with the system
• Similarly, a use case is classified as: • Simple use case: It supports 1 to 3 transactions
• Average use case: It supports 4 to 7 transactions
• Complex use case: It supports 8 or more transactions
Project Effort Estimation – Use Case Points
• The number of actors in each category are entered into unadjusted actor weighting table, and we get unadjusted actor weight total (UAW)
• The number of each type of use case is entered into unadjusted use case weighting table, and we get unadjusted use case weight total (UUCW)
• Then unadjusted use case points (UUCP) are obtained by adding UAW and UUCW
• Technical complexity factors (TCFs) and environmental factors (EFs) are used to adjust the use case point based estimations
• Using worksheet formulas we get an estimate of person hours (see templates)
Project Effort Estimation – Use Case Points
• Workplan is a dynamic schedule that records and keeps track of all the tasks that need to be accomplished during the project
• In a workplan for each task we have: • Task name
• Completion date
• Assigned human resource
• Deliverables
• To create the list of tasks project manager can use a standard list of tasks from a methodology and then modify them accordingly, and add them to workplan
• We use Unified Process phases and workflows, and iterations as a stating point for to create a evolutionary WBS and iterative workplan (see template)
Workplan Creation and Management
• In Unified Process the development process is organized around phases, workflows, and iterations
• Evolutionary WBSs allows the creation of iterative workplan: • They are organized in a standard manner across all projects by workflows,
phases, and the specific tasks that are accomplished during an individual iteration
• They are created in an incremental and iterative manner
• They enable the comparison of the current project to the previous projects
• The workflows are the major points listed in WBS, and then each workflow is decomposed along the phases of the Unified Process. Then each phase is decomposed along the tasks that are to be completed to create deliverables associated with an individual iteration contained in each phase (see template)
Workplan Creation and Management - Evolutionary WBS and Iterative Workplan
• Scope creep: Schedule and cost overruns as a result of added new requirements
• To manage the scope, the following have been effective: • Daily scrum meetings and product backlog in Scrum
• Timeboxing: The project becomes time oriented, i.e., delivering a product at a certain date no matter what, even if we need to reduce functionalities. RAD or agile methodologies can use timeboxing (sprint)
• Managing Estimates: The preliminary estimate of time and costs that are produced during the inception, need to be refined as the project progresses
• Managing Risks: The process of assessing and addressing the risks that are associated with developing a system
• Risk Assessment: A document that tracks the potential risks with an evaluation of likelihood of each risk and its potential impact on the project
Workplan Creation and Management
• Staffing a project involves:
• Determining the number of persons that should be assigned to the project
• Matching people’s skills with the need of the project
• Motivating the staff to meet the project’s objectives
• Minimizing conflicts
• Deliverables are:
• Staffing plan that lists roles and proposed reporting structure
• Project charter which describes the project objectives and rules
• Technical skills: Beneficial when working on technical tasks
• Interpersonal skills: Beneficial when dealing/communicating with business users, senior management, executives
• The technical and interpersonal skills are taken into account when a project manager makes assignments
Staffing the Project
Staffing the Project – Reporting Structure
Project Manager
Functional Lead Technical Lead
Business Analyst Business Analyst Developer DB Admin
• A project manager needs to motivate people for a successful project
• Motivation has been found the number one influence on people’s performance
• Some ideas to motivate the personnel on a project: • 20% time rule
• Giving small awards by an employee to another peer employee
• A day on which an employee can work on anything
• Employees should be paid sufficiently
• Project manager should sit in shared space same as developers and analysts
• Team leaders need to trust developers and analyst to deliver
• Provide support for attending conferences, training, or anew software package for developers/analysts to work with
Staffing the Project – Motivation
• Strategies a project manager can use to avoid conflicts: • Clearly define plans for the project
• Make sure the team understands the importance of the project to the organization
• Develop detailed operating procedures and communicate them to team members
• Develop a project charter
• Develop schedule commitments ahead of time
• Project other priorities and the impact they could have on he project
Staffing the Project – Handling Conflicts
• Supports the development team during the development process
• Environment deals with choosing the correct set of tools and identify the appropriate set of standards
• Infrastructure deals with developing, modifying, and reusing predefined components, frameworks, libraries and design patterns, plus the appropriate level and type of documentation that will be created during the development process
• CASE tools: Automate parts or all of the development process, for example, ArgoUML. Some CASE tools can do Forward and Reverse engineering
Environment and Infrastructure Management
Types of Standards Examples
Documentation Standards The date and project name should appear as a header on all documentation
Coding Standards All modules of code should include a header that contains the developer’s name, last update date, and a short description of the code
Procedural Standards All changes to a requirement must be approved by the project manager
Specification requirement standard
Name of the software module to be created Description of the software module Due date
GUI design standards Labels appear in bold, size 18 The tab order moves from top to bottom order
Environment and Infrastructure Management - Standards
• With the aid of Use Case Points estimation worksheet (the Excel file is uploaded in Week 2 lessons), estimate the effort needed to accomplish the following project:
A company is in need of a system that allows a number of IT products vendors to present their products for approval via a web portal, then the Sure Products staff web portal where staff can review and approve/disapprove the product list sent by vendors. The system should have a customer portal for customers to view approved products
Activity 1
• What is a Unified Process Model
• What is the project management workflow for Unified Process
Discussions
• Go through the slides of this class plus the notes you have taken
• Go through the exercises, discussions, and examples
• Read the slides for next class (will be available one day prior to next class)
• Continue working on your project
• Continue working on your assignments
• Work on your presentation
Before next class