Zeiterfassung für Softwareentwicklung

Hallo miteinander,

mich würde mal interessieren welche Software ihr einsetzt um zu protokollieren wie viel Zeit ihr in welches Projekt, und für was genau, investiert habt (vor allem im Beruf).
Was sind für euch wichtige Features welche man, vorallem in der Softwareentwicklung, an die Zeiterfassung stellt?
Nutzt jemand solche Stopuhr-Anwendungen wo man nur anklickt was man gerade macht und die Stopuhr läuft los und merkt die Zeit automatisch bis der “Task” gewechselt wird?
Oder tragt ihr alle Zeiten immer selbst

Hintergrund: Wir verwenden eine selbstgeschriebene Software, aber oftmals werden viele Zeiten nicht (ganau) eingetragen. Nun interessieren mich Ideen wie man die Usability erhöhen kann, so dass die Software intensiver genutzt wird.

Hab mal von GIT für diesen Zweck gehört. Die Commits sind ja meist vorhanden und mit Timestamp versehen. Dann braucht es nur noch eine Software die da mal drüber schaut.

JIRA hat auch ne Zeiterfassung auf die Issues, muss man aber manuell eintragen…

Ich hab mir vor langen mal ne Hardwarelösung überlegt, aber nie verfolgt.

Bei uns auch eine “selbstgeschriebene” Software. Ich hab mal für mich Timer genutzt aber die bringen es mir auch nicht. Also wenn ich ein Projekt wechsel trage ich die gerade getätigte Arbeit für ein.

[QUOTE=HoaX]Hallo miteinander,

mich würde mal interessieren welche Software ihr einsetzt um zu protokollieren wie viel Zeit ihr in welches Projekt, und für was genau, investiert habt (vor allem im Beruf).
Was sind für euch wichtige Features welche man, vorallem in der Softwareentwicklung, an die Zeiterfassung stellt?
Nutzt jemand solche Stopuhr-Anwendungen wo man nur anklickt was man gerade macht und die Stopuhr läuft los und merkt die Zeit automatisch bis der “Task” gewechselt wird?
Oder tragt ihr alle Zeiten immer selbst

Hintergrund: Wir verwenden eine selbstgeschriebene Software, aber oftmals werden viele Zeiten nicht (ganau) eingetragen. Nun interessieren mich Ideen wie man die Usability erhöhen kann, so dass die Software intensiver genutzt wird.[/QUOTE]

Ich denke nicht das die Zeiten wg. der Usability nicht ganz genau erfasst werden. Bei uns wird ein kommerzielles Produkt verwendet. Dort gibt es erstellbare Projekte, die lassen sich weiter aufgliedern nach verschiedenen Punkten, wie z.B. Dokumentation, Fehlerbehebung etc. pp. Die Einteilung ist von den AN nicht frei wählbar. Die Zeiten selbst, naja die werden recht grobgranular erfasst, also mehr nach eigenen Ermessen und auf Vertrauensbasis. Es ist jedem AN zu zumuten mal auf die Uhr zu schauen wenn er eine Aufgabe beginnt die länger dauern wird und kundenrelevant ist. Je nach Projekt kann es aber eine Anweisung geben bestimmte Dinge dezidierter auszuführen.
Es wurde mal versucht von der Chefetage durchzusetzen das Alles bis ins kleinste Detail erfasst wird. Den anschließenden Mob mit Mistgabeln und Fackeln hatten die Vorgesetzten wohl unterschätzt, so dass die Idee ganz schnell verworfen wurde. Der Hauptgrund war nicht nur zusätzlicher administrativer Aufwand sondern eher der Beigeschmack von “Überwachungsstaat” und Leistungsbewertungsmethoden à la Microsoft und Co.

Moin,

durch Mylyn kann das Eclipse auch von Haus aus. Das lässt sich in den Preferences unter Mylyn -> Tasks -> “Track time spent within Eclipse when a task is actice” aktivieren. Anschließend wird für jeden Task die Zeit erfasst. Ob einer der vielen Connectoren die Zeiten auch automatisch irgendwohin melden kann, weiß ich allerdings nicht, ich würde das auch nicht wollen!

Viele Grüße
Fancy

Ich unterschreibe am Ende des Monats einen Zettel, auf dem irgendein Verwaltungsfuzzi irgendwelche realitätsungebundenen Zahlen so zusammengelogen hat, dass sich niemand über irgendwas beschweren kann (falls mal sowas wie ein Prüfer kommt (falls es sowas gibt)).

