Views
Also see the CodingGroup page.
CBV Database Report 2005-06-14
The Ghad project for administering group applicants is near deployment (expected 2005-06-16) Following this a half-dozen or so issues with rhadam will be dealt with. This should be completed by early next week at the latest.
The naming for the database has developed haphazardly, and cairo belongs to a library that is listed among debian repositories so a name collision is quite possible. We need a re-think about naming, not so much for the database, which does not need a name now I think about it, but we need a range of names for the various interfaces to the database.
The interfaces are (or will be)
- The main interface for processing individual recipients and the machines they are given (currently called rhadam)
- A more specialised interface for group applications (currently
ghad) - An interface for generating reports and statistics
- An interface for recording personnel and activity
- An interface for scheduling and rostering.
- An interface for inventory control (eventually)
This list need not be considered final or set. They should have names indicating the functions involved.
There were some informal discussions with Rob a while ago about inventory data management and I placed some thoughts on the matter on the mailing list prior to this.
If possible, a meeting to settle the main outline of an approach to the inventory issue would be helpful. This should happen as soon as possible, as there is no chance of starting coding without a reasonably clear plan.
Owen Courtis
Database Priorities 2006
Kylie and Jan had informal discussions about the priorities for the database The priorities were seen to be:
- Ability to edit current information and fix errors on the fly
- Group applications interface
- User Support History
- Inbuilt error reporting feature (nice but email will do for now)
Owen might care to list all the feature requests on his list, so these can also be added to a priority list. The issue of backup was also raised. What is the current practice here?
Database Report 2006-02-13
Item 1 of Kylie and Jans' Priorities 2006 has been implemented. From the "Look up" tab of Rhadam, individual fields
in the table can be updated by right-clicking on them. After the editing is done, the user saves the update by
pressing the
Re item 2 of the same, the group applications interface ( Ghad ) I expect to have deployed by the time of Tuesday's meeting.
Re item 3, Royce Ausburn, a new volunteer has developed a "Knowledge base" system to be used (in part at least ) to assist persons providing support. It has been agreed that the data storage involved will be located on the CBV "sql" server. As the support giver will have the KB on line while dealing with the client questions arise as to how to relate the use of the KB to the individual customer, the effectiveness of the support given and so on. The KB will be a web application. The interfaces previously developed are gui workstation apps, so I am not sure at this stage of the best strategy for making it all work together. Once the KB is up and running would be the best time to choose an approach.
The other items from Priorities 2006, as well as the backup issue, are under consideration. At the moment I am making backups of the database on an ad hoc basis. Ultimately management of backups together with user management should be carried out by the staff group through a web app or other interface.
An issue that was bought up some time ago was the question of how to deal with the situation of clients receiving new hosts. The old ones being returned to stock perhaps. I would like it noted that using the facility of editing existing entries via Rhadam discussed above should not be employed for this purpose. I have a way of handling this through the Database Administrators account quite easily so if any adjustments of this type are needed see me. I can remove an existing host from an application and return the system to the state where the customers application can be re-processed with a different host.
Owen Courtis ( ocourtis@dodo.com.au )
More Comments, Observations and Suggestions --kylie, Mon, 20 Feb 2006 17:18:28 +1100 reply
Wondering if we could change the qanda label to just QA by, as it is not
really Quality and Assurance, it is Quality Assurance. I also had a data
entry person ask what's this qanda thing mean? :)
Next one (if not too tricky) is can we remove the Could Train check box all together? We don't use this any more and it seems to confuse people entering data. We could even lose the old data for this if that was a possibility. Not once have we asked anyone to help out. I guess it was just being hopeful.
The other issue I have on my mind is the referee section...and being able to add phone numbers. I'm not sure how important this is in the scheme of things, we can discuss it with Jan/Tony.
The other thing is adding in email addresses. We started collecting email addresses for applicants (where avail). I guess this could also be an option for referrers.
Tony also found an issue to do with spaces used at the beginning of names. If someone enters a space before starting a name when inputting data, a wild card kinda search won't pick them up.
Changing the main lookup view --kylie, Tue, 07 Mar 2006 19:41:35 +1100 reply
Me again! Just wondering if we can change the view we see at the lookup screen. Be good for it to include mobiles, email address, and if person got a modem. I realise this may have already been done, many thanks. :)
Do we also see the comments fields? This could be handy too, although might make the look up view unworkable. Is there another way to look at the comments?
There was something else, but alas, I forget. Working with the database might help jog my memory! :)
Database Report 2006-02-13
Re the issues raised by Kylie on 2006-02-20 and 2006-03-07 (see above)
- The label QANDQ on the host update form now reads QA
- The Could Train checkbox is now removed from the application entry form
- There is now a field for email addresses. To make room for this in the database I have removed one of the phonefields, and renamed the other. All the actual phone numbers have been retained, but there is now only one phone number field which contains multiple numbers if required. It is a unformatted text field so home numbers and business hours numbers can be indicated by putting (BH) or (AH) after the number. The Mobile field is unchanged.
- Changes to the lookup table: include modem, mobile, email -done. Re the comments field, this is visible in the lookup table, but in order to read it, you need to be aware the columns are of adjustable width, the edges can be dragged with the mouse.
- On the question of referee phone numbers, discussion between Kylie, Jan and myself led to the conclusion that for now the address field could be used to include phone numbers when required. Just now it occurs to me if there is a phone number for the contact person, that could be included together with their name e.g. J Blog (03 9876 5555). The table for referees could be changed without too much effort, but it would be best if it was decided first what processing of referee data is intended.
- About spaces used at the beginning of names, I have amended the code to strip any leading or trailling blanks from client names going into the database from now on and fixed all existing names.
The database is now provided with an audit feature that tracks changes and deletions. The interface for group clients is nearly debugged to the point where it may be deployed. Once that is accomplished, my plan is to deploy the hoplite interface for builders and testers.
Use of the database is sometimes hampered by network problems. This is indicated by non-responsiveness of the application during database access. At the moment all that can be done about this is to try again later, the problem is with the network, not the database. If people could note when this occurs, and how long it takes to clear, and report the details to me, or put them on the wiki or on the list, this would help.
Owen Courtis
Database Report 2006-05-08
Since the last report activities had mainly involved work on a new interface. This is known as Ghad, for "Groups Hosts Administration." This app is being implemented in a upgraded version of Qt, ( 4.0 vs 3.3 ) compared to Rhadam. There are some deep differences between the two versions of Qt, and it is partly due to this that a design issue has arisen, necessitating some backtracking and delay. As of this date, the app is in the final debugging stage. As the name suggests, Ghad is for group applications. The interface is especially adapted for handling batches of hosts. Some additional training will be needed for users, but much less than was required for Rhadam.
The volunteer who was to have worked on a Knowledge base for us has left apparently because he and Julien could not work out some issue re installing some non-open software. An enquiry re volunteering received via Jan did not amount to anything after I sent the person concerned an email explaining CBV's needs in the coding area. Kylie's recent address to LUV might result in some offers of help. (Refer to Kylie's report)
As Ghad should be finished and installed shortly, I am planning to continue with Hoplite, which would be the technical person's interface into the database, and a means of communication between the assessors and the techs which should eliminate the need for the build sheets. There has been discussion of the details of this with the various parties involved, but implementation has been delayed by the work on Ghad until now.
I plan to set up a server on my home system, (it has a static IP) and locate the subversion code repository there. This would make it simpler to accommodate volunteer coders, as they will not need a remote login to Victoria St. It may be possible to also include database issue tracking and documentation facilities there also. I will have more to say on this in the next report.
Owen Courtis
Database Report 2006-06-26
Ghad and Hoplite
Ghad and Hoplite should be installed for beta testing this week. The tester(s) will need some training in their use. It may be possible to have some training done tomorrow (Tues 27 June) or else the following Friday. In order to get these finished, some assumptions had to be made regarding workflows. Presumably it will turn out during the training process whether these assumptions are reasonable or not, and if not some reworking will be required. It might be useful to invest some staff hours in analysing and publishing the workflow patterns exhibited in day-to-day CBV operations, both for the sake of database designing and volunteer training and induction.Database Server
In order to be able to service the database, I have found it necessary to move it from the server where it was to the server ada which I maintain. It has proved impractical to try and co-ordinate activities with the current network maintainer. In conjunction with this move, I have installed automatic backing-up of the database to the cbv box on my home network. The back-up covers the 3 previous days at the moment, but I plan to amend the setup so that back-ups are generated in response to the amount of change in the database, and cover a longer time period. I mean to create a subversion repository that would enable the database to be reconstructed as it was at an arbitrary date.Remote access to the Database HOWTO
If anyone needs to access the database remotely, the following method will work.First, install the application (rhadam, ghad, hoplitem,.. whichever it is). To do this, assuming your system is Debian, add the following line to /etc/apt/sources.list:
deb http://220.240.74.5:8080/debian unstable mainThen, as root, execute the following
# apt-get update # apt-get install rhadam(or ghad, hoplite, ..) When the app is successfully installed, you will need to set up the following path.
/home/reception/.cairo/cairorcThe file cairorc must contain:
[General] host=ada.cbv.prv database=cairo_db(Note - this is for a host accessing the db remotely. Hosts on the lan will contain host=ada. Also, It is not necessary to create a user reception).
Now, when you wish to run the application and access the cairo_db database remotely, you first execute the command
$ ssh -L 5432:ada:5432 your_username@cbv.dynamic.studio442.com.auin a terminal and log in as usual. Leave this terminal open (you can use it for other stuff you nornamlly do with a remote login if you wish ) and execute rhadam or whichever and you will be operating on the database, all being well.
Owen Courtis ocourtis@dodo.com.au
Database Report 2006-08-14
Ghad
The groups application has now been installed on reception and Jan Smith and Tony Calenti have tested it to some extent. It is quite a bit simpler than rhadam and provides a different view into the database than rhadam, as a group application is a quite different object to an individual one.
Rhadam
We ran into some trouble trying to install rhadam on some new workstations due to dependence on aging libraries. It has now been linked against new versions of these and that should solve the problem.
Outstanding feature issues
At the top of the list at the moment are to provide an integration into the desktop: that is, to have the package installation process set up menu items for the various apps. Another requirement is to enable the user to control the X options such as geometry and fonts. (Bought to my attention by Tony).
Multi-threading versions
I have re-worked ghad extensively to overcome the problem of network hangs. There have been persistent reports of rhadam hanging in a database access state. The original single-threaded architecture of the applications made them vulnerable to this, as they depend on the assumption that the tcp/ip session with the server functions faultlessly. The correct thing to do with such apps is to provide a separate thread in which the connection to the server is handled, so that the user can still maintain control while the connection is failing. The multi-threaded version of ghad has taken quite a while to write and is now just about ready for testing. Hopefully, the work I have done on ghad will enable me to rewrite the other apps more quickly. Rhadam needs to be converted from Qt3 to Qt4, so a complete rewrite is called for anyway. I am hoping to proceed reasonably quickly, having completed a fair bit of the learning curve.
Towards Collaborative Development
We are taking steps to bring on a group-based approach to work on the database. Barry Klein and I have begun analysing/documenting organisation processes using UML. (UML is the Unified Modelling Language, a graphical language designed for this purpose). Working in this language requires a specialised graphical editor, and we have selected for this purpose a free java-based (but not open source) editor called Poseidon. (See http://gentleware.com. There is a tutorial there for UML as well as Poseidon) A group workspace has been allocated for the results of this effort on the documentation site. Log in and proceed to http://vic.computerbank/GroupWorkspaces/db. The link "Workspace for Database discussion in UML" will take you to a wiki that is open to each member of the management team. There is a bit of an issue with workstations as Poseidon likes a lot of memory. Barry can run it ok on his laptop, and I am setting up a link so that I can run my home workstation from Victoria Street through NX. The diagrams created by Poseidon can be distributed in an open format called XMI (Xml Metadata Interchange). XMI files can in principle be used as input to code generators in a process termed Model Driven Architecture (MDA). I am thinking it may be possible to co-ordinate the database code in this way. The server side code to begin with, this would be the easiest, but also possibly the application code. Helpful for this work would be an open source app. called AndroMDA? (pronounced andromeda). See http://www.andromda.org.
Owen Courtis ocourtis@dodo.com.au
Database Report 2006-10-20
Cancellations for hosts and applications
The issue has been raised lately, of treating cancelled hosts and cancelled applications. It has been pointed out that quite often people have not turned up to collect host that have been prepared for them. But there was no way with Rhadam to unwind the process of providing the host. Related to this is the problem of removing applications for people who we have not been able to contact to arrange training. The latest version of Rhadam provides the facility for cancelling both prepared hosts and processed applications. For removing prepared hosts the operator goes to the host update tab, selects a particular hosts and clicks a button labelled Cancel Host towards the bottom of the form. The operator is cued to confirm the action, in which event the cancellation is performed immediately. To cancel an application, a similar process is carried out from the host entry tab.
Changes to Database Constraints
Some referential constraints on the database have been altered. Previously the CBV Number was restricted to being unique. Which regularly required correction of the CBV Number during input. After discussion with the hardware section, it transpired that this value was only being used in conjunction with the recipients name, when identification of hosts was required, and otherwise only so that an estimate could be made of the total numbers of hosts being processed, so exact uniqueness was not required.
A more important alteration of a constraint was regarding uniqueness of clients names. With the growing number of clients on file, concerns arose that the database might soon have to deal with clients with shared forename/surname combinations. It turned out to be quite simple to change the uniqueness constraint to take into account the street address in addition to the forename/surname combination. So that has been implemented.
Collaboration Project
The collaboration project discussed in the last report has progressed, but is currently delayed as Barry Klein is absent, recovering from an operation. Some experience with UML has been gained, and I am hoping for more in the near future. I am investigating how the eclipse FOSS sdk may be of assistance to us. It is intended as a general purpose IDE, although it is particlularly well equipped for Java. Some work may be required to prepare it to handle SQL and C++ for our purposes.
Owen Courtis ocourtis@dodo.com.au