From mboxrd@z Thu Jan 1 00:00:00 1970 From: Axel Kielhorn Subject: Re: Testers / Feedback wanted: Gantt charts via org-gantt.el Date: Sun, 31 May 2015 15:13:19 +0200 Message-ID: References: <1432985621669.70644@vis.uni-stuttgart.de> Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2098\)) Content-Type: multipart/mixed; boundary="Apple-Mail=_FFB72107-58DB-414E-A5A6-9B582A3B11CD" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:48486) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yz33Q-0002oY-Im for emacs-orgmode@gnu.org; Sun, 31 May 2015 09:13:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Yz33L-0005O7-TJ for emacs-orgmode@gnu.org; Sun, 31 May 2015 09:13:28 -0400 Received: from mo6-p00-ob.smtp.rzone.de ([2a01:238:20a:202:5300::7]:14988) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yz33L-0005Nn-FH for emacs-orgmode@gnu.org; Sun, 31 May 2015 09:13:23 -0400 Received: from [192.168.178.36] (p5790DA53.dip0.t-ipconnect.de [87.144.218.83]) by smtp.strato.de (RZmta 37.6 DYNA|AUTH) with ESMTPSA id R031e7r4VDDJRGG (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (curve secp521r1 with 521 ECDH bits, eq. 15360 bits RSA)) (Client did not present a certificate) for ; Sun, 31 May 2015 15:13:19 +0200 (CEST) In-Reply-To: <1432985621669.70644@vis.uni-stuttgart.de> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Org-Mode Mailing List --Apple-Mail=_FFB72107-58DB-414E-A5A6-9B582A3B11CD Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 > Am 30.05.2015 um 13:33 schrieb Bernhard Schmitz = : >=20 > Hi, >=20 > my org-gantt.el is now in a usable state. It creates gantt charts via = pgfgantt directly from headlines in org mode, using deadlines, = schedules, effort estimates and (optionally) clocked time. Sounds like a good idea. I tried writing pgfgantt manually but once I finished updating the = chart, it was already out of date. Getting the information from org would be fine. I tried org-gantt on a current project and ran into one problem: I track progress with * Task [%] and * Task [/] Of course the % causes a problem when exporting to LaTeX. I suggest to either ignore [%] and [/] or use them as an alternative to = show how much is completed. It is probably a better metric than hours worked. pgfgantt doesn=92t handle \ganttbar commands without start and end date. Therefor I can=92t export an incomplete chart. You may want to set the entries with missing scheduling information to = the first day of the chart. (Maybe mark the task or label with a color to indicate that they are = incomplete.) (See below for some different ideas.) A two month chart doesn=92t fit into \textwidth. I wrapped it into a sideways environment (provided by rotating.sty), = maybe a sideways option? For a project with 2000 person hours[1] I=92ll probably need a separate = export and print it on A0 paper[2]. Some kind of scaling would be fine (show weeks / month instead of days). For a huge project it may be nice to limit the levels printed: Just Module 1 - 8 for the Management and each Module with the submodules = for the project leader. Similar to maxlevel in the clocktable. I=92m not sure about inheritance: If I have a deadline for a task, should the subtasks inherit that = deadline unless an explicit deadline is given? If I have a deadline for a task and efforts for all subtasks, should the = task inherit that effort? That way I can give a deadline to the task and estimate efforts to get = an initial chart. Using this chart I can divide the subtasks between workers, rearrange = the deadlines for the subtasks and finally define a scheduled date for = the main task. This gives me another idea: Filter / color by tag. Print only tasks tagged :Axel: to show my workload, and print tasks = tagged :Sam_One: to show tasks I have delegated. Color tasks by tags to show who is assigned, white for unassigned tasks. Axel [1] A 2000 PH project is not my usual project size, a few hundred is = more common. [2] I have access to an A0 printer but I usually draw with felt markers = on (literal) wallpaper. Much faster for an initial design and I can use =84real=93 cut and = paste:-) --Apple-Mail=_FFB72107-58DB-414E-A5A6-9B582A3B11CD Content-Disposition: attachment; filename=Gantt-ECM.org Content-Type: application/octet-stream; name="Gantt-ECM.org" Content-Transfer-Encoding: 7bit #+LANGUAGE: de-de #+OPTIONS: toc:nil #+OPTIONS: tags:nil #+OPTIONS: todo:nil #+LATEX_HEADER: \usepackage{pgfgantt} * Module [75%] DEADLINE: <2015-05-31 Sun> :PROPERTIES: :ID: gantt :END: ** DONE Modul 1 CLOSED: [2015-05-31 Sun 11:49] ** DONE Modul 2 CLOSED: [2015-05-31 Sun 11:49] ** DONE Modul 3 CLOSED: [2015-05-31 Sun 11:49] ** DONE Modul 4 CLOSED: [2015-05-31 Sun 11:49] ** DONE Modul 5 CLOSED: [2015-05-31 Sun 11:49] ** DONE Modul 6 CLOSED: [2015-05-31 Sun 11:50] ** STARTED Modul 7 [40%] :Axel: :LOGBOOK: - State "STARTED" from "" [2015-05-31 Sun 11:50] :END: *** DONE Submodule 1 CLOSED: [2015-05-31 Sun 11:50] :LOGBOOK: - State "DONE" from "" [2015-05-31 Sun 11:50] :END: *** DONE Submodule 2 CLOSED: [2015-05-31 Sun 11:50] :LOGBOOK: - State "DONE" from "" [2015-05-31 Sun 11:50] :END: :PROPERTIES: :Effort: 40:00 :END: :PROPERTIES: :Effort: 0:10 :END: *** STARTED Submodule 3 [3/4] :LOGBOOK: - State "STARTED" from "" [2015-05-31 Sun 11:50] :END: :CLOCK: CLOCK: [2015-05-31 Sun 10:00]--[2015-05-31 Sun 14:18] => 4:18 :END: :PROPERTIES: :Effort: 80:00 :END: - [X] Task 1 - [X] Task 2 - [X] Task 3 - [ ] Task 4 *** STARTED Submodule 4 :LOGBOOK: - State "STARTED" from "" [2015-05-31 Sun 11:50] :END: :PROPERTIES: :Effort: 8:00 :END: *** TODO Submodule 5 :PROPERTIES: :Effort: 8:00 :END: ** STARTED Modul 8 :Sam_One: :LOGBOOK: - State "STARTED" from "" [2015-05-31 Sun 11:50] :END: * Zeitplan #+BEGIN: org-gantt-chart :id "gantt" \begin{ganttchart}[time slot format=isodate, vgrid={*1{black},*4{dashed},*2{black}}]{2015-05-31}{2015-05-31} \gantttitlecalendar{year, month=name, day}\\ \ganttgroup[group left shift=1.5604166666666666, group right shift=-0.0]{Module [75%]}{}{2015-05-31}\\% -- 5d 17:00 -(0d 17:00)- -- 2015-05-31,08:00 \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Modul 1}{}{}\\% -- -- \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Modul 2}{}{}\\% -- -- \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Modul 3}{}{}\\% -- -- \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Modul 4}{}{}\\% -- -- \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Modul 5}{}{}\\% -- -- \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Modul 6}{}{}\\% -- -- \ganttgroup[group left shift=1.5604166666666666, group right shift=0.5604166666666666]{Modul 7 [40%]}{}{}\\% -- -(0d 12:29)- -- \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Submodule 1}{}{}\\% -- -- \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Submodule 2}{}{}\\% -- 1d 17:00 -- \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Submodule 3 [3/4]}{}{}\\% -- 3d 09:00 -(0d 09:00)- -- \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Submodule 4}{}{}\\% -- 0d 09:00 -- \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Submodule 5}{}{}\\% -- 0d 09:00 -- \ganttbar[bar left shift=1.5604166666666666, bar right shift=0.5604166666666666]{Modul 8}{}{}\\% -- -- \end{ganttchart} #+END: --Apple-Mail=_FFB72107-58DB-414E-A5A6-9B582A3B11CD Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=iso-8859-1 --Apple-Mail=_FFB72107-58DB-414E-A5A6-9B582A3B11CD--