I'm looking for anyone who has an interest in project management; workable 
Python design and programming skills; and wants to code for an open source 
Project Management system.

Having used Redmine, Launchpad, Trak, OpenProj, and so on, I've found there's 
no good PM tools.  Microsoft Project and Oracle PM are even kind of crap.

The issue I have is that none of these are really in line with modern PM.  The 
PMBOK and various practice standards outline something very different from 
what's available.  For example:  Redmine has the concept of Projects and 
Subprojects; but it doesn't have the concept of a Program, and instead follows 
the common open source model by which a "Project" is all on-going effort of a 
deliverable.

Calling "Mozilla Firefox" a project is technically incorrect.  "Mozilla 
Firefox" is the deliverable of a Program (called Mozilla Firefox), an ongoing 
effort to meet a business need (in this case, the "business need" is the 
collective desire to produce a Web browser).  Mozilla Firefox 18 is a Project; 
Mozilla Firefox 19 is a Project; and so on.  More Projects will be added to the 
Program; long-standing bugs in Mozilla Firefox are Program Issues, and a 
particular Project (i.e. Mozilla Firefox 21) may include as a requirement 
"Correct and close bug #55995" or such.


I've been trying to write a technically correct Project Management software 
system that adheres to the PMBOK 5e (released January 2013), but I am a crappy 
software designer.  I can code, some, but I don't know Python well enough; I 
don't know how to accomplish some design aspects (like modularity--the ability 
to extend via drop-in plug-ins instead of by tightly integrated code) and I 
don't know much about software design at all anyway.  I know how to translate 
procedural concepts into code in any language I can code in to the best of my 
understanding of the language--some people think this makes them good 
programmers; they create absolute garbage, and I have no intent of being that 
guy.  I'll code, but I'll code based on the design of somebody actually 
competent, thanks.



So I guess what I want is to find people who are:

 * Interested in Project Management as a concept
 * Skilled in application design and Python
 * Interested in putting these two things together and contributing to a 
program to develop a technically correct Project Management software suite

In open source software development, the primary compensation is 
self-enrichment:  Developers are attracted by the chance to learn something 
new, to enhance their skills, to contribute to something they feel is 
worthwhile, or to work on something they simply enjoy working on.  Thus I need 
to find people who go, "That looks interesting."

Where do I find?





>From a planning perspective, the initial goal is to create the four main 
>modules:

 * Project Management
 * Program Management
 * Portfolio Management
 * Work Breakdown Structure

Projects are a temporary effort to produce a deliverable.

Programs are an ongoing effort to address a business or organizational need, 
and may include other programs and projects.

Portfolios are collections of Projects, Programs, and Portfolios under the 
control of an organization.  A business may have its Portfolio, containing its 
Marketing and MIS Portfolios, which each contain Programs (for Marketing or 
MIS) that contain Projects and other Programs.  A department may even have 
sub-portfolios:  the MIS Portfolio may contain Networking Portfolio, 
Programming Portfolio, and Systems Portfolio for the three departments under 
MIS.

Each Project has a Work Breakdown Structure.  Every element is a deliverable, 
so something that must actually exist.  The Project is itself the sole 
top-level element, for example:

1. Work Breakdown Structure Module

The process of Decomposition is used to break down the project into manageable 
work.  Work is "Manageable" when it can be understood; breaking it down further 
gives no gain and causes increased management overhead, so is wasteful.  There 
are many decomposition strategies such as top-down, bottom-up, brainstorm, and 
fishbone; they are usually combined (I favor top-down, then bottom-up).

The first level of decomposition can go in any direction.  It is often 
recommended as decomposition by phase (Design, Implementation, Testing...) or 
by major deliverables (Drive System, Engine, Wheels, Suspension...), or 
combination means.

1. Work Breakdown Structure Module
1.1 Project Management
1.2 Design
1.3 Implementation
1.4 Testing
1.5 Release

These are further broken down.

1. Work Breakdown Structure Module
1.1 Project Management
1.1.1 Work Breakdown Structure
1.1.2 Meetings
1.2 Design
1.2.1 Document Schema
1.2.2 UI
1.2.2.1 Outline View
1.2.2.2 Table View
1.2.2.3 Graphical View
1.3 Implementation
1.3.1 Back-End
1.3.1.1 Storage Class
1.3.1.2 Data Rendering
1.3.2 Front-End
1.3.2.1 Views
1.3.2.1.1 Outline View
1.3.2.1.2 Table View
1.3.2.1.3 Graphical View
1.4 Testing
1.5 Release
1.5.1 Git Branch Merge
1.5.2 Git Tag

etc.


The reason I want these features as the earliest target is because then it 
becomes a useful planning tool.  A Portfolio can be created with a Program to 
track each Project--the implementation of each module, further integration, 
code clean-up efforts, etc.--and the work can be broken down in the WBS module. 
 That means the WBS module can be used to plan the Issue module; then the Issue 
module can be used to track any Project Issues in further modules.

Eventually I want extension beyond a blunt PMI-focused PM tool into something 
that's targeted at development.  Interesting features would be the separate 
tracking of Git repositories, repository management, and the association of Git 
branches with Projects and WBS Work Packages.

Anyone interested?
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to