Project Management and IT

advertisement
Project Management and IT
Peg Schafer
Senior Technical Project Manager
StarfishStorage @ Cambridge Computer
The Plan
•
•
•
•
•
•
•
Why Listen to Me?
QUICK overview of ITIL, TQM, PMP, Agile
Why some don’t work, but some bit do work
A few words about who is in control
What project managers can do & their goals
Profiling the work a particular IT department does
Tools & Books
Why Listen to Peg?
Previous Life - The Formative Years
• BFA Sculpture
• UNIX Sysadmin @ CMU & Bellcore
• Masters at Media Lab
• UNIX Sysadmin Manager @ BBN, Harvard, Tufts
• Several Years on the SAGE board of directors
o Job Description Booklet, Salary Survey, etc.
• I’ve always loved the art of UNIX Sysadmin
Why Listen to Peg?
Single Parenthood - Transition to Project Manager
• Ask.com - Trouble Ticket w/ Asset DB to co-ordinate
international operations
• Microsoft - New NOC trying to manage Linux systems
• A very Large Web Hosting Site - New Data Center
• Scholastic Web Hosting for > 15 million students
• Tivli (a startup @ Harvard Innovation Lab)
• StarfishStorage - Data Management SW
Project Management Methodologies: ITIL
Wikipedia: The Information Technology Infrastructure
Library (ITIL) is a set of practices for IT service
management (ITSM) that focuses on aligning IT services
with the needs of business.
• Utilized by big sites like US government – building
battleships with a 100 different contractors
• Emphasis on pre-planning
• Emphasis strict control
• Regimented
• Not much to do with the small sysadmin site
ITIL_Incident_management_Impact_vs_Urgency_matrix
Project Management Methodologies: TQM
Wikipedia: Total quality management (TQM) consists of
organization-wide efforts to install and make permanent a
climate in which an organization continuously improves its
ability to deliver high-quality products and services to
customers.
•Best at continuous work requirements: factories
•Everyone needs to agree
•Re-examination of processes
•All employees have input and managers have to listen
•Works well in Japan – cultural co-operation
Project Management Methodologies: PMP
Wikipedia: By the Project Management Institute (PMI): A
Guide to the Project Management Body of Knowledge
(PMBOK Guide) a book which presents a set of standard
terminology and guidelines for project management.
• Most widely used by all companies
• PMP certs very popular career choice
• Very logical and adaptable
Project Management Methodologies: PMP
The nine knowledge areas are:
• Project Scope Management
• Project Time Management
• Project Cost Management
• Project Quality Management
• Project Human Resource Management
• Project Communications Management
• Project Risk Management
• Project Procurement Management
• Project Stakeholders Management
Project Management Methodologies: PMP
ABOK - Automation Body of Knowledge
BABOK - Business Analysis Body of Knowledge
CMBOK - Configuration Management Body of Knowledge
EABOK - Enterprise Architecture Body of Knowledge
EMBOK - Event Management Body of Knowledge
SEBOK - Systems Engineering Body of Knowledge
SWEBOK - Software Engineering Body of Knowledge
TMBOK - Test Management Body of Knowledge
Agile Software Development
Wikipedia: Agile software development is a group of
software development methods based on iterative and
incremental development, where requirements and solutions
evolve through collaboration between self-organizing,
cross-functional teams. It promotes adaptive planning,
evolutionary development and delivery, a time-boxed
iterative approach, and encourages rapid and flexible
response to change. It is a conceptual framework that
promotes foreseen tight iterations throughout the
development cycle.
Agile Process: Just the basics
•Planning – Epics -> Stories -> Tasks
•Ranking
•Estimating – Story Points
•Sprints – two week blocks of work
•Demo – completion of sprint
•Evaluation – what did not get done and why?
•Do it all over again – plan the next sprint
•Kanban board continuous development until done.
PMs know about all these frameworks (methods,
processes, etc.) to get work organized
IT people know about technology
Management knows they want X (poorly defined) by Y
date – far too near in the future
Users just want it to work so they can do their work
Developers want well designed & thought out detailed
specifications.
No TWO computing infrastructures are alike.
• People
• Systems
• Software
• Purpose & Goals
A computing infrastructure is configured to meet
the needs of the enterprise that owns it.
If a company is poorly run, its computing
infrastructure will run poorly.
Why are standard PM practices not a fit for IT departments?
•ITIL – too much planning – not contractors – people are
not interchangeable – most sites not that large
•TQM – work changes too much – not repeatable – too
many individual thinkers – not culturally applicable
•PMP – best of the lot – modern – techniques for SW
development
•Agile – fast on its feet – but cannot put off things until
sprint is done
•PMs mostly come from business school – not technical
•Many PMs focus on SW development
Why are standard PM practices (sometimes) are not a fit for IT
departments?
•PMs lack of knowledge offends IT workers
•IT Departments do not control the work flow
•Project deadlines rarely relate to the amount of work required
to accomplish the task: Marketing wants a webpage that does
X (poorly defined) “asap” – regardless of database ability or
what else is scheduled for the the accounting department that
week…
Management – who is really in charge?
Management structure is not always straightforward
•
•
•
•
THE Manager may not be the “real” manager
Technical Leader ?
500 pound gorilla ?
Wimpy CTO?
The PM is generally NOT the one in charge
Especially if they are consultants
For *ANY* process to work an IT department needs:
1.A strong CTO which can manage the demands of the
enterprise. i.e. Marketing needs to put their requests through
them for approval – weeks ahead of time.
2.Can analyze & foresee the future requirements of the
enterprise.
3.Can introduce new technologies and get the $$ to
implement them.
4.CTO that supports planning.
If you are a PM for an IT department which does not have
management support, get another job. You are there for
political reasons (or worse).
But all is not lost: PMs can help
• Order out of chaos
• Structuring the ‘type’ of work
• Documentation
• Work with managers to structure their expectations
• Let the technical people do the “technical work”
• Figure out the culture
• Introduce tools
• Keep Meetings Short
But all is not lost: PMs can help
Anything NON-technical – give to the PM
• Planning
• Support contracts
• Anything to do with a spread sheet
• Write Reports
• Get Quotes
• Coordinate Meetings
• Projections
• Communication with Management
• Budgets
• You would be surprised what turns up….
Typical IT Work Categories
•Fight Fires – unexpected work
•User Services: Small work requests – tickets – some % of
expected work
•Upgrading existing services - must be planned
•Installing new services – must be planned – deadlines
•Care and feeding of site – e.g. backups, infrastructure
All in all, lots of work users do not know about…
Planning, testing, configuration, stress testing, etc…
A PM’s first goals:
#1 Understand the work THIS department does
Take a big view of the work
• How much unexpected?
• How does the work come in?
• How is the work prioritized?
• How is the work be categorized?
• Does the ticket system work?
• Is everything in different mailboxes?
• Is there a lot of unfinished work?
• Do the people have the correct skills?
• Don’t gossip
A PM’s first goals:
#2 Understand the culture of the company & group
•Very Structured or Organic (unorganized)?
•How are decisions made?
•How are projects developed? Is the IT group involved?
•Is the technical lead the manager?
•Is the manager only interested in their spreadsheets?
•Does the 500 pound gorilla co-operate?
•Is there a “us vs. them” culture?
•Is there a ‘personality’ problem in the group?
•Is there a class system within the group?
•History of past PMs?
•How is IT department funded?
•Don’t hit anyone
A PM’s first goals:
#3 Determine what can be done
• List the problems you can solve (keep it private)
• Feel comfortable there are problems that take years to fix
• Make allies
• Have short conversations with managers proposing solutions
- consider funding – anticipate their questions and have
answers.
• Don’t yell at anyone ;-)
The PM’s Job is to Co-ordinate
• The PM must conform to the cultural methods of work
• Think creatively
• The boss that only understood spreadsheets
• The engineer that was too busy to meet with me
• The management group that communicated best using
PowerPoint – “just send me a deck”
• Microsoft - *very* regimented – process - process
• Startup – I went to the HW store every day….
Change Through Evolution
•People change if they see a benefit for them – not the
company
•Listen to the complaints – are their solutions hidden in
the complaints?
•Listen to management – Their view is NOT the same
as the workers’ view
•Don’t be afraid to propose a change for a short time
“just to see how it works”
• Then don’t be afraid to kill it if it did not work
• The reasons it died are part of your next solution
Steal any good idea to get organized!
• Agile SW development methodologies can be used for
projects – like installing a new technology
• DevOps methodologies can fix deployment issues
• ITIL deployment process can fix “bugs in production
code”
• Daily Scrums improve communication – don’t need to
standup
• Do drawings of projects - feature based development
• Calendars – online google is goodle
• Write documentation – put it in one place
Typical IT Work Categories - Revisited
•Fight Fires – unexpected work Budget time for the unexpected
ITIL escalation
•User Services: Small work requests – tickets – some % of
expected work Assign to one person?
•Upgrading existing services - must be planned Perfect for Agile
•Installing new services – must be planned – deadlines Agile
•Care and feeding of site – e.g. backups, infrastructure ITIL
All in all, lots of work users do not know about…
PM should tell them – inform users of plans far in advance
Planning, testing, configuration, stress testing, etc…
PM’s weekly progress reports
IT departments: Choose your PM carefully
MUST MUST MUST understand sysadmin speak
If not, realize you will need to explain EVERYTHING
to them. Better to make them go away for a week and
read “The Evi Book”
A large part of PM is human engineering – getting
people to work TOGETHER towards a common goal
If they cannot work together – separate the work into
distinct chunks – or knowledge areas – get management
to put co-operation as a criteria for a raise
Tools I LOVE
• https://www.atlassian.com/
• JIRA – a great trouble ticket as well as a
development ticket system
• Confluence – a wiki ++ which ties into JIRA
• Confluence’s Team calendar
• Agile support
•HUMOR
•Spread Good Karma
•Large Wall Calendar
•Don’t give up, but if you hate work – start looking
Helpful Books & Places
•Time Management for System Adminstrators by Thomas
A. Limoncelli
•The Evi Book: UNIX and Linux System Administration
Handbook by Evi Nemeth et all
•The Mythical Man-Month by Fredrick P. Brooks
•PMP examinations pmi.org
• ITIL frameworks just google…
• LOPSA
•LISA BOFs
Closing Advice
An IT Project Manager MUST understand what is going on.
Read books at night weekends just an hour or so will help
immensely.
Try not to stab anyone
Try to think differently
Steal any good idea
Listen to people - esp. what they like and don’t like
Questions?
Download