Hm. Der Rest ist etwas länger geworden, und keine Antwort auf die Frage, ich pack’das mal ein…

Offtopic??? Hm…
[spoiler]
Mal unabhängig davon: Ich finde Zeiterfassung bei der Softwareentwicklung nicht nur „fragwürdig“, sondern würde sogar so weit gehen, sie in weiten Teilen als sinnlos zu bezeichnen. Wenn jemand von morgens um 9:00 bis mittags um 17:00 in seinem Büro am Rechner sitzt und die IDE offen hat und 5000 Zeilen Code tippt und nebenbei die Stoppuhr läuft, kann der trotzdem unproduktiver sein (oder - mein Bedauern, für die, die wissen, was ich meine - sogar kontraproduktiv) als jemand, der sich zuhause in einen gemütlichen Sessel flezt, die Füße hochlegt, an die Decke starrt und dabei über ein Problem nachdenkt (um dann vielleicht am nächsten Tag innerhalb von 20 Minuten mit 500 Zeilen code etwas zu erreichen, was besser ist, als das, was der andere in 8 Stunden und mit 5000 Zeilen erreicht hat - in Anlehung an das Zitat, das gelegentlich Albert Einstein zugeschrieben wird: „If I had only one hour to save the world, I would spend fifty-five minutes defining the problem, and only five minutes finding the solution“ - wobei letzteres das Hinschreiben des Codes ist :smiley: ). Oder, um mal dabei zu bleiben: Einen Softwareentwickler nach „Zeit“ zu bezahlen ist IMHO ähnlich sinnvoll bzw. eben sinnlos, wie ihn nach „Anzahl der geschriebenen Lines of Code“ zu bezahlen. Und selbst wenn’s darum ginge: Die besten Ideen hab’ ich oft morgens beim Duschen. Und was jetzt? Laminierte Zeiterfassungsbögen und wasserfeste Tinte? :smiley:

Ja, sorry, hat mit der ursprünglichen Frage nicht direkt zu tun. Die Frage war ja schon so formuliert, dass klar wurde, dass das Ziel eine „intensivere Nutzung des Zeiterfassungstools“ ist, und nicht … „sinnvollere Nutzung der Zeit“ oder so. Hinterfragen ist nicht immer erwünscht, und bedauerlicherweise viel zu selten sinnvoll. Man kann ja selbst zu solchen Themen websuchen… autonomy mastery purpose - Google Suche
[/spoiler]

Denn einzigenen Sinn einer Zeiterfassung bei der Softwareentwicklung sehe ich bei der Abrechnung mit dem Kunden, das wars auch schon.

Ja bei uns gibt es viele Kundenprojekte, so dass das schon irgendwie sein muss. Man kann ja nicht alles als Festpreis machen.
Aber auch als Entwickler frage ich mich manchmal selbst am Ende der Woche wie es sein kann dass ich insgesamt nur 8h verbucht habe - also nur ein fünftel des möglichen. Zeiterfassung dient ja nicht nur dazu um Druck zu machen sondern auch um Prozesse zu optimieren, so dass ich sehen kann wo viel Zeit drauf geht obwohl es doch triviale Aufgaben sind. Softwareentwicklung ist ja nicht nur Programmieren, sondern auch Meetings, Doku schreiben etc.
Die Usability spielt gerade bei der Prozessoptimierung eine wichtige Rolle, denn wenn ich mich für ein Telefonat mit XY erst duch 10 Dialoge hangeln muss dann werde ich das kaum eintragen wenn es kürzer als 10 Minuten ist. Dennoch reist das Telefonat einen ja aus dem Denken so dass effektiv mehr Zeit verloren geht weil man sich in die vorige Aufgabe erst wieder rein denken muss. Beantwortet man am Tag 10 solcher Anrufe ist schnell der halbe Tag unproduktiv vertan ohne das eine Zeit erfasst wurde.
Daher eben die Idee hier mal nachzufragen wie ihr das Handhabt - egal ob ihr Zeiterfassung mögt oder nicht.

Bei uns benutzen einige „Hermann“ oder so. Das fragt dich alle 15 Minuten was du gerade machst. Wenn man es konsequent macht zeigt es am ende genau was man gemacht hat.

