Helpdesk Database Design

Chimp8471

Registered User.
Local time
Today, 13:13
Joined
Mar 18, 2003
Messages
353
Need to build a helpdesk- Advice

I have been tasked with designing an IT helpdesk database, but to be honest i am not sure what sort of things are usually included in this type of project.

Any ideas please...

my company has

around 400 computers
8 technicians - can repair machines
1 help desk clerk - just logs calls.

the clerk will be logging all calls, problems, time, location of pc etc.

i need the system to be able to assign a job to the next available technician.

i am not asking for anybody to design this for me, just guidance in where to start.

any ideas how big a job this is to do.


Cheers

Andy
 
Typically you need to track the called in problem, who/when/where. Do you seperate software from hardware? We use 3 drop downs to catergorize our troubletickets. Network, Software, Hardware, remopte access, etc is the main drop down, then the other two whittle that down more. Once assigned to a tech. what if they have to leave, you have to be able to reassign a ticket to another tech. Same if a software tech. finds it is a hardware issue, then they can reassign it to a hardware tech. When is a ticket resolved? When the tech. says it is or when the issuer says it is? How do you identify tickets that have not been worked on, and when to you escalate them to say managment or something for resolution? How to track resolution, and what if more than one tech. works on the issue, do you track all work done on a ticket? How are you going to notify folks a ticket needs to be worked on? Management loves to use something like this to measure (whatever manaegment likes to measure), but if you don't have complete buy in, then the measure management gets looks bad, then what? Just a couple thoughts off the top of my head.
 
ok thanks for your help,

i have now gathered from various sources a number of tables, that i think i might need to create my helpdesk, some may disagree and i would love to hear suggestions.

i have attached a list of all my tables, i am just not to sure how i would link them together via the relationships facility.

i also need to make sure that all my tables are normalized to 3NF.

can somebody please help me here by just checking my table structures and also help me link them together.

Many Thanks

Andy
 

Attachments

Last edited:
Ok, Have some Questions:
UserInfo and UserName make no sense (at least to someone on the outside looking in).
Typically you would either have a list of users, or not at all. Like a population from your HR system, or just record basic info. when someone calls in a ticket. So your UserInfo table makes no real sense in this context. Also you are (assumtion alert) trying to tie a UserInfo record to a Workstation record, what if a user has more than one workstation? I have no idea what the username table is about.
Memory table, since memory is unique to a workstation, unless you have just a few different options, why would you not just make an entry in the workstation table for the memory (rather than I assume a lookup)?
Yes/No table - what the hell? Please tell me you don't have a table with 2 entries for YES and NO?
Compatible OS and OS tables, would that not be located in the SOFTWARE table? OS is just software after all.
Where is your technicians table, how can you assign a technician if you don't have them located in a table? Also how do you know what a technicians strengths are (I.E. like software tech. or Hardware Tech., better on OS, better on MS Office etc.)
Technician Assigned in HelpDesk table, if one tech passes it off to another, do you loose visibility of the first one who worked on it? What if Tech1 goes to a workstation, spends 2 hours troubleshooting a MS Word problem only to find it is a hard drive problem? Tech2 come back later and spends an hour backing up the hard drive. Tech3 comes back tomorrow and puts in a new hard drive and restores the system. What do you record?
 
great!!!!!!!

thanks, this is the kind of feedback that i was hoping for.....

please keep your suggestions coming.

1. i have got a technicians table, not sure why i left it off my, picture.

it only contains one field though

Technician Assigned.

2. Unfortunatley yes i do have a Yes and No table....i can only assume you wouldn't agree with that :D

3. so i can get rid of the username table u reckon ??

cheers

Andy
 
It takes more resource to store a foreign key and join to a YES NO table than to create a combobox with a value list. Besides what is wrong with check boxes and true or false? Just a thought.
Since I do not know your setup, I really hate to say you don't need the username table, I just said I (as an outsider) can't see what you would use it for. You have a technicins assigned table, but I would think that would link a technicians table to a help desk ticket. I would think you would want a technicians table with basic technician information. One field we have that we really like is a not available dates. A tech. goes on vacation, we put the start and end dates in and the help desk knows they are not available for assignment on those dates (actually the lookup function does not show them on those dates).
 
For our site, the issues are like this:

