Using PFT to build PFT from scratch: project

I've decided not to use Trac (which comes installed automatically with my repository instance) but PFT itself to build PFT. That way, its functionality will be based on its own genesis.

You know: project -> roles -> user stories -> releases and iterations -> planning -> tasks/defects/change requests -> build -> test and all the viewing and editing that goes on all the while...

Create PFT user roles on the system

Create the project content type

Create a couple of projects

Support each user specifying a  current projects list

Build info

Create PFT user roles on the system

  • product owner

  • team leader
  • team member
  • create some example users

Create the project content type

So, ...must ...create ...project PFT said to itself.

  • Create content type project with just Title and Body, called Project
  • No, wait, import Project type from legacy PFT! Should do splendidly for now.
    • You do realize you are going to import a CCK Drupal 5.x into a Drupal 6.x instance, don't you? Just do it! Hmm, would help if you installed Date modules...
      $ drushcli pm install date --svnsync --svncommit --svnmessage="drush installed date"
      Project date successfully installed (version 6.x-2.0-rc6).
      Project committed to Subversion successfully
      victorkane@victorkane:~/Work/AWebFactory/projects/PFT/Washington/www$
    • Yeah, but CCK for Drupal 6 chokes on CCK exported from Drupal 5. But there is still a way out! Upgrade the old legacy PFT to Drupal 6 then you can easily harvest everything... OK, later
  • Created very simple project content type:

    Label Field Field type
    Name title
    Short name

    field_project_short_name Text
    Owner

    field_project_owner User reference
    Team leader

    field_project_team_leader User reference
    Estimated start and ending dates

    field_project_est_date Date
    Notes

    field_project_notes Text

    Note: The team members will be the sum of all those signed up to work on user stories and tasks.

  • Set up content type and field permissions for  team leader / project owner.
  • Set up content permissions so anonymous users can see the demo site. Later on OG access will be used so there can be private (premium?) projects.

Create a couple of projects

  • Log in as team leader
  • Created first project
  • Log in as product owner
  • Create PTF project
  • Create second project
  • Make simple river-of-projects view with url "projects" as default front page (installed advanced help module while I was at it).

Support each user specifying a current projects list

Make PFT a current project

  • Need variable "current project" and make Project Flow & Tracker current project?
  • Flag? added token
  • Each authenticated user can now flag a project to include it in her navigation menu item "My current projects"
  • Changed river of projects (rop) view, by adding relationship with current user current projects flag, to sort descending (differently for each user) according to most recently selected current project.

Build: Changeset #12 - initial implementation of project business object; basis of cck, views, date, advanced_help, token and flag modules