Boah… ich bin ja nun kein Softwareentwickler, aber ich sage mal, dass so etwas bei geistiger Arbeit vor allem eines macht, nämlich unproduktiv.
Wenn ich mich in eine Arbeit vertieft habe, dann stört man mich dabei besser nicht.
Wer sich alle 15 Minuten fragen lässt, was er gerade macht, der braucht das vielleicht, damit er nicht einschläft und daran erinnert wird, dass er etwas zu arbeiten hätte.
Da besteht dann der wesentliche Teil der “Produktivtät” darin, etwas zu erfassen, was man sehr ineffizient tut, weil man wissen will wie effizient man ist… oder so…

Das würde mich super nerven. Es gab irgendwo auch mal eine Abhandlung darüber, dass man bis zu 20 Minuten braucht, um wieder an dem Punkt zu sein, an dem man aus seiner Arbeit herausgerissen wurde. Leider kann ich mich nicht mehr an den Verfasser erinnern.

Ich finde Vertrauensarbeitszeit ist immer noch die beste Methode für interne Mitarbeiter. Zeiten auf einzelnen Tasks für ein Projekt (bezahlt aus einem Topf) zu pflegen ist nicht produktiv, deshalb schätzt man in Scrum z.B. keine Arbeitstage, sondern Aufwandspunkte oder Storypoints. Und wenn man für unterschiedlich fakturierbare Projekte arbeitet, sollte man sich den Tag eh einteilen und nach dem Themenwechsel die Zeit erfassen.

