A design is what the designer has when both time and money
run out. -James Poole
What is SERA ?
The Software Engineers Reporting Assistant (SERA), is a program that primarily
helps system analysts, programmers, software engineers, or any contributor in
the Information Technology Industry to speedily create a Status Report of his
To begin with ...
Before you start using the Software Engineer's Reporting Assistant (SERA), these are the things you need to know and do.
SERA is written in Python (www.python.org),
an interpreted language. To know all about what Python is, what is it
good for, why one would like to program in it and any other queries you
might have, see Introductory Material on Python. You may also want to see this BeginnersGuide.
You need to install Python to run SERA.
If you are running Linux, Python should be pre-installed. However, SERA
uses Tkinter, which may not be installed. If Tkinter isnt installed,
you will need to install the same from your distribution CD. The
package name should be
For more information on Tkinter, you might want to see this Tkinter documentation.
If you are running Windows please see Python Windows FAQ . Also see How to install Tkinter for help on installing Tkinter.
If you are running MacOSX, please see Installing Python 2.3.x and Tkinter on MacOS X .
SERA is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; specifically the version 2
of the License
SERA is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details at
I have a day job. So I have worked on SERA in whatever extra time I can make available at home.
SERA has been tested with Python 2.3 on Windows and Python 2.4 on
Linux. I cannot test it on other platforms for lack of resources. If
you test SERA on any other version of Python on any other OS, and if
you let me know, I will put up a note in this space and give you
Your comments and suggestions are welcome. I will try my best to acknowledge your email and improve SERA with your suggestions.
Why SERA ?
I have been a software engineer and a manager. I have been
writing status reports every week to be sent to my manager. And have
been recieving status reports too.
I have also observed that the most common way to send status reports is - what else - by email.
Having worked with different people in different organizations, I now
have some sort of understanding on what an engineers' needs are, when a
status report is written, and what a managers needs are, when he
An engineer needs a simple tool that can speedily collect
information about what he did without him having to bother about
whether he missed any information or whether the format of the report
A manager needs the information in a consistent manner from each person who sends him status reports.
Both need the following:
Hence this attempt to write a simple yet customisable, open-source,
platform independent reporting tool, that can be used by diverse kinds
of people to report their work more effectively and efficiently.
Collects information about tasks, non-core activities, dependencies, issues and leave plans.
Prepares formatted text that one can simply copy and paste into email and send.
- SERA.ini can be hand edited in any text editor to customise the
names of pieces of information that are being reported about. For
example, one can change the modules that a team or individual is
working upon by editing the modules= line.
Generates only plain text reports.
Is stateless, i.e. does not save information that is entered to be used next time the program is invoked.
Does not have the finest of 'look and feel's.
Optionally generate HTML reports.
There are only two files to download.
Just create a directory, say "SERA" on your computer and save both the
files in that directory. Thats it ! If you are on unix, ensure that
SERA.py has executable permissions. Then change to that directory and ...
run SERA :