Adam Property Maintenance - System analysis.
Identification of the Problem to be Solved
System analysis
Introduction to the project
The organisation that I have decided to work on for my AS computing project is called Adam Property Maintenance (APM), it has been established for almost eight years now. It is a private limited company, which specialises in repairing and maintaining services for homes and businesses. Although the company is a small organisation there are a lot of other property maintenance companies in the greater London area to compete with. There seems to be a lot of interest in the company since the company moved from there last location in Wembley and the local community has accepted that the company is a good organisation with a lot of skilled engineers.
The organisation currently employs sixteen employees currently of which include their fleet of about eight engineers.
APM does maintenance work for private, local, housing association, estate agents and other such types of buildings. Adam Property Maintenance is located on Sudbury Heights Ave. Below is a Map showing where it is.
As you can see from the map of the area there are a lot of local residential areas which can make use of the company's services. A roads which are leading to and from the area give the company easy access to the rest of North London and its suburbs if the engineers are called out to a property maintenance job The working day for APM are from Mondays to Friday from 8.30am to 5.30pm, the company is closed on Saturday to Sunday.
Scope of the report
The scope of my report will focused to the handling of maintenance jobs by the organisation; this involves the arrangement of repair work being done for a client to the arrangement of the location and time of where the work is needed to be done, the arrangement of the necessary information needed for the engineers to perform the maintenance work, then dispatching the engineers to the location of the property each day. The organisation also needs to know the status of the work being done for a client; this means that if the maintenance work needs further adjusting over a period of weeks or is not completed it can be recorded and then can be inputted into the system and marked for any necessary work to be carried out.
The purpose of this report is to make it easier to arrange jobs for each engineer each day to carry out, which is done on a timetable basis. I will try to achieve this by developing a new type of computerised system. The process of dispatching the engineers each can be can be complicated and a software solution can probably sort this problem out. This will then effectively improve efficiency throughout the company. In order do this the problem in the existing system will have to be analysed and made clear, this problem will then have to be resolved with a new, more functional and effective system.
Description of the current System
The existing system consists of a manual part and a computerised part. Client names and records are stored on file in a folder. New clients are logged with the maintenance job and added to the client records in Microsoft Word documents. The existing system has been used for almost two years continuously, and has not met the needs of the staff and management. The company uses a network of computers which is mainly needed for admin purposes, the computers are linked together in a ring topology.
The advantages this type of network layout:
* Independent Nodes
* Transmission is simple
* High Transmission
* Easy to install
However there are some disadvantages for example:
* Can be expensive
* Node failure breaks transmission
* Expansion is difficult
* Unidirectional Transmission
APM have a network which allows users to log on through a Windows 2000 platform with different user levels for security and data protection reasons. The computers in the network share all the data on all the hard disc storage devices, all programs and all files on the network can be shared. The LAN (Local Area Network) does have access to the WAN (Wide Area Network) and is connected to two printers and some fax machines.
Firstly the existing system is in two parts as mentioned above; the manual part of the system is the writing of client's maintenance job from a phone call or fax and gathering information from the client records file, the client is asked their details and then this information compared to the list of client details, previous maintenance job details and payment status. This is all done manually on file paper so it is very tiresome for staff to carry out all the work of finding the records and matching the appropriate records to the correct clients.
If the client is a new client he/she is then added to the client records. The client is asked their for their full set of details including daytime and evening telephone numbers, client address, maintenance site address, e-mail address, and mobile number if he/she has one. Once these details are obtained a booking of the maintenance job is negotiated, the booking arrangements of the maintenance work are logged in a diary in a sequential order.
A record is then kept of the date and time of appointment with details of the job against the client details on job log list.
The booking arrangements of the maintenance work are logged in a diary
When the user inputs the details of the maintenance job on a job log list (client details, maintenance job description, date and time of job and any other details for example "Collect keys from a different address") it is usually done on a Microsoft Word document. The Word document is inserted with tables and then headed with columns such as Time/Comp, Job Address, Job Description, and Phone Num. This job log list is then assigned to an engineer and printed with date, with various details under each header.
If a client changes a date and/or time of when the job is supposed to done for them the job, the entry of the original arrangement on the diary is erased and the next available slot is considered. When an arrangement is agreed the job log list is produced.
Not all engineers are skilled in the same way, some are suited to plumbing and some prefer general building repairs.
This is when the computerised part of the system is used.
When a jog log list is usually produced, the staff usually verify with the management exactly which engineer is given any specific tasks and which location the engineers will operating in each day. Then the job log list can be produced as shown below:
Name: Peter
Date: 09/10/02
TIME/COMP
JOB ADDRESS
JOB DESCRIPTION
PHONE NUM
9-12
57 Hindhead Gardens, Middx
UNF 5NF
Toilet Handle is broken repair/replace +living room sliding door does not lock and comes off runners, ease and adjust.
0-2
4 Lichfield Road, London
NW2 2RE
2 WC's are leaking investigate & remedy
0-2
Donnington Mansions
NW10 3JU
The Timer needs to be adjust so lights come on in the evening + replace all lights on each landing
Please collect keys; 41 Walm Lane, Willesden Green, NW2
2-5
7 Beach Avenue, London
W3 7JY
Demonstrate hot water system including lighting pilot light+ repair/replace the fridge/freezer
2-5
8 Addison Grove, Chiswick, London
W4 1EP
Collect keys; 45 Turnham Green Terrace, Chiswick, London
W4 1RG
Please ring BM & reconfirm the keys before going there.
When an engineer comes back from a days shift he gives back a list of payments and details of any further work to be done which was not completed on the day. Also new clients which have had their first maintenance job done by APM will then have their client details validated and then a record of this is made in the client details file for payment security reasons. If the maintenance works being done for a client is not finished it is prioritized and is another arrangement in terms of time, date is made. It will then be made a priority on that dates job log list.
Problems with the current system
Research
In order to make a complete assessment of the existing system, research has to be carried out about the organisation and their staff. The main method for obtaining the necessary information is by interviewing certain members of the staff, another method is obtaining information through observation
On the account that the organisation was very busy most of the times I made a visit, preparation was needed so I could conduct the most accurate assessment of the organisation's system and its operational procedures. Agreement of the date and time the interview was finalised, also the specific nature of the information asked was outlined. Clients of the organisation trust Adam Property maintenance not to disclose their personal details and transactions, also it is a legal requirement for companies not to disclose client details in the form of a law called the data protection act. So it was felt by management that it was imperative that I kept my interview focused on the maintenance job system and all of its components and kept to this in my report.
So an interview was arranged with one of company's' most experienced employee's, Mr. Shah. Mr. Shah has experience in the main job maintenance system for over six years and is one of the major contributors of maintenance and updating of the current system. He works on the whole of the system and oversees the work of other employee's.
Interview with Mr. Shah
How many employees work in this organisation?
The organisation currently employs sixteen employees currently, of which include their fleet of about eight engineers
How does your company receive its maintenance work?
Usually it is received by telephone or fax. Sometimes we receive it by e-mail; otherwise it is received by post.
What sort of work do you receive?
We do all sorts of work, most domestic and general repairing, from plumbing to painting. Installation and set up of appliances and other similar maintenance work. We offer a fast, reliable Property and Building Maintenance Service throughout the London Area.
How much work do you roughly get in a typical day?
We receive around eight to twelve jobs on a typical day, although during the seasonal holidays we may receive more than this because it is generally convenient for our clients.
What type of information do you store on your system?
We have spreadsheet files, word processor files, payroll system files, and other system utilities.
Do you think you have a fast enough system for the work that has to be carried out?
We have a Pentium III based ring topology, our systems all have a 650MHz microprocessor speed and all our systems have a 20GB hard disk capacity and 128Mb of memory. We have two printers which have a printing speed of 6 pages per minute. We have a LAN hub which allows connection between six computers.
Does your current system cope with the workload demanded upon it?
Yes, it does cope with the current workload, but recently the system has recently been slowing down in terms of accessing certain files. I would prefer to have a bigger storage if the organisation decides to expand.
Do you encounter any major problems with your system?
Yes, sometimes we lose some information from our client records on file because sometime they are misplaced. We often run out of space on our folders for inputting new client records. We often have to check our client ...
This is a preview of the whole essay
Does your current system cope with the workload demanded upon it?
Yes, it does cope with the current workload, but recently the system has recently been slowing down in terms of accessing certain files. I would prefer to have a bigger storage if the organisation decides to expand.
Do you encounter any major problems with your system?
Yes, sometimes we lose some information from our client records on file because sometime they are misplaced. We often run out of space on our folders for inputting new client records. We often have to check our client records on file and with the client on the phone, so it is quite difficult to make sure they are a member of APM. This has to be done each time a client requests maintenance work to be done for them by APM. It is quite tedious work. It is quite hard keeping up with uncompleted work
Have you tried to fix any of your problems?
Well I have tried using different methods of organising the client details in our records in different methods but this has not fixed the problems. I've tried using spreadsheets to organise the details of clients but there were too many problems associated with this idea.
If you were to buy a new system what would be your budget?
Our company is getting more and more popular at the moment and if we were to expand we would need to invest in a more appropriate system, I would say our budget limit would be around £2000.
Observational Study
The Current system used by Adam Property Maintenance Ltd. has been updated with the latest version of productivity software (Microsoft Office 2000 version), which means it is quite up to date with the software to work with its current system but it does not have a database program which is very useful for a system of this nature. As the system is divided up into two parts, employees have to keep referring to the file of contacts and client details to validate details when an existing client calls for a maintenance job. This is both timing consuming and strenuous which makes it inefficient for the employees to work. The time that it takes for an employee to lookup a client record, the employee could be doing something more productive.
Their computer system is capable of handling large amounts of data because each of their computers has an adequate storage device, the records on file can be transferred on the computer system on a program such as Microsoft Access, which is a database program that can be used to store client details and make forms, queries and reports. All of these features can help to make the system much more user friendly. If APM want to increase their profits and decrease their labour costs then it would be better for the organisation to use a program like Microsoft Access to manage all their client records.
There are plenty of small organisations in the greater London area to compete with APM and if many of them have a better system then it will be hard for APM to keep up with the rate of demand from clients and therefore lose business to other property maintenance company's.
APM have a client details file which consists of table like the table below, it shows a limited view of all the clients' details and there is little room to put any other details of the clients.
Client Name
Address
Telephone Number
Mobile Tel. Number
Membership Number
Alex Brenham
26 St. Andrew's Ave
020 89456545
07765568978
015897
Chris Aldridge
48 Swindon Ave.
Edgware
020 84756487
07960324579
015488
Simon Montague
15 Eastcote Rd.
020 78749565
07865215896
012545
James Mason
60 Rochester Grove
020 84866241
07725478965
015488
Graham Jones
84 Mill Hill crest.
020 83487691
07984234178
015678
Said Khan
46 Barnaby Rd
020 76549832
07855632578
013587
Mary Ann Johnson
37 Rigby Ave.
020 79561489
07832415289
012548
Larry Kirk
Eastham common
020 81478963
07723788945
012688
Richard Kemp
68 Crawley Ave
020 76598745
07894514578
017485
APM has no proper flow in their system, the manual files used to store client details do not have details of whether the job is complete for a specific client and what else needs to be done for a specific job if it is not complete.
Its is normally difficult to assign a job for a specific engineer, as the engineers are skilled in different ways; plumbing, electric, gas or general repairs, the work assigned to each engineer is normally different to each other. The user usually has to all the jobs of a type of work, plumbing, electric, gas or general repairs, and then word process them on Word themselves which is quite time consuming.
Data flow diagram (Level 1)
The following diagram illustrates in outline the process of documenting maintenance jobs for the existing system.
Hardware and Software facilities
Currently APM has a Network system with six Pentium III computers running at clock speeds of 600 MHz, all of which have hard disk drives of 20GB and 128Mb of memory. APM have Microsoft Windows 2000 running on their network and Microsoft Office 2000, and well as their accounts package. This hardware will be quite adequate to base a design for a suitable system.
User's I.T skill level and training needs
AMP uses its computers for the payroll system, its accounts system and other administrative purposes, their staff are experienced in using Word, Excel and Access. The staff is trained and knows how to use the windows environment. The new system cannot disrupt the working hours of the company since certain people are on a contract permitting them to only work certain hours. Other staff have children which are needed to be picked up from school so they cannot change there working hours.
Specification for the required system
Fulfilling the needs for the end user is the main aim of the new system, providing a feasible system with user-friendly functions to increase overall productivity. The system must be easy to maintain and yet be comprehensive enough to meet all the needs of the user. The system must be able to upgrade to adapt to the changing working patterns or the uses needs.
The type of hardware currently being used will almost certainly be an issue when designing a new system. It will not be feasible for the organization to invest in a new network of computers and peripherals. So when designing the new system this will have to be taken into consideration, the new system will probably be a software solution, which is compatible with their hardware.
Every morning staff switches on the system by individually turning on each computer on the network, upon turning on the network the user expects the system to be operable in a short amount of time in order to use the various programs. The new system must be quicker to load up and yet be able to carry out the functions.
The user will need to record the details when the call comes in from a client, then the details of the client's job needs to be recorded. This data then needs to be processed and then compiled onto a job log list depending on what type of work it is; electric, gas, plumbing or general repairs so the jobs can be assigned to a particular engineer. The time and date have also got to be considered when printing out the job log list out for an engineer on a particular day. A job log list then needs to be printed out for a particular day of jobs so that the engineer knows the address of the building which needs to be worked on, the timeframe at which the engineer is expected to come at, the name of the client, the job description of the work needed to be done and the necessary contact details including work and home phone numbers. When an engineer comes back to the company building at the end of a days repair jobs the status of each maintenance job needs to be inputted into the system. The system then needs to mark the jobs of that day either complete or incomplete, the incomplete jobs are the needed to be compiled in another table in the database so that user knows the jobs which need attention, and the complete jobs will then need to be removed from the database.
User Requirement
The system must:
* Hold details of clients, type of work and date of work to be carried out;
* Provide easy access and make alterations to the client records;
* Allow alterations of the job description details and the date/time/location details of the work;
* Process a job log list from the client records and from the arrangement details of the job;
* Print a processed "job log list" showing which type of work are to be done for each client on a given round each day;
* State the progress for any particular work if the work for a client is not complete then prioritize it in the arrangement a collation of a job log list.
* The system should be usable by someone with little or no experience of using office software.
Systems Design
Objectives of the new system
The system must perform the following functions:
- allow client details and maintenance jobs to be recorded and edited quickly and accurately;
- Produce a job log list which will take into account the type of work to be carried out and will be sequenced by the date/time of which the engineer as to carry out the work, which will be given to each engineer to refer to when they make their visits to clients property;
- allow rearrangement of work to be logged in advance so that the maintenance work can be cancelled or set to be done for another day/time;
- Allow jobs which are not complete to be rearranged for further work. And to keep these arrangements of a particular to be finished off until it has been completed.
Performance Indicators
The following performance indicators will be used:
. It should not take longer than 30 seconds to enter details of a new client and job requirements
2. The system must cater for any number of jobs to be done for a particular client.
3. The system must cater for any rearrangement of cancellation, change of date or time of work to be carried out.
4. The job log list must be in a format that will make it easy for the engineer to check that the correct work is to be done for the address on their round.
5. It should only take a few seconds to record, for example, a change of date or time for when work has to be done.
6. The system should be usable by someone with little or no experience of using office software.
Consideration of possible solutions
There are various possible methods of administering the new arrangement and dispatching system.
Manual System
This would be extremely time-consuming, requiring many job log lists to be produced either by using a word-processing package as they currently do, or by hand. It would be very difficult to rearrange the maintenance work details, as it would be quite cause problems with the sequencing the work in order of the type of work and the date/time of when it needs to be carried out. The calculation of invoices would be very lengthy and error- prone. It would be impractical to even contemplate using a manual system.
Spreadsheet System
This would enable the list of clients to be held on one sheet and their jobs on another sheet. The calculation of invoices could be automated to some extent. However it would be difficult to design a data entry form so that client details and job details entered in one operation. It is also much harder to format reports in Excel.
An off-the-shelf system
There are off-the-shelf packages available for companies like Adam Property Maintenance which needs systems which can handle this type of work and as there are many companies like APM which have similar requirements, this might be a very good solution.
The package would be well tested and documented and would be drawing on the experience and feedback from thousands of company's which are similar in their working practices over several years. It seems likely that after a trial period, APM may well decide to invest in such a package. I have interviewed another property maintenance company who uses this type of software and observed the system and have picked up some ideas for my own tailor made system. On the other hand, it might have limitations to the compatibility needs of the system. The requirements for the user might not be met from this kind of solution.
A system specifically designed for the property maintenance company
With tailor-made software's the software is designed to do exactly what the user wants, the software can be written to run on specified hardware, the software can be integrated with the existing software. The user can make specific requests to the programmer and this will enhance the overall performance of the system outcome. Making a program from scratch will be very difficult and time-consuming for the scope and timeframe for this AS course. It requires a lot of skill and dedication to develop.
Using the existing Accounts System
This does not have the specific capability to produce round reports, and client job orders would have to be re-entered each time, so it is not suitable. This system does not have the functionality of allowing the rearrangement of the jobs and mark the progression of on going work.
Access database
This is my chosen software tool. This system can be conveniently designed using Access; this is a relational database already installed on the user's network and available on the college network for development work. This is design base for my prototype of the new system. It will be easier to use the Microsoft Access environment to base the system in as it will provide the system with a means of construct and a guide for to plan ahead with the design of the system.
The system will be based on the concept of a database program using explicitly the relational tables features of a database software, it will provide the user with all the required information to make decisions suck as booking the arrangement for jobs with the client and finding out whether the client is a existing member of Adam Property maintenance through the database that Access allows.
Reason for choice of software
As there will only be a prototype to be made and not overall implemented working software the choice of software is only a base for me to consider the design onto.
The system will be designed using MS Access 2000. This package is ideal as it includes many features which can be used in customising the application, such as:
* Ability to relate tables through a common field;
* Ability to create a customised menu system ;
* Sophisticated form design capabilities ;
New system
Hopefully the new system will provide the user to arrange jobs to be done for the client much more efficiently, the new system that I am proposing to design will cover the users' needs in the dispatching of the engineers to the property which needs to be repaired.
The system will be fully computerised; it will be operating on the ring type topology network mentioned above all the data which flows will pass through a computerised system, i.e. there will not be any part of the system which will be done on paper, manually. This will be a good decision for the design of the system since it will minimize the errors and omissions that are prone in a manual system.
Now I will explain the working of the new system. Firstly when a new customer comes in to the company or contacts the company asking for maintenance work to be done for their property they are asked by a member of staff to state their details, if work for the client is going to be done for the client. The details include their name, initials, surname, address, telephone numbers of the clients home, work and mobile if the client has one, fax number if the client has one, e-mail address. This will then be entered into a computer connected to the network. Then the user has to enter the description of the work to be done for the client this will be done in another screen from the one which the client details were entered. The details of the Job description will be saved on another table in the database called the Work table.
The System Flow and Functions Design
This section of the report discusses the flow of the system, and the functions that the user can operate within the system.
When the user logs onto the system they are welcomed by the start screen it gives the user three options, the user can click on, clients, maintenance work or Quit as shown on sheet 1 in the screen designs.
When the user inputs the client details from the information that the client supplies, there has to be a interface which he/she can put the client details and build a record for the client, this is done when the user clicks on the add client button in the client menu as shown in sheet 2 in the screen designs, this then takes the user to the add client screen as shown in sheet 3, the user then enters all the client details in the interface and assigns the client a Client ID, the client is told their client ID and told to make note of it for future reference, this then adds the client to the client table in the database.
When the user wants to delete the client records they then click on the delete client button in the client menu shown in sheet 2 and then the will have to enter the Client ID to search the record that needs to be deleted, the searched record will then be displayed in the bottom of the screen and if the user wants to delete the record it will have to be selected and to finally deleted from the records the user must press delete and the top of the screen, the design for this screen is shown in sheet 4 of the screen designs. If the user wants to edit a customer record they will have to click on the find client button on the client menu shown in sheet 2 of the screen designs and then in the find client screen shown in sheet 5 of the screen designs enter the Client ID in the box provided, this will bring up the client record in the screen, the requested record will then have to be selected and to edit the record the user will press the edit button. This will then take the user to the add client screen shown in sheet 3 of the screen designs, the selected record from the find client screen will be displayed in the add client screen now and can be edited by deleting the information in the box of the screen and filling in the updated details of the client.
Once the agreement of the work to be done (including date/time) is settled, these details then will have to be stored on a separate record so that the user can take down the details from many clients and list them on this record .The user will do this by clicking on the maintenance work button in the main menu shown on sheet 1 of the screen designs, this will take the user to the maintenance work menu shown in sheet 6 of the screen designs, in order to add a job the ser will have to click on the add job button in this menu. The user will then be taken to the add job screen, shown in sheet 7 of the screen designs, where the user can fill in the details of the work to be done for the client. Once all of details of the work have been filled in, the user will press add record to add the job details of the maintenance work to the work table in the database. To delete or edit a job from the work table in the database the user will press the delete/edit job button in the maintenance work menu and then the user will be taken to the delete/edit job screen shown in sheet 8 of the screen designs. Here the user will search up the work table by entering the Work ID of the job the user wants to delete or edit and this will bring up the maintenance work assigned to that job and then all the user has to do to delete that record is select that particular record in the screen and press delete. To edit that particular record the user will select that record and press edit, this will then bring the user to the add job screen shown in sheet 7 of the screen designs, the user will then see the selected information in the delete/edit screen displayed in this screen. To edit the maintenance job information the user has to input the information he/she wants to update and press add record. To find a record from the maintenance work table the user has to click on the find job button on the maintenance work menu; this will then bring the user to the find job screen shown on sheet 9 of the screen designs. In this screen the user can look up the various jobs requested from a client. To print a job log list for a particular working day the user then will have to click on print job log list in the maintenance work menu; this will then take the user to the print job log list screen shown on sheet 10 on the screen designs. In this screen the user will enter the day for which he/she wants to print a lob log list for and the type of job then press ok to print otherwise press back to maintenance work menu to cancel. The jobs will then have to be sequenced by the order of the date/time period that they were arranged in and also the type of work that has to be done; plumbing, gas, electric or general repair work, these types of work will be the standard work genre's and when a maintenance job comes in from a client it will be put into either one of these genre's. The processing part of the system will have to sort the types of jobs done; (plumbing, gas, electric or general repair work) and the date and time of the jobs and put them onto a job log list. Keeping in mind that an engineer is suited to a particular type of maintenance work i.e. done; plumbing, gas, electric or general repair work, it will be essential that the engineer is tasked with the kind of work that they are suited to and that the job log lists are made accordingly. A job log list will then finally be printed.
When the engineer is dispatched for the day's jobs they will mark the jobs which have been completed and report to the staff which jobs have not been completed at the end of the day. These uncompleted jobs will then be rearranged by processing the jobs through the system again, and the job will be put on a job log list again. This job log list will then printed for another again and when the uncompleted job is completed it will be marked of the list. If the job is not completed again the same process of reporting it and rearranging of the job will be undertaken. The user will do this by clicking on the work status button in the maintenance work menu, the screen shown in sheet 11 of the screen designs will be displayed and the user can then enter the Work ID and then select the status of the work, either complete or incomplete in the look up of the box, if the user selects complete and the presses the ok button the work will be deleted off the work table in the database. If the user selects incomplete and then presses ok the record will be marked in red in the work table, this is done to highlight the work is not complete and needs attention.
If the user wants to find out any incomplete work the user will have to go into the find job screen of the system shown in sheet 9 of the screen designs, and click on the incomplete option and press find, then this will bring up only the work that is incomplete.
When a job is cancelled or rearranged it will have to be done at least 48 hours in advance so it can be edited or deleted from the records in the system. All related data from the rearrangement of the maintenance work will then need to be subsequently updated. This will be done by going into the delete/edit job screen shown in sheet six of the screen designs and going through the delete/edit process described above. The job will then update in the work table of the database.
Reason for choice of solution
As there will only be a prototype to be made and not overall implemented working software the choice of software is only a base for me to consider the design onto. This solution will be a software solution; there is no need for the company to invest in new hardware. The networked system can share all the information to all of the six computers. This is a good solution for the users as it provides them to access to any client records easily, and access to any work record easily. Provides the user with options to look for work which is incomplete so the user can bring attention to those that need to be complete and so it does not hinder the client for too long.
Normalisation
0NF
. Surname
2. Title
3. Initials
4. Client Address 1
5. Client Address 2
6. Maintenance work address 1
7. Maintenance work address 2
8. Telephone number (home)
9. Telephone number (work)
0. Fax number
1. Mobile number
2. E-mail Address
3. Time of work
4. Date of work
5. Description of work 1
6. Description of work 2
7. Description of work 3
8. Job Status
9. Postcode
NF
Client Table
Client ID
Surname
Title
Initials
Client Address 1
Client Address 2
Telephone number (home)
Telephone number (work)
Fax number
Mobile number
E-mail Address
Postcode
Work Table
Work ID
Type of work
Maintenance work address 1
Maintenance work address 2
Description of work 1
Description of work 2
Description of work 3
Time of Work
Date of Work
Job status
2NF
CLIENT Table
Client ID
Surname
Title
Initials
Client Address 1
Client Address 2
Telephone number (home)
Telephone number (work)
Mobile number
E-mail Address
Fax number
Postcode
JOBS Table
Client ID
Work ID
WORK Table
Work ID
Type of work
Maintenance work address 1
Maintenance work address 2
Description of work 1
Description of work 2
Description of work 3
Job status
Time of Work
Date of Work
3NF
CLIENT Table
Client ID
Surname
Title
Initials
Client Address 1
Client Address 2
Postcode
Telephone number (home)
Telephone number (work)
Fax number
Mobile number
E-mail Address
WORK Table
Work ID
Type of work
Maintenance work address 1
Maintenance work address 2
Description of work 1
Description of work 2
Description of work 3
Time of work
Date of work
JOBS Table
Client ID
Work ID
JOB_STATUS Table
Work ID
Job Status
Job description
Data Dictionary
Table Name: Client Table
Attribute Name
Data Type
Data Size
Validation
Purpose
Client ID
Text
0
Not Null
A unique ID for each client to tell one client apart from another
Surname
Text
25
Not Null
To report the surname of a client
Title
Text
4
At least 2 characters
To report the tile of a client
Initials
Text
3
No more than 3 characters
To report the characters of a client
Client Address 1
Text
25
Not Null
To state the first part of the client address
Client Address 2
Text
25
At least 3 characters
To state the second part of the client address
Telephone Number (home)
Number
1
Has to be equal to 11 digits is inputted
To report the clients home telephone number
Telephone Number (work)
Number
1
Has to be equal to 11 digits if inputted
To report the clients work telephone number
Fax Number
Number
1
Has to be equal to 11 digits if inputted
To report the clients fax number
Mobile Number
Number
1
Has to be equal to 11 digits is inputted
To report the clients mobile number
E-Mail Address
Text
30
Has to have a @ sign
To report the clients e-mail address
Client Postcode
Text
8
No more than 8 characters
To report the clients home address Postcode
Table Name: Work Table
Attribute Name
Data Type
Data Size
Validation
Purpose
Work ID
Text
6
Not Null
Unique ID which tells one job apart from another
Type of Work
Text
6
Look-up Wizard
The type of work to be carried out by a engineer
Maintenance work address 1
Text
25
Not Null
To report the first part of the address of which building the maintenance work is to be done to
Maintenance work address 2
Text
25
At least 3 characters
To report the second part of the address of which building the maintenance work is to be done to
Description of work 1
Text
60
Not Null
To report the description of the work.
Description of work 2
Text
60
Not over 60 characters
To report any Special requests for engineers
Maintenance Postcode
Text
8
No More than 8 characters
To report the maintenance work address postcode
Description of work 3
Text
60
Not over 60 characters
To report any Special requests for engineers
Time of Work
Text
5
Not Null
To report the timeframe the job has to be done
Date of Work
Date/Time
6
Not Null
To report the date of which the
Table Name: Jobs Table
Attribute Name
Data Type
Data Size
Validation
Purpose
Client ID
Text
6
Not Null
A unique ID for each client to tell one client apart from another
Work ID
Text
6
Not Null
Unique ID which tells one job apart from another
Table Name: Job Status Table
Attribute Name
Data Type
Data Size
Validation
Purpose
Work ID
Text
6
Not Null
Unique ID which tells one job apart from another
Job Status
Boolean
0
Look-up Wizard
To report if the job has been completed or not
Description
Text
60
More than 2 characters if inputted
To report the tasks left by the engineer to do.
Entity relationship diagram
There are four entities in the database related as shown in the following diagram
Prototype
The prototype will show the actual screens and the flow of the system. It will show how the user will interact with the system.
This is the main menu of the system. From here the user can click on the clients' button to add, delete, or find a client. If the user wants to enter the details for the maintenance work for the client it can be done by clicking on the maintenance work button on this main menu to take the user to the maintenance work menu whereby the user can add a job for a client, delete/edit job, find a job from the database, print a job log list for and engineer for a particular day, enter a job status for work currently being done or go back to the main menu. If the user wants to exit the system, it can be done by clicking the quit button on the main menu.
When the user clicks on the client button in the main menu he/she will be taken to this client menu. This is the Client menu which gives the user options such as adding a new client to the system, delete a client or finding a client, or if the user wishes to go back to the main menu they can click the main menu button.
When the user clicks the add client button they will be taken to the screen shown below.
This screen in the system allows the user to add the details of the client. A client ID will be automatically made for the client when the user enters the surname and address of the client. These entries will be processed to make the client ID. For example if the client is named Anita Patel and her home address is 77 St. Andrew's Ave the two entries will be processed and the client ID will appear as ANPA77ST. All the rest of the clients' information is then inputted into the relative boxes, when all the necessary information is entered the user will click on add record to finally put the user on the system. There will then be a record for the client created on the database on the client table. The user can also find a record by clicking on find record; delete a record by clicking on delete record or go back to the client menu by clicking on client menu. This screen also allows this user to update the clients' information by typing in the updated information in the relevant fields and then clicking edit record, this will affectively update the client table in the database too. When a record of the client details has been made the user then can ask about the details for the maintenance work to be carried out for the client. The details of the maintenance work have to be inputted into another screen shown later.
In the delete client screen the user is able to delete the selected record from the database.
This is done by the user inputting the Client ID then selecting a record in the screen and pressing delete. The user can also go to either the main menu or the client menu by clicking the respective buttons.
The user can also find the client record by clicking on the find client button on the client menu. The find client screen is then displayed as shown above. This is done by entering the client ID in the box provided for it and then the record on that Client ID will be displayed below. The user will then be able to edit that record if they wish to or use that record to find out about the client.
When the user wants to add a job for the client it is done by firstly clicking on the maintenance work button in the main menu, this then displays the maintenance work menu. For the user to add a job to be done for the client the add job button will be pressed and the add job screen which is shown below is displayed.
In this screen the user can add jobs to be done for the client. However the user can only add a job for a client if there is a client record in the database and the user needs to make one before adding a job to be done for a client. The user enters the Client ID for a user in the box provided. The work ID is generated when the user inputs the type of work, time of work and the date of work. This is because the work ID is related to the engineer; certain engineers in APM only do certain jobs, for example an engineer which is suited to plumbing would have jobs with a Work ID always starting with PL, for instance a Work ID like PL00031. When the rest of the details regarding the job are entered in to the boxes then the user will have to press add record to make a record on the database. If the user wants to delete or edit the job because client has changed their mind about the work to be done for them or APM has changed the details of the job to be done for the client, the can update the details by clicking Delete/Edit record. If the user wants to find a client job record it can be done by clicking on the find record button which will then take the user to the find job record screen shown later. Alternatively the user can exit this screen by clicking on the maintenance work menu button to return to that menu.
The user can get to this screen (above) by clicking on the Maintenance work button on the main menu then clicking the Delete/Edit job button while in the maintenance work menu. When the user wants to edit a client job record for any reason then he/she can do so by entering the work ID in the box while in the Delete/Edit job screen. This will then bring up the record with that work ID then the user can select the record and update the information in the record by changing the displayed information and clicking the Delete/Edit button. Alternatively if the user wants to delete the job record altogether then the user must enter the relative Work ID and the when the record is displayed delete everything from the fields of the record and then press Delete/Edit. This will delete the record from the database.
If the user wants to delete or edit a record for a maintenance job which is incomplete then the incomplete option has to be selected when entering the work ID for a job as shown below.
This will then only bring up the jobs which are incomplete. The user can edit or delete the details of the jobs which are incomplete and update or delete them in the usual way. Once the jobs have been updated they will be automatically be updated in the database.
When the user wants to find about a job record from the database there is an option the user can choose from the maintenance work menu by clicking Find job, clicking on this button then takes the user to the screen shown above. In this screen the user can search up the records of all the jobs to be done by the company by entering the work ID and clicking on Find. If the user selects the incomplete option button in this screen, and then clicks on the find button, the screen will display only the work which is incomplete from the database.
When the user wants to print out a job log list for an engineer to work on throughout a day the specific date and the specific type of work has to be inputted, the user has to firstly go to that screen by clicking on the Print job log list button in the maintenance work menu. Here the user has to specify the day for which the job log list has to be printed for and the type of work then press OK to print the list for that day and type of work otherwise click back to maintenance work menu to cancel.
Below is the job log list which would be printed out if the date 02/03/03 was entered and the type of work selected from the list box was plumbing. The list would then be given to any of the engineers which are suited towards plumbing.
Job Log List for: 02/03/03 Type of work: Plumbing
Maintenance work address 1
Maintenance work address 2
Maintenance Postcode
Description of work 1
Description of work 2
Description of work 3
Time of work
44 Russell Court
London
DA5 6PL
Pipe burst and is flooding basement
Please collect keys:
from 55 Aintree place
9am-12pm
41 Green Hill common
London
NW9 3HU
2 WC's are leaking investigate & remedy
NO INFO
NO INFO
0am-2pm
66A Rosehille Ave.
London
UB5 5YU
The Bath lets water through the floorboards
please check boiler motor
NO INFO
2pm-5pm
When and engineer comes back from the days jobs, he lets the staff at base in APM in Sudbury whether a particular job has been completed or not. This is then inputted in the screen shown below.
The user then has to navigate to the work status screen by clicking on the work status button in the maintenance work menu; this will bring the user to this screen. The user then has to input the Work ID of the job, the status of the job, whether it is complete or not. If the job is complete then the user can simply leave the description box empty and press OK this job will then be marked as done and the job will be taken of the database. If the user selects incomplete then a description of what is left to do is needed. When a description is provided for the incomplete job is inputted this record then gets put on a different part of the database called the job status table. This is then updated with the incomplete jobs to do.
When the Work ID for the incomplete work is entered the user has to select the incomplete option button. This will then search only the incomplete work; it is then shown and then can be put on the next job log list for an engineer who is suited to plumbing. The job will be kept recurring by enter the status of it until it has been completed.
Level 1 DFD for the new system
Evaluation
The prototype which is designed does overall meet the requirements of the user requirements. The requirements from the user was to hold details of client, the type of work they need to be carried out, it also provides easy access and make alterations to the client records. The user is also able to make alterations to the job description of the work needed to be carried out. The system can process a job log list from the relative information inputted e.g. type of work, data & time.
This system allows the user to print out a job log list for a specific engineer for a specific day. The system can also state the status of any job which is not completed. This system does not need a lot of IT skills to operate it.
Since the system is only a prototype the performance criteria cannot be fully evaluated but the system should work relatively quickly because of the way in which the database has been designed. The network in which APM have used is quite fast because it uses Intel Pentium III processors.
Users will find it quite easy to input new client information in the screens and navigate through the system by clicking the various buttons. When inputting the client job in formation the user will find easy to enter it to the database, if the user wants to add or rearrange information for the client work database it can easily be done. The prototype allows the user to update the information quickly for any job, and state the status for any job that needs to be done. The user will be able to print a job log list for any particular day easily by using the print job log list screen in the system. This will print out the jobs for a particular day easily.
The prototype needs improving on the navigation of the screens since it may take unnecessary time to go from the add job screen for example to the delete/edit job screen, whereas it would be less time consuming for the user to just edit or delete a job for the customer from the add job screen. The user interface is not a very appealing colour, so it could be improved by using better graphics to make it more appealing for the user to operate.
The system prototype has achieved these requirements:
* Hold details of clients, type of work and date of work to be carried out;
* Provide easy access and make alterations to the client records;
* Allow alterations of the job description details and the date/time/location details of the work;
* Process a job log list from the client records and from the arrangement details of the job;
* Print a processed "job log list" showing which type of work are to be done for each client on a given round each day;
* State the progress for any particular work if the work for a client is not complete then prioritize it in the arrangement a collation of a job log list.
* The system should be usable by someone with little or no experience of using office software.
The system prototype could be improved by:
* Changing the way the navigation is set out
* Making the GUI more appealing to look at.
* Making the system more user friendly by allowing users to a jobs for clients and editing the user jobs on one page.
Computing Coursework Ketan Patel