In diesem Bereich kann ich das freie Softwareprodukt Kimai empfehlen (http://www.kimai.org/).

wir nutzen http://www.ehour.nl. Wir tragen dort in etwa ein wofuer wir unsere Zeit gebrauchen (etwa 10% da 50% da, Rest dort). Keine Stoppuhr oder sonstiges.

Bzgl Diskussion ob sinnvoll oder nicht, Fakt ist, die Finanzabteilung ist nun mal darauf angewiesen, irgendwie muss die Firma erklaeren was wielange wofuer gemacht wurde. Allen voran wenn man mit Kunden ueber Zeiten verhandelt hat. Ob man in der gebuchten Zeit was sinnvolles macht ist nicht Aufgabe der Zeiterfassung sondern des Projektes.

Wem muss die Firma etwas erklären? Sich selbst wohl kaum. Für interne Arbeiten muss man also keine Zeiten erfassen. In einem Projekt selbst sollte es reichen, zu erfassen, dass man dafür arbeitet. Was man genau macht sollte den Kunden eigentlich kaum interessieren.

Wenn bei uns Neukunden eine genaue Aufschlüsselung wünschen, wird der Posten der Zeiterfassung gesondert aufgenommen. Die meisten Kunden rudern dann zurück, weil die Zeiterfassung dann ein nicht gerade kleines Maß an Arbeit darstellt (und vor allem skaliert es mit den Projektteilnehmern).

[QUOTE=Sym]Wem muss die Firma etwas erklären? Sich selbst wohl kaum. Für interne Arbeiten muss man also keine Zeiten erfassen. In einem Projekt selbst sollte es reichen, zu erfassen, dass man dafür arbeitet. Was man genau macht sollte den Kunden eigentlich kaum interessieren.

Wenn bei uns Neukunden eine genaue Aufschlüsselung wünschen, wird der Posten der Zeiterfassung gesondert aufgenommen. Die meisten Kunden rudern dann zurück, weil die Zeiterfassung dann ein nicht gerade kleines Maß an Arbeit darstellt (und vor allem skaliert es mit den Projektteilnehmern).[/QUOTE]

Erklär das meiner Firma :wink:

Der Vorteil liegt auf der Hand, wieviel Zeit wird für interne Arbeit verwendet, was kann man konsolidieren, verbessern etc.

Transparenz ist alles. Wenn der Geschäftsführung bewusst wird, wie viel Zeit beim Zeiterfassen verloren geht, sollte es eigentlich keine Probleme mehr geben, oder? :wink: Natürlich ist so etwas leichter gesagt als getan.

Für den angestellten Programmierer ist das eine Aufgabe die

  • wertvolle Zeit stielt
  • überhaupt nichts zum angepeilten Ergebnis beiträgt
  • schwierig ist da man selten nur an einer einzigen Aufgabe/Projekt arbeitet.

Das allerbeste Tool dass ich dafür bis jetzt gefunden habe war Notepad.exe. Warum?

  • Völlig freie und damit flexible Notizgestaltung
  • Jederzeit nachbesserbar
  • Timestamps jederzeit mit F5 einfügbar um Aufgaben zu beginnen oder zu beenden.

Noch mehr zum ‘Sinn’
[spoiler]
Dass meistens irgendwelche Verwaltungsstrukuren (in unterschiedlicher Größe und Form) existieren, mit Buchhaltern, die gerne wissen möchten, ob man denn nun 3:16 Stunden oder 3:21 Stunden an einer Aufgabe gesessen hat (und wie viel Zeit davon man bei Zigarettenpausen oder auf der Toilette verbracht hat), ist klar. Deswegen bin ich mit der angedeuteten Methode (dass so ein Verwaltungsfuzzi eben plausibel aussehende Zahlen zusammenschustert) gar nicht unzufrieden. Im Gegenteil. Wenn man mich nötigen würde, festzuhalten, ob und wann ich ein 10-minütiges Telefonat geführt (oder 10 Minuten hier im Forum rumgelungert :o ) habe, würde ich mir einen anderen Job suchen… In diesem Sinne glaube ich, dass (wie auch schon angedeutet wurde) die Zeiterfassung mit diesem Detailgrad (also so, dass am Ende Zahlen rauskommen, die nicht irgendwo um 5 Minuten von den “Sollzahlen” abweichen) nicht Aufgabe des Entwicklers ist, sondern der bestenfalls eine grob geschätzte “Prozentuale Aufteilung” abgeben können sollte. Ein bißchen erinnert mich das an diese Anekdote…
[spoiler=“Spoilerception!”]
In einer Firma ist eine wichtige Maschine kaputt. Die Produktion steht still. Der Chef heuert einen Ingenieur an. Der Ingenieur schaut sich die Maschine an, macht dann mit einem Filzstift an einer Stelle ein Kreuz auf die Maschine und sagt: “Dieses Teil muss ausgetauscht werden”. Das Teil wird ausgetauscht, und danach läuft die Maschine wieder wie neu. Der Ingenieur stellt daraufhin eine Rechnung von 10000€. Der Chef der Firma ist etwas irritiert über diesen Betrag, und verlangt eine Aufschlüsselung der Rechnung. Wenig später schickt der Ingenieur eine aufgeschlüsselte Rechnung, mit zwei Kostenpunkten:

  1. Mit einem Filzstift ein Kreuz machen: 1€
  2. Wissen, WO das Kreuz zu machen ist: 9999€
    [/spoiler]

[/spoiler]

Zeiterfassung als Überwachungsinstrument finde ich nicht besonders Sinnvoll.

Dennoch hat man hin und wieder die Aufgabe eine Aufwandsschätzung abzugeben.
Sei es nur für sich selbst um einem Kunden einen Preis nennen zu können.

Und hier sehe ich die Möglichkeit auf Daten einer Zeiterfassung zu zugreifen um nicht völlig daneben zu liegen.

Und mit Daten einer Zeiterfassung kann man seine Kalkulation dann auch mal calibrieren oder Zeitfresser enttarnen und abstellen.

Klar ist auch, dass eine Zeiterfassung nicht stören und auch wenig Zeit vereinnahmen sollte.

Wenn man eine Versionsverwaltung nutzt, dann führt man eh schon Tagebuch.

git commit -m "Done that..."

Wenn man dann noch BDD betreibt und seine Spec. (z.B. Cucumber) in einer Versionsverwaltung unterbringt.

git commit -m "Customer demands new Feature ..."

Dann ist da schon sehr, sehr viel vorhanden. Erst recht wenn man sich commit early, commit often zu herzen nimmt.

Wenn man sich daraus seinen Zeiterfassungsbericht zusammenscriptet dann läuft das ganze nach einiger Zeit auch völlig automatisch.

Und ohne Versionsverwaltung arbeitet man auch meist nicht professionell.

Wenn mich ein Hermann alle 15 Minuten per Popup nerven würde und eine Interaktion erwartet, dann ist das ein No-Go. Wenn allerdings alle 15 Minuten ein Screenshot gemacht würde, Datenschutz mal aussen vor, und man sich dann einmal wöchentlich das ganze anschaut, so als Erinnerungshilfe und dann einen Bericht daraus bastelt, dann finde ich das auch noch ok. Es sollte halt Sichergestellt sein, dass man selbst den Bericht verfasst und nicht jemand anders :wink:

Apropos Screenshots, im Netz gibt es die Seite oDesk.com die auch teleworking for everything anbietet. Naja und dort gibt es auch Stundenlohnarbeit, bei dem dir der Auftraggeber über die Schulter schaut, indem er regelmäßig einen Screenshot übermittelt bekommt etc.