1. HD person takes call, auto-assigns ticket number.
2. If first call for this customer, HD person sidesteps to ask for customer name, phone, affiliation (how is this person authorized to call for help in the first place; usually a department code or branch/department code from a drop-down). Person's name is stored for use in subsequent dropdown/autofill, autogens a customer number.
3. HD person takes data, asks enough questions to assign class of problem (for us, it is by specific software projects + a hardware class + a desktop class + a couple of other classes that only the US Dept. of Defense understands fully.) A new OPEN ticket is created automagically and is owned by the HD person.
4. HD person can do one of a few things:
- forward ticket to tech. dispatcher (or, in your small-shop case, act as dispatcher and dispatch directly to tech) - FORWARD is key but ticket status is automatically on HOLD until targeted person resumes the ticket.
- resolve the problem with verbal advice / instructions - CLOSE
- put problem on hold pending something needing to be done - HOLD is key
- HD person cannot let go of ticket while the ticket is in the OPEN state. Therefore, one of the other states must be asserted. As a a safety factor, TWO tables are updated.

One shows what happened to the ticket: FWD, CLS, HLD, OPN, RES (resume a HOLD ticket), REO (re-open a ticket), OWN (assume ownership of someone else's ticket - so it won't go dangling if the targeted person does something so unkind as to die on company time...), ADW (add work history entry)

When FORWARD is chosen, HD person has option of WHY forwarding: To TECH, To MGMT (for policy decision), To (any of the other shops where something is done or a decision has to be made).

When HOLD is chosen, HD person must show why it is on hold - PARTS (need something physical), NETWK (connectivity issue precludes action), FUNDS (needs funding source identified. In our case, might not actually need cash - just needs cash account number for chargeback), INFO (caller needs to provide supplemental info), etc.

Also, when closing, holding, or forwarding, the work history has to be updated with a short comment. Some of the items, however, can be automatically updated in the detailed history. For instance, REOPEN and RESUME require no more explanation.

Every so often, something gets run that marks old tickets in a way that suggests their priority should be boosted. In our shop this is "automated problem escalation."

Then there are the reports. Gazillions of reports about how much time was spent in each state. This is why you want the event table to time-tag each open-class event and each close-class event. You can then take the DATEDIFF of the two times and accumulate the minutes (or even seconds, if you are a REAL glutton for punishment) on the particular problem.

We have found a couple of commercial apps that do what we want so we aren't using the old database we started for this very project. No need to reinvent the wheel.

You might also check on the web (the WHOLE web) for professional organizations for Help Desk or Customer Service Center groups. They might link you to some really useful articles. I know our local org is a member of the national organization but I also know there is more than one such org.
 
once again, thanks for the input...

do you think i should keep a seperate table for things such as:

priority (High, Medium, Low)
Type (Hardware, Software, Network, Password,etc)
Location (Main Office, Lab etc)
etc..

These contain just one field....

then link them via a relationship

or should i add these as a look up option from with the tables....

cheers

Andy
 
Last edited:
i have now modified the layout of the tables and removed some of the one's not needed ( I think) see attached

how should i link the helpdesk table to the workstation table, and also not sure how to link the other tables....many to many etc
 

Attachments

  • drawing2.jpg
    drawing2.jpg
    72.2 KB · Views: 5,855
could someone please check my tables to see if they are to 3NF (Really don't get that)

and also offer me some advice on how i should link them up via the relationships, again the one to one, one to many thing just confuses me.

here is my picture of my tables and my database is attached,

Drawing6.jpg


thanks

Andy

ps do you think i need any other tables, or anything in my tables
 

Attachments

Hi mate I am also creating a helpdesk,however it is multi access I am struggling with my tables. here are my tables at the moment. I am struggling on the helpdesk table and the problem table and attributes to use can you help me with this much apprciate it :
 

Attachments

  • erd.jpg
    erd.jpg
    63.8 KB · Views: 1,970
why don't you sit with the ones asked for the job to learn what they need? Start with the big concept and later dive into details.
Sit there and look how they work, who they are talking to - clients, suppliers, co workers, outsourcing...., what kind of equipments is taking care, do they have priority list or do they set it themselves.
Create flow charts diagrams, and check it with them.

This is how this job need to be done

You need to learn the business from them not from us
 
Last edited:
Thanks man. I have started with flow charts then developed into DFD. This help desk is for my final year project. As I fallen behind schedule due to exams and coursework. However I got till end of the month to produce a functional help desk that will be coded on VB I let you know in a week time how far I got.
 
The helpdesk is mutli access. Teachers only log in issues and produces a ticket. Then technicians receives the tickets but also log in tickets. That the whole concept of the help desk at the moment.
 

Users who are viewing this thread

Back
Top Bottom