590 likes | 928 Views
Integrated Software P roject Fundamentals in project management. Jean-Louis Binot. 1. Objectives of this session. 2. IT Applications and IT Projects. 3. Challenges of IT Projects. 4. 5. Organizing an IT project. Project Management & deliverables. Agenda. Objectives of this session.
E N D
Integrated Software ProjectFundamentals in project management Jean-Louis Binot Fundamentals in project management
1 Objectives of this session 2 IT Applications and IT Projects 3 Challenges of IT Projects 4 5 Organizing an IT project Project Management & deliverables Agenda Fundamentals in project management
Objectives of this session • Explain why project management is important for Information Technology • Present the role of project manager and the fundamentals of project management • Explain the requirements of this course in terms of project management • Introduce project management templates which will be used in the course Fundamentals in project management
1 Objectives of this session 2 IT Applications and IT Projects 3 Challenges of IT Projects 4 5 Organizing an IT project Project Management & deliverables Agenda Fundamentals in project management
Why Project Management ? In a company, IT supports the business through IT applications and IT services • Implementation of a new IT application, or rolling out of IT services, is done through ITprojects • IT projects are difficult to execute, and require a specific discipline to succeed: Project Management • Project management is a management activity, which can involve large teams and budget. The role of project managermay be part of a typical IT career path Fundamentals in project management
An IT Application • Is a computer software designed to help the user to perform specific tasks • Automates business processes in order to produce business benefits, in four possible categories: • Increase sales and hence revenues • Reduce costs and hence increase profits • Increase quality of product / service & customer satisfaction • Ensure compliance to regulations • Needs to store, retrieve, and process data in order to achieve that automation • and thus typically involves some form of database Fundamentals in project management
Logistic routes Car sale + ETA Example of a large IT project: Vehicle order mgt Sales person Sales person Customer Customer Customer Order Factory New built Benefits: reduce costs &increase customer satisfaction From stock ERP (Enterprise Ressources Planning)orders, car status over Europe, car allocation to orderroute optimization, ETA calculation… • Challenges • Project size (300 M€, 30 countries)- Performance: < 2 secs in Europe • Interface with ERP system • Accurate ETA • Complexity of algorithms • Data accuracy, availability- Customisation Production planning Factory Stocks Hub Distributor Vendor Fundamentals in project management
IT applications support the business All important IT application issues will have business impacts • Application availability matters (must “keep the lights on”) • Challenge both for application teams and for operational management • Application performance matters • Delays have business impact • Respecting deadlines matters • Many deadlines are “business critical”: they can’t be moved without impact • Data accuracy matters • Impact of data errors goes from inconvenience to critical liability • Application reliability matters • Bugs have business consequences Some of these criteria are important for your application as well Fundamentals in project management
1 Objectives of this session 2 IT Applications and IT Projects 3 Challenges of IT Projects 4 5 Organizing an IT project Project Management & deliverables Agenda Fundamentals in project management
IT added value in the enterprise : a maturity model The added value of IT depends on itscapacity to support the business Transactional Incompetent IT acts as “order taker” fulfilling requirements specified by businessIT only focuses on technology and operational efficiency IT is not even able to execute on business requests Partner IT interacts with business to understand and specify business requirementsIT may recommend alternate solutions Consultative IT understands both business and technology issuesIT is proactive in recommending solutions for competitive advantage Is there a missing level ? Strategic leader IT is viewed as a strategic leader within the enterpriseIT is a partner in the planning and execution of the business strategy Fundamentals in project management
The difficulty of delivering IT projects The Standish group (IT project management research and consulting firm) delivers each year a “Chaos report” surveying project success rate The first report (1995) was a landmark: • 16% success • 31% failure • 51% challenged How many projects realy succeed ? Fundamentals in project management
More recent Standish data (2012) Slight improvement in project success rate, but still many failures Better results with agile methodologies for small projects Fundamentals in project management
Why so many project failures ? • Requirement issues • Architectural or technical mistakes • Lack of organization or discipline • Difficulty of integrating / managing all aspects • Difficulty of managing consensus within team • Difficulty of managing consensus between stakeholders • Competition for scarce budget and resources • Management pressures • Psychology and politics • … You will face at least part of these challenges Fundamentals in project management
Consequences on application life cycle • Because IT projects are difficult and costly, application renewal is slow. Applications tend to exist for a long time (e.g. 2 y project, 15/20 y maintenance !) • The highest cost comes from maintenance, hence the importance of quality • In most cases, after a few years, the original developers are no longer around A typical application lifecycle, with defect rate evolution Fundamentals in project management
1 Objectives of this session 2 IT Applications and IT Projects 3 Challenges of IT Projects 4 5 Organizing an IT project Project Management & deliverables Agenda Fundamentals in project management
What is a project ? • A project is a temporary endeavor undertaken to create a unique product or service (PMI) • Temporary: it has a definite start and a definitive end • Unique: it is not repetitive (not production nor maintenance) • A project has three main dimensions • Time (respect of deadline / schedule) • Cost (respect of budget, which can be “fixed price”) • Quality (of the delivered product / outcome) • A project involves many additional domains, such as • Scope, human resources, communication, risks, procurement, integration… Fundamentals in project management
The project life cycle (a typicalview) Go /No Go PROPOSE CONTRACT PROJECTINITIATE PROJECTEXECUTE PROJECTCLOSE IDENTIFY & QUALIFY Y Y Go/No Go N N PROJECT DEFINITION PHASE PROJECT DELIVERY CYCLE Project selection- which projects include in yearly plan (portfolio)?- for IT provider: whichbids to work on ? • Opportunity profile • Business case • Risk analysis Project definition • Updated business case • Technical solution • High level plan • Project costs estimate • Updated risk analysis Selection of supplier & contracting • Milestones • Specific clauses • Subcontracts • Updated risks • Updated financials • Project organization • Project governance internal, client, subs • Handover from opportunity phase • Project Baselines scope, schedule, cost • Staffing • Follow-up cycle • Schedule / plan • Estimates • Quality • Staffing • Skills & coaching • Scope mgt • Customer mgt • Risks & counter • Financials • Closing internal, client, subs • Organizational learning Fundamentals in project management
Project Definition Phase • Project Opportunity • Is the project motivated by business needs / strategy ? • Are there enough business benefits generated by its outcome ? • Feasibility • Have we identified a high level technical solution, schedule, costs, and risks ? • Are these acceptable / manageable ? • ROI • Is the Return On Investment acceptable given business needs? In this case the project definition phase has been done by the academic team(cf. document “Engagement pédagogique”) Fundamentals in project management
The scope of this Integrated software project covers the Project Delivery phase(with a limited set of deliverables) The project life cycle ./. Go /No Go PROPOSE CONTRACT PROJECTINITIATE PROJECTEXECUTE PROJECTCLOSE IDENTIFY & QUALIFY Y Y Go/No Go N N PROJECT DEFINITION PHASE PROJECT DELIVERY CYCLE Project selection- which projects include in yearly plan (portfolio)?- for IT provider: whichbids to work on ? • Opportunity profile • Business case • Risk analysis Project definition • Updated business case • Technical solution • High level plan • Project costs estimate • Updated risk analysis Selection of supplier & contracting • Milestones • Specific clauses • Subcontracts • Updated risks • Updated financials • Project organization • Project governance internal, client, subs • Handover from opportunity phase • Project Baselines scope, schedule, cost • Staffing • Follow-up cycle • Schedule / plan • Estimates • Quality • Staffing • Skills & coaching • Scope mgt • Customer mgt • Risks & counter • Financials • Closing internal, client, subs • Organizational learning Fundamentals in project management
Project delivery phase: Integrated sotfwareproject Project deliveryfollows a systematic delivery cycle Project tracking Consistent approach to reduce mistakes and increase efficiency (standards, templates, coaching) • Start in orderly fashion • Avoid cost leakage • Avoid costly mistakes Approval based on accurate estimates Project proposal Project initialization Project office Student teams Project execution Delivery control Delivery coach OrganizationalLearning cycle Project review cycle Project closing Deliver on time, on budget, with quality Improve efficiency (estimates, reuse, KPIs…) Orderly close projectPresent results Reflect on lessons learned Fundamentals in project management
How to structure the project delivery phase ? Several types of IT projects • Application development • Application Rollout / Service rollout • ERP (Enterprise Resource Planning) • Consulting • … For application development, at least two approaches • Classical approach (planning & control) • Agile methodologies We will follow the classical approach, to highlight project management tasks Fundamentals in project management
How to structure the projectdelivery phase ? ./. Case of an IT application development project RequirementsFunctional analysis Architecture Functional, integration, performance, stress, regression testing CustomerAcceptance DevelopmentUnit testing(coding) Warranty Which % of project efforts is typically used by coding ? 20% 35% 25/30% 5/10% 10% Efforts Init meeting Internal gateway Internal gateway Customer gateway To be added: Project mgt 15%; contingency >= 10% linked to risks; quality 2-3 % • Coding is only 1/3 of a project activity • There are challenges at every stage • A good project has gateways (go / no go points) Fundamentals in project management
Calendar and phases: Integrated software project • Phase structure and duration is indicative. Project teams may adjust them. • Final deadline and dates of reviews are fixed. • Final project defense will occur in April. Fundamentals in project management
Challenges by phase: requirement analysis Old joke, still true • Customer may have only a high level view of his needs and be unclear • He is often not IT/process literate • But he has to accept system and pay bill Challenges for IT project • Elucidate requirements (first in NL) • Detect incompleteness, inconsistency, risks • Formalize functional requirements and data • Obtain sign-off in reasonable time frame Fundamentals in project management
Requirement analysis: Integrated software project • You are given requirements, gathered from real users for a needed application • They have been collected and written with care; however: • Like all initial requirements, they are written in natural language, not formally specified • They may be incomplete • There may be inconsistencies • There may be ambiguities • Some requirements may require more expensive solutions and may lead to design compromizes • Your first task is thus to analyze, understand and clarify the requirementsto produce a reasonable functional & non functional Requirements deliverable • Try to structure requirements in a meaningful functional description facilitating design & coding Fundamentals in project management
Challenges by phase: architecture & design • Functional specifications state what the proposed system is to do, whereas architecture & design is about how the system is to be constructed. • This seminar being about project management, the topic will not be covered here • Some obvious advices: • Do not rush into coding without some reasonable system architecture and data design • Pay attention to how you can possibly divide that work among the team • Once again, it will provide a sounder basis to divide coding efforts and integrating results Fundamentals in project management
Challenges by phase: coding • Coding is subject to competing constraints • Highest cost comes from maintenance, and applications are long-lived; typically original developers are no longer around => need for software quality • To be competitive, the project must meet deadline and cost targets=> need for speed and efficiency • Typical industry requirements for the coding activity • Reuse (libraries of routines, frameworks) Coding must be teamwork • Quality (correctness if possible, but also testing) • Standards (documentation, naming conventions…) allowing maintenance Fundamentals in project management
Coding: Integrated software project • Like in any IT project, youwillneed to balance efforts: • You are expected to deliver a running application by final deadline • This application willbeassessed and needs to have sufficientquality • As you are working as a team, codingtasksneeded to beshared: • Fairly (everybody must support his/hershare) • Adequately, in order to allowindividualwork to progresswithouttoomanydependencies on separate modules, whichcanthenbeintegratedtogether • The document « Coding style » (course Projet de Programmation, INFO0030, BAC Sciences Info) is an appropriatereference for coding standards in C Fundamentals in project management
Challenges by phase: testing • Testing should be documented (test plans, test results) • Unit tests are typically a developer’s responsibility • Other tests are ideally done by other people • Acceptance test criteria should be agreed before you start coding The classical “V” of testing Fundamentals in project management
Testing: Integrated software project You may not have the time and the resources to implement a full testing strategy as described in the previous slide. However you should at least foresee There are no official acceptance tests this year. The application will be assessed on its quality. To reach sufficient quality: • Unit tests are strongly recommended • They are performed by each developer on his/her own code • They do not necessarily need to be documented but are part of individual discipline • Some quality control (i.e. peer review) may be organized • Final tests checking the functional and system aspects of your resulting application are mandatory • They need to be documented Fundamentals in project management
Evaluating your resulting application All important IT application issues will have business impacts • Application availability matters (must “keep the lights on”) • Your application should be able to run without any frequents interruptions • Application performance matters • Your application should have reasonable performance • Respecting deadlines matters • Your application must be delivered by the deadline • Data accuracy matters • Data loaded in your application must be correct • Application reliability matters • Your application should be as far as possible free of bugs Fundamentals in project management
Agenda 1 Objectives of this session 2 IT Applications and IT Projects 3 Challenges of IT Projects 4 5 Organizing your IT project Project Management & deliverables Fundamentals in project management
In this Integrated software project The role of project manager will berotated by phase to all (4) team members Role of the Project Manager • Project : The mission of Project Manager is to deliver the result of the project • On time • Within budget • With quality • Manager: The Project Manager is not a content expert nor an administrator. His job is to manage the project • Planning • Assigning tasks, delegating • Monitoring and controlling • Assessing risks, making decisions, anticipating • Leading and motivating a team • Communicating and negotiating Fundamentals in project management
Project Management standards • Standards provide methods, templates… to assist the project manager in properly managing a project • Several important international standards exist, a.w. • PMI: Project Management Institute (publishes the PMBOK: Project Management Book of Knowledge) • Prince 2 (PRojects IN Controlled Environments)initially developed for the British government, now recognized as an international standard • They also provide certification of project managers Fundamentals in project management
Project manager deliverables in the delivery cycle: Initialisation Project tracking Consistent approach to reduce mistakes and increase efficiency (standards, templates, coaching) • Start in orderly fashion • Avoid cost leakage • Avoid costly mistakes Approval based on accurate estimates Project proposal Project initialization Project office Student teams Project execution Delivery control Delivery coach OrganizationalLearning cycle Project review cycle Project closing Deliver on time, on budget, with quality Improve efficiency (estimates, reuse, KPIs…) Orderly close projectPresent results Reflect on lessons learned Fundamentals in project management
Activities & deliverables : initialization phase Activities • Clarify and manage project objectives (scope, deadline, budget, assumptions, etc.) • Define project organization • Break down the project into tasks, assign them, monitor performance, detect deviations and take counter-measures • Manage project costs against budget, make forecast of cost evolution, detect deviations and take counter-measures • Clarify and confirm user requirements Deliverables (mandatory in red) • Project charter/ Project statement included in Project Statement Project plan (initial plan = baseline; may be included in Project Statement) Project costs (initial cost plan = baseline; may be included in Project Statement) • Final requirements document ProjectManager Team Fundamentals in project management
Project Statement– typical agenda A template is provided The project charter summarizes initial mission of the Project Manager and is his first important deliverable • Project purpose and business justification • Specific objectives of the project • Background and stakeholders (key people having stake in / decision on the results) • Project scope: in scope, out of scope • Project schedule, including main deliverables with their milestones • Project budget • Communication plan (including reviews, steering committee) • High level risk management plan (risks & counter-actions) Fundamentals in project management
Project Organisation – typical roles In your case: • Small team • 3 roles: • Project Manager • Project Officer • Team Member • Project Manager & Project Office roles need to rotate to all team members • This is part of your project organisation • Team members are assigned to tasks as you see fit • Pr Manager and Pr Officer are also team members ! Fundamentals in project management
Project planning Whatis a project plan ? • PMI: a formal, approved document used to guide both project execution and project control…which document approved scope, cost, and schedule baselines • The Project Charter refers to the document that the project sponsor and project manager use to agree on the initial vision of the project (scope, baseline, resources, objectives...) at a high level. • The project management plan is the document that the project manager builds to describe in more details the planning of the project and its organization • PRINCE2: a statement of how and when a project's objectives are to be achieved, by showing the major products, milestones, activities and resources required on the project Fundamentals in project management
A note on project control psyhological challenges Many (maybe all) people have a natural resistance against control: • « I do not need control, I know what I am doing » • « You do not trust me » • « Your control is costing me time » • Team spirit, motivation, autonomy, delegation ARE important • However, in addition to these, a project MUST be controlled or it will likely fail • Control should be willingly accepted by all team members, including the project manager, as part of a common team discipline • Project control needs to be done in a positive way whenever possible: understand how tasks are progressing, identify issues, but also try to provide support or find alternate solutions • Project control is not about doing the job of the other person in his/her place • Project control is not the same as quality control (which may also happen) Fundamentals in project management
Project Planning: how isitdone ? • The purpose of a project plan is to exercise control on your project, by telling • a) where you had planned to be, b) where you are and c) what is the deviation between the two • In order to detect issues and take corrective actions to bring your project back on track • To do that your plan needs to be sufficiently detailed to give visibility and control • Typically it should use tasks of a few days elapsed or a few man-days • To measure deviations you need two versions of the plan • The initial plan (baseline) cannot be changed once established. Often limited to high level milestones • The actual plan status includes as many task details as appropriate • The plan needs to be refined after the requirement analysis phase • The choice of tool to maintain the plan is not the most important issue Fundamentals in project management
A simple plan in Powerpoint (consulting project, 1 team member) • Activities and deliverables • Assessment of existing status Deliverable: status report (Powerpoint) • Definition of improvement plan Deliverable: action plan (Powerpoint) Efforts (consultant) In real-life fixed price projects a contingency would be added. Planning Action plan definition Implementation Assessment 27/03action plan draft 13/03assessment draft 20/03 31/03 21/02 Action plan reviewwith Executive Committee Assessment review Kick-off Fundamentals in project management
A reasonably simple plan in Excel (4 team members) THIS IS ONLY AN EXAMPLE Fundamentals in project management
A more complex schedule in MS Project Fundamentals in project management
Integrated software project: input for planning • A project plan should include a schedule view and a resource view • Think about how you break the work, especially for analysis and architecture • A good architecture makes it easier to divide work for coding and testing • Requirements analysis requires another type of breakdownThink about organizing them in categories, brainstorming sessions,clarification sessions with users • In brainstorming sessions do not forget to appoint one or several note takers.It could be the project officer, but not necessarily. • A basic template is provided. Other free templates & tools exist on the web Fundamentals in project management
Estimating: key points • Estimating is used to: • Define the initial size / budget of the project • Build your project plan, by allocating realistic efforts to task • Track progress and costs (both are linked) • The purpose of cost tracking is to exercise control on your budget/efforts by telling • a) how much budget you still have, b) how much you will spend, c) what is the difference • In order to detect issues and take corrective actions to bring your project back on track • To answer that question the Project Manager needs two views of its budget • The initial budget or baseline, which cannot be changed by the project manager himself. • The actual cost Estimate At Completion (EAC): the current estimate of what the total cost will be • Estimating requires to break down the project into tasks, and count efforts • Size of the tasks must be small enough to do that, but not too small (e.g. a few man-days) • Estimates should be refined after requirements and after analysis/architecture. Fundamentals in project management
Use Case Points (Schneider & Winters, 2001) Based on Universal Modeling (UML) approach;distinguishes actors, use cases Use Case Points = Total * corrective factors (technology, experience) Efforts= Use Case Points * Effort Rate (e.g. 20 mh / point) Example of estimating method (partial) Fundamentals in project management
Cost Control and Financial indicators EAC At each review, the PrMgrre-evaluates the Estimate to Complete (ETC) based on plan and status.What is still needed is not simply budget minus actual costs. BAC ETC Budget Variance CR InitialBudget ACWP(recognized revenue) Cost Variance WIP ACWP/EAC =% completion Billed Earned Value = BAC * % completion Budget Actuals Billing Fundamentals in project management
Main Financial Indicators • BAC Budget At Completion • BCWS Budgeted Cost of Work Scheduled • ACWP Actual Cost of Work Performed • ETC Estimate To Complete • EAC Estimate At Completion • PC Percentage complete (ACWP/EAC) • BCWP Budgeted Cost of Work Performed -Earned Value(can be estimated as BAC*PC) • BV Budget Variance (BAC-EAC) • SV Schedule Variance • CV Cost Variance (BCWP-ACWP) Fundamentals in project management
Reviewing estimates – basic example Planning Baseline and status Action plan definition Implementation Assessment 27/03action plan draft 13/03assessment draft 20/03 31/03 21/02 Actual status 22/3 Budget baseline and status Schedule variance: 7 days (assessment completion estimate: 22/03 + 5 = 27/03)Budget variance: 9 person-daysEarned value (pd rate 1000 euro): 72%*15=10.8 person/days or 10800 euro Fundamentals in project management