Design of System
I am going to prepare a system on Lotus Approach. I will construct two databases with the certain fields shown below.
Track Search Database
Details Of Artists
I have chosen to use Lotus Approach, as it is very user-friendly, easy to operate, easy to customise and holds a lot of data without taking up too much memory.
Hardware Resources
The necessary hardware needed to use this database is as follows: -
CPU 1.1 GH3, Memory 256Mb, Hard disk 20b
Monitor- To display the database
Mouse- Movement of the cursor
Keyboard- Data entry
All of this hardware is adequate enough to use my database. This is because, I have run the software program, Lotus Approach, on this speed hard drive and processor and it worked at a good speed. At first when I loaded Lotus Approach, it only took 5 seconds to load my database. Once in the database, it took 1.5 seconds to find specific song records, and 2 seconds to switch to my other database. I have specified the required amount of memory, CPU, and hard disk space that will be needed to use the database successfully and properly.
Specification Check
I will now work through the specification, and show how I can meet its requirements.
- To search for certain tracks, I will include a search button. This will allow the DJ to search for any requirement, including: - Length of track, name of artist and type of music.
- I have already shown that the hardware I will be using is adequate enough to use the database.
- I have chosen to construct the system as a database. Once any text box is chosen, the user may type text into the text box.
- I will design two separate databases. One for the track search, and a separate one for the artist information.
- In both databases I will design a button which, when pressed, will switch the user to the database they are not using. Eg. User in artist information, presses switch button, user now in track search database, and Visa Versa.
Verification and Validation
A validation is a human check in which data can be overlooked by several humans to search for errors, obvious mistakes, and make sure the data is correct. A validation is a machine check where data is checked by a computer. My whole database will be checked properly and thoroughly through a verification check, and partly
Software Resources
I could design a system on Flexi DATA or Lotus approach. Flexi DATA is not a relational database. Two Flexi DATA databases could not be joined or related. Lotus approach, however, will allow us to create different databases and link them with joins. Lotus approach will also allow me to delete, edit and copy records very easily. The search option in approach is very user friendly, and can be made to do certain searches.
Lotus approach can handle up to 200 records on one database, and only require 4 Mega Bytes of space. This will allow the DJ to create several databases and it won’t take up to much space. He specifically said that he required 350 records. I told him I would design a database, which will be able to handle 400 records. 8 Mega Bytes of space will be sufficient enough to handle this database.
Data Capture
The data, which will need to be put into the database, will come with CD pamphlets. These pamphlets come with all the information needed for each song. When the DJ uses the database, he can simply enter the data into the database. Therefore I will not need to design any sort of data capture forms.
When adding fields to the database, I will enter the information into the field entry window.
Program Structure
Track Search Database Fields
Artists Name: I need to include this field in order to recognise tracks and search for songs by that artist.
Artists reference Number: I have given each artist on my sample collection of data a reference number for quick recognition and easier searching.
Track Name: Each artist in my sample has a few tracks. I will need to be able to recognise each song, and see what the song is about by looking at the track name.
Type of Music: When the DJ compiles play lists, he will need to know what sort of music to put into. This field will help him recognise the music type quickly.
Track Length: Sometimes the play lists will have to be certain lengths and last for a certain amount of time. By displaying the track length, the DJ will be able to compile a selection of tracks that will fit into his time limit.
Choose this track?: When this field is selected, a drop down list appears displaying, ‘Yes’ and ‘No’. As the DJ browses through the database, he can select certain songs by clicking ‘Yes’ on the Choose this track field. At the end of his browse, he can click on the Play List Display button, and the tracks the DJ selected, will be displayed. He can the print this list out, and arrange the songs onto his CD player.
Artists Information
Artists reference number: This is so the DJ can relate certain artists to the information provided for each artist in the information database.
Artists name: This field is required in order for the DJ to make sure he has chosen the correct artist to find information for.
Main Type and Style of music: This is another way of seeing what sort of music certain artists perform.
Artists Music information: This field is the main reason I have created this separate database. This field shows all of the music information for each artist. For example, what sort of instruments used, how percussive the music is etc. I put this field in a separate database as it takes up a lot of space and does not need to be used as often as the fields on the track search database.
Macros (for the buttons)
Track Search Database
Chosen Tracks: This macro puts the user into the worksheet view, but only tracks in which the DJ has chosen ‘Yes’ for will be displayed. This is then his play list.
Find: This macro puts the user into the find view (blank record) in which he can search for certain track records.
Find all: This macro displays all records on the database in the, browse view.
Go To artist info: This macro allows the DJ to open and view the artist information database just by simply pressing one button.
Artists Information Database
All records: This macro displays all records on the database in the, browse view.
Go To track search: This macro allows the DJ to open and view the track search database just by simply pressing one button.
record search: This macro puts the user into the find view (blank record) in which he can search for certain artist information records.
Output Format
There are two outputs in the database, the play list, and the print option. When any number of tracks in the, Track Search database have been ‘chosen’, an option is available to view all of these tracks in a worksheet view. I can then print this play list out. Here is an example of a Hip-Hop play-list.
The play-list must have all of this information. It need the artists name simply for the DJ to see whom each track is by, and the track name so the DJ can recognise the song for either future reference, or if he has heard the song before and remembers the name. The Track length must be included in the play-list details, as the DJ must know how long each track is going to play for. If he is live, he must be able to get ready for the ending of a song. If the track length is displayed, he can see how long he has until he is live again. The artists’ reference number is shown in the play-list, so the DJ can quickly look up certain details for artists, on the artist information database. Lastly, the type of music must be displayed, so the DJ can make sure has chosen the correct type of music for the constructed play-list.
Testing
We must ensure that the database functions properly with no errors or defaults. To test the database, I will check all of the buttons and links, taking screen shots as I do it.
1st Check: ~ The Buttons
Here is a screen shot of the track search screen after pressing the find button.
I may then type in any thing I wish to find. I could for example search for music produced by Chad Muska, or any tracks that last over 2.30 mins. For the test, I will search for tracks by Chad Muska.
I must now press the OK button.
I can now prove that the find button in the Track Search database works successfully. All the tracks that were produced by Chad Muska can now be viewed.
I have included an all tracks button, to reset the records, and display all 37 records again. This should basically cancel the find button, and go back to how it was before the find button was used. I now need to test this button.
After pressing the all tracks button, all the records can now be viewed by using the default, skip record buttons. (found just above the Start button).
To avoid having to exit this database to get to the, Artist information database, I have included a shortcut button to that database. After pressing the button, the other database should be displayed, showing the first record; Aerosmith.
I now need to test the find button on the, artist information database.
This is the screen after I press the find button.
I will now search for an artist by using the artists reference number. I will type in the number 5.
To make sure it searches properly, I will press the OK button, at the top of the page.
This test has worked successfully. The last button test I will do is the track search button in the artist information database. This is a screenshot after pressing the button.
The check for this button is successful.
The final button I must test is the play list display button in the track search database.
Here is a screen shot of the database when it is first loaded.
I will now click on the ‘Choose this track field’.
A drop down list is displayed. I will select yes.
When I press the Play List Display button, it should display the selected tracks in a worksheet view.
It has worked. To ensure no errors occur when no tracks are selected, I will test to see what happens when I try to display un-selected records.
Here is a screen shot of the record when it is not ‘Chosen’.
I will now press the Play List Display button, to check what happens when I have no chosen tracks.
An error report has been loaded saying, ‘No records found by macro, ‘Chosen Tracks.’ When I press the OK button on the error message, it should disappear and let me browse through my data again.
The test for the Play List Display button has been successful and no errors have occurred.
2nd Check: ~ Incorrect Data
I will deliberately try and search for data that is not in my database, to see what happens, and check no errors occur.
Here is a screenshot of the track search database, after pressing the find button.
I will now fill in the search with rogue data.
I have filled in the search with rogue data in every box. When I press the ok button, it should say something like, “Unable to find record” for example. The ok button is located in the top right of the screen.
Here is a screenshot after I have pressed the ok button, confirming my search.
The find does not recognise this record. It then asks me if I want to search again or not. It also offers help on searching.
Evaluation
I have met each required specification needed for the database.
- It needed to have a search tool and be able to search for any required track. I met this specification by including a button in the track search database, which has a find macro.
- It needed to be able to hold at least 350 records, and the allowance of an extra 50 records if required. So a maximum of 400 records would be needed at any one time. By constructing a database in Lotus Approach, this number of records would be able to be handled by any modern computer.
- An easy way to write details of tracks etc. onto blank record files had to be included in my database. Lotus Approach is very user friendly, and inputting data is very easy for any user.
- Two different systems were required, one holding artist information, and one for track searching. This was easy to overcome, as all I had to do was simply construct two separate databases.
- An easy way to switch between each system was lastly required. By using Lotus Approach, I was able to create two different databases, and link them by joins and macros. I included a switch database button in each database, which would automatically switch the user to the database not already loaded, by just clicking the button.
I do not think that any further refinements would be necessary in my database, as it is already to a high standard, and works sufficiently.