2012 bad camp-project management tools and organization-v4

Preview:

DESCRIPTION

As many Drupal development firms continue to evolve and mature, we often run into many management issues involved with the growing pains. One of the biggest of those issues is effective and efficient project management. In this session, we will discuss tools and processes to use throughout the development project and beyond, as well as best practices to help your organization go and stay agile. We will delve into Redmine as an example of a highly flexible, open source project management tool for supporting agile development and support. We will cover tools in the following categories: Communication and collaboration Internal processes Client reporting Ticketing and task management for development and support These tools help us: Run all operational aspects of a 30+ person Drupal shop Stay organized and agile Communicate amongst team members Remotely manage distributed, virtual teams Document our work Track our time Provide clients with visibility and transparency The goals of this session are to help attendees understand some of the tools that are out there to improve project management and how to execute on their project more efficiently by using the tools to support agile development.

Citation preview

Project ManagementTools and Organization

About Andy

• Presenter• Andy Kucharski

• @akucharski

• Promet Source• Founder

• Engagement Management

• @prometsource

About Promet

• Focus on open source software and Drupal• Founded in 2003• Offices in the US (Chicago, San Jose)• Some of the faces of Promet…

Objectives

• Understand project management and organizational challenges

• Review some of the tools out there being used for project management, client communication, and business management

• Learn how to execute more efficiently and be agile by using an integrated tool set

• Examples using Redmine for:• Agile project management

• Client management

• Product management

• Business management

The Laundry List of Challenges

• Time tracking• Bug reporting and tracking• Document/file storage/sharing• Client reporting/time reporting• Issue prioritization• Team collaboration• Distributed teams• Work in multiple time zones• Story/effort/task estimations• Knowledge sharing• Joint dev teams with client

• Scheduling/calendaring• Utilization• Code review• SCM integration• Maintaining backlogs• Onboarding resources• Wiki/documentation• Project progress tracking• Gantt charts• Burndown charts• And more…

Four Quadrants

Wikis, Documents

Stories, Issues, Git Repositories

Time Tracking, Commit Activity,

Workflow Management

Status, Activity Stream

Existing Tools: Open Atrium (Drupal)

Existing Tools: Basecamp (User Friendly)

Existing Tools: Atlassian Products (Suite)

Jira Confluence

GreenHopper Stash Fisheye

TeamCalendars

Existing Tools: Assembla (SaaS Agile)

Existing Tools: Bugzilla (Bug Tracking)

Existing Tools: Mantis (Old School)

Existing Tools: Harvest (SaaS User Friendly)

•[Harvest]

Existing Tools: FreshBooks (SaaS)

Existing Tools: QuickBooks (Accounting)

Existing Tools: GitHub (SaaS Developer Friendly)

The Problem

• Many tools address individual problems very well, but do not solve multiple problems at one time

• Having one place where you can integrate as many pieces as possible provides significant gains in efficiency, quality, and collaboration

Promet's High Level Requirements

• Open Source• Secure• Extensible• Usability (for us and our clients)• Self Hosted

Redmine Overview

• Flexible project management web application• Open Source• Ruby on Rails• Plugin style extensions (think modules)• Active (5300+ repos related to Redmine on GitHub)

• Used by wide variety of people and organizations• ChiliProject community fork

Redmine Main Features

• Multiple projects support

• Flexible role based access control

• Flexible issue tracking system

• Gantt chart and calendar

• News, documents & files management

• Feeds & email notifications

• Per project wiki

• Per project forums

• Time tracking

• Custom fields for issues, time-entries, projects and users

• SCM integration (SVN, CVS, Git, Mercurial, Bazaar and Darcs)

• Issue creation via email

• Multiple LDAP authentication support

• User self-registration support

• Multilanguage support

• Multiple databases support

Redmine: Issue/Ticket Tracking

Redmine: Issue/Ticket Tracking

Redmine: Gantt

Redmine: Workflow for Issue Trackers and Roles

Redmine: Role-Based Permissions

Redmine: Source Code Repo Viewer and Diff

Redmine: Spent Time

Redmine: Workflow for Issue Trackers and Roles

Redmine: Customize Issue Trackers

Redmine: Customize Issue Status

Redmine: Customize Workflow

Redmine: Custom Fields on Almost Every Object

Redmine: Git Integration

Redmine: User Management

Redmine: Views/Queries Customization

Project and Agile Perspective

Johnnie

Agile Organization of Stories and Tasks

Agile Story Board

Redmine: Git

Source Code Ties to Tickets

Project Information at a Glance

Retrospective Metrics

Retrospective Metrics

Client and Product Perspective

Jay

Manage Everything for a Client

• Keep all info for a Client’s projects in one place• “Product” lifecycle approach• Leverage project hierarchy in Redmine

• Client account (top level project)• Support (subproject)• Main Site Migration Project A (subproject)• Intranet Project B (subproject)• Ecommerce Integration Project C (subproject)

• Copy existing project• Create project templates• Types of projects (agile, audits, support…)

• Prefab issues/tasks• Common info structure in wiki• Continuous improvements

Use Project Templates

Client Access and Roles

Manage Internal Projects and Products

• All projects in Redmine managed in same way• Make onboarding whether internal or external consistent

• Internal projects and tasks available for free time• Products that we are building (product management)• Rapid scoping and estimating new projects• Our own Redmine improvements

• Private Notes

Integration

Business Management Perspective

Andy

Projects Activity View

Time Reporting

Time Reporting

Company Reports – Support Snapshot

Company Wide Resource Scheduling

Company Wide Resource Scheduling

Gains from 360 View

•No Bench time policy – everything is a project•Ability to better scope projects•Invoicing, Burn Rates, time analysis•Ability to integrate with third party tools and extend•Consolidation of all info into one system

•More information•Easier Access•Data Mining

Questions?www.prometsource.com

andy@promethost.com

Twitter: @akucharski

@PROMETSOURCE

Jay Uhlinger
add jay and johnnie

Recommended