Professional Documents
Culture Documents
Agency
IGCSE Computer Coursework
Contents
....................................................................................................................................................2
The Problem................................................................................................................................3
Description of the problem........................................................................................................3
Objectives................................................................................................................................3
Description of existing solution.................................................................................................4
Evaluation of existing solution..................................................................................................4
Description of other possible solutions.....................................................................................6
Evaluation of other possible solutions......................................................................................8
Design.........................................................................................................................................9
Action plan...............................................................................................................................9
Description of method of solution...........................................................................................10
Hardware................................................................................................................................18
Software.................................................................................................................................20
Implementation..........................................................................................................................20
Method of solution related to problem....................................................................................20
Accurate method of solution...................................................................................................21
...................................................................................................................................................24
...................................................................................................................................................24
...................................................................................................................................................25
...................................................................................................................................................25
...................................................................................................................................................26
...................................................................................................................................................28
...................................................................................................................................................28
...................................................................................................................................................29
...................................................................................................................................................29
...................................................................................................................................................30
...................................................................................................................................................30
...................................................................................................................................................31
...................................................................................................................................................32
...................................................................................................................................................33
Testing.......................................................................................................................................34
Test Strategy..........................................................................................................................34
Expected Results...................................................................................................................42
Documentation...........................................................................................................................45
Technical documentation........................................................................................................45
User Documentation...............................................................................................................50
Evaluation..................................................................................................................................54
Evaluation..............................................................................................................................54
Future Development Possibilities...........................................................................................56
2
The Problem
Description of the problem
Barrett’s Job Agency (BJA) is a private company that provides a service for people to
find jobs and to large companies to find employees. Over 3000 people have found a
job through BJA over the last 2 years, and many companies recruit solely from
them.
As the years went by, they have gained a good reputation for its quick and efficient
service, and is one of the UK’s leading job recruitment agencies. It has attracted
many people, and over the past 6-8 months, BJA have encountered a big surge of
new customers due their effective marketing campaign.
This company was founded around 75 years ago and it still uses an old system,
which hasn’t been developed for some time. When most industries became
computerised, BJA followed on. Even so, they haven’t kept up with the latest
technology, and only use a basic website and a spreadsheet (which is used like a
database). They face many problems nowadays, with the increase of the customers
and the new services the customers are demanding. For example, there have been
complaints that it takes a lot of time for a person to register, and the companies
often get wrong type of applicants.
BJA fears that they will lose many customers if they do not improve their response
time and accuracy.
Objectives
The objectives of BJS are as follows:
Business objectives:
• Increasing customer satisfaction
IT objectives:
• Computer based registration system
3
• Electronic reports available for business decision makers
It will need a server and terminals for users. A website will need to be hosted and secured for
customers to use at any time. New software and hardware wil be needed.
ADVANTAGES: DISADVANTAGES:
Staff do not need to be Takes long time to search for the correct
trained much candidates
4
Difficult to produce analysis reports of how
the business is doing
Interviews: I have talked with certain staff members about how they think their
current system is, and concluded the following:
Administrator: He is responsible for the website and the e-mails with the CV’s. Even
though this seems to be a small job, he says it is very tiring because many people
send their CV’s in wrong formats or do not have the correct information so he must
send them back. Sometimes, the applicants take long to reply back or may not reply
back entirely. The system is fairy simple for him, even though it is time-consuming.
Sometimes, he might input wrong information in the spreadsheet (i.e. a name in the
phone number section) and there is no validation techniques to stop errors like that.
He would like a database, and has been trying to make BJA adopt one for quite
some time.
Receptionist: The receptionist accepts the CV’s bought in person and passes this on
the to Administrator. She also arranges interviews, and does not have much to say
about her job. She hasn’t tried other tasks, so she thinks the system is simple and
quick.
Managing Director: It is clear the director is under much pressure. Many people
complain to him about the timely service. He has tried to employ more people to
help, but it has done more harm than good, as it hardly helps with the searching
process and costs more. When shareholders ask for a report on the company, he
has to make sure all the data is accurate and up-to-date because there could be
many errors in the spreadsheet. It is also hard to get certain information such as the
amount of people who joined in October 2008, as there is no way to find this other
than searching the spreadsheet manually.
He has agreed that a database would be a good solution to all these problems.
5
ADVANTAGES: DISADVANTAGES:
Can store large amounts of data Need to train staff to use the
system, this may take long
Easy to search, filter, organise, time
categorise etc…
Takes lots of effort to
Developed to match BJA’s exact needs develop this system
In conclusion, it does look like the database system has much more advantages for
BJA. It is exactly what they are looking for.
This solution is the one that is a web-based database system. The solution will
require development of the existing website and a new database. This solution will
developed according to the exact needs of BJA, and it will be developed by a local IT
development company who specialise in Web based system development.
Every staff member in BJA will have their own PC to use the new system.
Applicants would fill in an application form online, and once the data has been
validated, they will automatically be added to the database. The system will confirm
immediately when application is successfully added to the database. The
candidates will have option to edit their data once registered, as they will have login
6
details.
As for the companies looking for employees, they will have on-line access to the
agencies database. They will be able to search the database in a number of ways,
for example, by entering skills, age and qualifications of the candidates. Once
candidates are identified, the agency will make the necessary arrangements for
interviews.
The access will be controlled through security, so that only the relevant information
is shown. The companies will only see some details of the candidates like name, age
and qualifications, but not his personal details like telephone numbers or address.
Some information may be very confidential, and that will only be accessible by the
Account Manager or the senior management of agency.
Management will have various reports available to view and print. These reports will
show statistical information about the business, financial data and performance of
account managers.
There will be a backup for the database once a day. The backup will be stored off-
site, so that in the event of disaster, information is never lost.
Other alternatives
1. Ready-made Package
Ready-made Package
There are few companies that provide ready made packages that are designed for
recruitment agencies. These packages are quite generic and require agencies to
follow designed processes. There is little flexibility in changing these processes by
the agencies.
Any medications to the functionality will need to be requested to the vendor, and
this takes some time as vendors normally are not very responsive.
This option requires agency to use a system that has been designed and hosted by
a Service Provider (SP), and requires no installation on agency site. All the
technology is managed by the SP and the backups is responsibility of the SP as well.
Agency is allocated UserIDs and each staff can login via the Internet.
7
Evaluation of other possible solutions
The alternative solutions are evaluated in this section.
Ready-made Package
ADVANTAGES: DISADVANTAGES:
ADVANTAGES: DISADVANTAGES:
8
Design
Action plan
Tasks/Week
Number 1 2 3 4 5 6 7 8 9 10 11 12
Designing
required
output
Designing
file layout
Designing
program
Program
Coding
Tests/Debug
ging
User
Documentati
on
Technical
Documentati
on
Implementati
on
Evaluation
9
Description of method of solution
The solution software will be written from a programming language. The details of
the solution are shown below in the flow charts below. The actual screen shots of
development screens are shown in Implementation section.
Applicant Process
CV already
Registered? Login Yes Modify CV? No Delete CV?
added?
Yes No
No No Yes Yes
Forgot login
details?
System to
Enter mandatory
generate UserID Update database
details
and Password
Search job
No
database
Yes
Yes
Register interest
by selecting jobs
System to
generate email to
BJA account
manager
10
Companies Process
No
Company to enter
Enter mandatory
user details on Enter skills Enter job details
webpage details
System to
Email only if System searches
generate UserID
verified for applicant
and Password
System to email
Display results on
UserID and
webpage
Password to User
Found
Register skills No
applicant?
Yes
Request
interviews by
selecting
applicants
System to
generate email to
BJA account
manager
11
Administration Process
Update
Generate Backup
Login Website No No
Reports? System?
Content?
Update content
Publish
12
13
Database structure
Database is relational type. This means that tables are linked to each other by some
unique fields (could be generated automatically by database). Main table has
unique data and child tables can have repeated data for each record in main table.
For BJA, there is one table that has Account Managers information.
Each Account Manger can look after many companies and applicants.
Each applicant can have many entries for qualifications, employment and
education.
Table
Professional Qualifications
Table Table
Table
Education
Table
Table Table
Company Information Jobs
14
BJA Account Manager Database
Title 4 Text
Middle 25 Text
Name
Applicant Databases
Personal Information
ID 8 Nume
ric
Title 4 Text
Middle 25 Text
Name
DOB 8 Date
Address1 50 Text
Address2 50 Text
City 30 Text
Country 30 Text
15
Telephone Long Numb
Integ er
er
Email 30 Text
Gender 1 Text
Marital 1 Text
Status
When 8 Date
available
Location 60 Text
Employment History
ID 8 Nume
ric
Compan 50 Text
y
Date 8 Date
From
Date To 8 Date
Position 60 Text
16
on
Education
ID 8 Nume
ric
Institutio 50 Test
n
Date 8 Date
From
Date To 8 Date
Professional
Qualifications
ID 8 Nume
ric
Institutio 50 Test
n
Date 8 Date
From
Date To 8 Date
Company Information
Company ID 8 Nume
ric
Title 4 Text
17
Role in 30 Text
Company
Company 50 Text
Name
Address1 50 Text
Address2 50 Text
City 30 Text
Country 30 Text
Website 60 Text
Address
Jobs
Company ID 8 Nume
ric
Type 60 Text
Location 60 Text
Skills 60 Text
Hardware
Q HARDWARE DESCRIPTION JUSTIFICATION
T
Y
2 Main Servers These are the main • This is to provide High Availability
18
computer servers that will – if the main server fails. This will
run the database take over. They will accommodate
application and will have the the main servers. This is one of
database. If the system the requirements
goes well, more servers will • This also provides good
be open nationwide performance as both servers are
used
1 Development Development server. This • A separate server for
Server is to write programs and development is required that is
manage the system. isolated so that it does not affect
the live system in case new code
crashes during testing.
• Users testing and load testing can
be done on this server, where
large number of users are
simulated to see how system
behaves under load.
1 Backup Server A standby server • This is used to backup the system
data.
• It can also be used in the event
that both main servers fail.
10 Premium PCs PCs for the admin teams • Admin teams need powerful PCs
and developers. Staff need as they use various tools and
to access the database packages for managing system,
system through the browser hence they need more RAM and
on the Pc. faster CPUs.
• Admin teams often do some
testing on their machines so
faster PC with bigger disk space
is required.
4 Standard PCs PC for the business users. • Users only need PCs for browsing
They requires access to internet and office work, so
statistics and reports standard PC is recommended as
through the browser on the it reduces costs.
PCs.
1 Router/switch Combined router/switch • This is a must for efficient
required for networking (i.e. networks.
internet) • Cheaper solution than developing
in-house switching systems.
19
Software
Q SOFTWAR DESCRIPTION JUSTIFICATION
T E
Y
1 Database The database software. Vendors have already developed
package database packages, so it is easy to use
existing databases like Microsoft SQL
Server or Oracle Database. The
advantages of using these are that
vendors provide fixes for security threats
and bugs on a regular basis.
1 Development Tool that will be used for Easy to use tools are already available.
Application developing programs. They are called Integrated Development
Tool Environments (IDE). They allow faster
way to develop applications.
1 Graphics Package to design graphics. Graphic packages allow quick design of
Package graphics with powerful design patterns.
19 Antivirus Protection of PCs against This is essential as virus threats are
viruses. always present, from surfing the net to
email and attachments.
19 Office Staff need access to Word Office packages are essential for staff.
Package and spreadsheet for Spreadsheets, word processers and
personal productivity. email clients are absolutely minimum. For
managers, they will need software to plan
for projects.
Implementation
Method of solution related to problem
The new system will be developed and tested by week 8, as shown in the project plan, under
section Design.
The new system will be implemented during the 2 week period, week 9 and 10.
During this period, the old system will continue to be used in parallel. This way, if the new
system has any faults, or something major goes wrong, then at least the old system is in place
and so company will not suffer too much.
During end of week 9, the stored information (for example, new applicant details and new
company jobs information in both spreadsheet and the database) from the old and new system
will be compared to ensure that the new system is keeping correct information. If it is verified
20
that new system is working correctly, then the old system will be switch off from week 10
onwards.
The implementation of the new system is done from the following pseudo-code:
Applicant Module
Company Module
Administration Module
21
Database and Reports Development
Database Design
Database design is carried out using the database package. This is GUI driven and easy to use.
The screen below shows how tables can be created. The Data Type field has drop-down list
which is used to specify data type like Text or Number.
22
Forms Design
The input and display forms can be designed easily using wizards from the package. For
example, the screen below shows how to create form for CV.
The wizard will bring up series of panels which will take user through the form design steps.
23
24
The final form is displayed below:
25
26
Reports Design
Reports can also be design by using wizards from the development package.
To design report, click on Report Wizard from main menu to start the process.
Series of panel are presented, which will lead toward final report.
27
28
29
To customize the report, for example, to write your own code, you can right-mouse click the
report canvas, then select on Build Event link, as below.
30
Next, click on Code Builder as below.
31
Now you can start to write your own code, as below.
32
33
Testing
Test Strategy
Testing will take place between week 5 and 7 of the project plan.
Unit Testing
The developers will first unit test their programs or parts of the system individually. This is to
ensure that each part of the system is designed to meet the requirement. Any changes required
can be made quickly.
System Testing
This is the second stage of testing where all programs and parts are put together and testing is
done from the entry of data from user screens all the way to database. The data flow in the
system is checked to ensure it is handled correctly. And each part is connecting correctly to
others.
Part of the system testing is the security and high availability testing.Testing is done for security
to see if data is protected. This is done by one member of test team who will try to ‘hack’ into the
system, or by sending garbage data or malicious code.
For high availability, the two main servers will be used. While system is running, one server will
be ‘shut down’ by disconnecting the network cable (which simulates server failure).
Performance Testing
This is the last of the tests to check if system can handle large number of users. This is normally
done by a load testing tool, which can automatically generate hundred or thousands of
simultaneous users.
This test is known as stress or load test, and it shows how the system will behave under
extreme load. Response time is also measured when system is being loaded with lots of users.
This will show how fast the system is under different load conditions.
Test Data
34
r ID er ber er)
Personal Information
35
City 30 Text London Lon_d0n} London123456789012
345678901234
Gender 1 Text F 2 M
Marital 1 Text S } M
Status
012345678912345678
9055
012345678912345678
9055
36
Interests Mem Text Sports, SP54%_^@ Connecticut edged
o mountain :@S:@$%$ Memphis for the No. 4
climbing £%^ overall seed but both are
projected to be in the
Phoenix (West) region,
where they could meet in
the final on March 28.
Employment History
7890123456789
Education
37
ID 8 Num 1234 12ab 12345678
eric
0123456789
Professional Qualifications
90123456789
38
Company Information
39
Teleph Lon Num 123456 AB34_ 18446744073709551615
one g ber
Inte
ger
Jobs
012345678912345678905
5
012345678912345678905
5
40
012345678912345678905
5
41
Expected Results
Invalid Data: System should reject data.
This is an example of invalid date of birth. The system rejects this as the input is not in the
correct format.
42
Valid Data: All the data should be accepted by the system.
Valid data should be accepted by system. The record below has been accepted by the system.
43
Extreme Data: All the data should be accepted by the system because it conforms to the
validation rules and the filed length(s).
44
Documentation
Technical documentation
SERVER DOCUMENTATION (all server are same spec)
Processors
Single Quad-CoreTM Intel® Xeon® 3300 series
Memory
Four ECC DDR-2 667/800 SDRAM DIMM 8GB of memory
Operating Systems
Microsoft Windows® Server 2008, Standard and Premium Edition
StorageHard Drives:
400GB, 10K SAS Hard Disk Drives
Drive Bays
2 x 3.5" cabled hard drive bays
Communications
2x embedded Gigabit NICs
Chassis
Form Factor: 1U Rack
Height: 1.68" (4.27 cm)
Width: 17.60" (44.70 cm)
Depth: 21.50" (54.61 cm)
Weight: ~ 26.0 lbs. (11.80kg)
Ports
Rear: 2 x USB 2.0 ports, 1 x video connector, 1 x serial connector, 1 x PS/2 mouse connector, 1
x PS/2 keyboard connector
Front: 2 x USB 2.0 ports, 1 x video connector
Power
Single power supply (345W)
Graphics
Integrated ATI® ES1000 VGA Controller with 32MB memory
Management
Dell Server Assistant CD included
Dell OpenManage Software included
Standard BMC with IPMI 1.5 support
Optional DRAC 4/p for advanced remote management capabilities
45
PREMIUM PC
Processor
Intel® Pentium® Dual-Core Processor
Operating Systems
Genuine Windows Vista® Business
ChipsetIntel® G31 (ICH7) Express Chipset MemoryUp to 2 DIMM slots; Non-ECC dual
channel 800MHz DDR2 SDRAM, 4GB Graphics Cards
Networking
Integrated Broadcom® (BCM5784M) Gigabit LAN
Hard Drives7200RPM SATA II up to 320GB, 3.0GB/s; 2nd hard drive available on mini tower
Power Supply
255W Standard Power Supply, 255W 85PLUS Power Supply (available after Nov 08)
Internal Port
Two Serial ATA (7-pin) on the DT, and Three Serial ATA (7-pin) on the MT Hard Drives
STANDARD PC
Processor
Intel® CoreTM 2 Duo Processor
Operating Systems
Genuine Windows Vista® Home Basic
ChipsetIntel® G31 (ICH7) Express Chipset MemoryUp to 2 DIMM slots; Non-ECC dual
channel 800MHz DDR2 SDRAM, 2GB Graphics Cards
Networking
Integrated Broadcom® (BCM5784M) Gigabit LAN
Hard Drives7200RPM SATA II up to 160GB, 3.0GB/s; 2nd hard drive available on mini tower
Power Supply
255W Standard Power Supply, 255W 85PLUS Power Supply (available after Nov 08)
46
Standard I/O Ports
(1) VGA
(8) USB 2.0 2 front, 6 rear Optional via PCI add-in card
PS2 (Optional via PCI add-in card)
Ethernet (RJ45)
Serial (9-pin) (16550 compatible)
1 parallel (25-hole, bi-directional)
Line-in (stereo/microphone)
Line-out (headphone/speaker)
Internal Port
Two Serial ATA (7-pin) on the DT, and Three Serial ATA (7-pin) on the MT Hard Drives
SOFTWARE
DATA STRUCTURE
Tables Relationships:
47
48
Administration of System
http://www.bja.com/admin
3. Applicant Login ID and Password will be emailed to the users email address on the
system.
2. A new page will come up, showing links to various pieces of content from Website. Click
Edit button next to the content.
3. When content is displayed on new page, edit the content in the editor. Click Save button
to save the changes. You will be returned to previous page, from where other content
can be updated.
Generating Reports
1. Once logged in, click on Generate Reports link from the left menu. This will bring up a
page with options to select various reports.
3. You can either save the report to local computer or print it. Click on Save or Print
buttons as desired.
Backing up System
1. Once logged in, click on Backup System link from the left menu. This will start the
backup process of data.
49
2. Once backup is complete, system will display message “Backup was Successful”. Click
Return to go back to homepage.
3. If backup was not successful, the system will display “Error – cannot backup”. In this
case, you must click on View Error Log button to display complete error message.
User Documentation
Applicants
http://www.bja.com
2. To sign in, enter UserID and password on BJA homepage. Click on Login button. To
reset login details, click on Forgot Password? Link.
2. A new applicant form will come up. Enter applicant data in the fields marked mandatory.
3. Click Submit button to add the applicant to the system. Applicant ID will be automatically
allocated by the system.
3. Applicant Login ID and Password will be emailed to the users email address on the
system.
50
Adding CV
1. Once logged in, click on Add New CV link from the left menu. This will bring up a page
with empty form.
2. Enter information in the form. You can cut and paste from your word processing
document to the form. You must enter mandatory information where fields are marked
with asterisk (*).
Updating CV
1. Once logged in, click on Update CV link from the left menu. This will bring up a page
with CV details.
2. Update information in the form. You can cut and paste from your word processing
document to the form. You must enter mandatory information where fields are marked
with asterisk (*).
Deleting CV
1. Once logged in, click on Delete CV link from the left menu. This will bring up a page with
message “Proceed to delete CV”. Click on Proceed button to continue.
2. To delete CV, click on Delete CV button, or to cancel and go back click on Cancel
button.
2. Select type of job from drop-down Job Type menu, or enter information in the search
fields. Click on Search button to continue.
3. If jobs are found, you will be presented with a list of jobs table. Click on the View button
next to job to see details.
4. When viewing a job, you can apply for a job. Click on Apply button on the right hand
side. This will send your CV to the company for consideration. You will receive an email
51
with details of your application.
5. If no jobs are returns, the system will present you with an option to send your details to
BJA Account Manager. This way you can register your interest. As soon as suitable job
is found, you will be contacted by BJA. Click to Register for Job button to register your
interest.
Company
http://www.bja.com
2. To sign in, enter UserID and password on BJA homepage. Click on Login button. To
reset login details, click on Forgot Password? Link.
3. Applicant Login ID and Password will be emailed to the users email address on the
system.
2. A new job form will come up. Enter job information in the fields marked mandatory.
3. Click Submit button to add the job to the system. Job ID will be automatically allocated
by the system.
52
2. Select type of skills from drop-down Skill Type menu, or enter information in the search
fields. Click on Search button to continue.
3. If applicants are found, you will be presented with a list of applicants table. Click on the
View button next to applicant to see details.
4. When viewing an applicant, you can apply for an interview. Click on Get Interview
button on the right hand side. This will send your request to BJA to arrange for interview.
You will receive an email with details of applicant you selected.
5. If no applicants are found, the system will present you with an option to send your details
to BJA Account Manager. This way you can register your interest. As soon as suitable
applicant is found, you will be contacted by BJA. Click to Register for Skill button to
register your interest.
53
Evaluation
Evaluation
N Objective Complete Results/Evaluation
o d
1 Increasing customer satisfaction Customer satisfaction has increased.
This was measured by a survey
conducted 1 month after system went
live.
2 Increase productivity of BJA staff More applicants have been served
without increasing staff at BJA.
3 Provide a fast way for customers to Companies have found that they can
find suitable employees now locate applicants within minutes
instead of hours of days.
4 Provide a fast way for applicants to Applicants can now register within
register minutes. In the past this took a day or
longer.
5 Reduce overall costs BJA has not seen any increase in cost
when more applicants have registered
on the new system. In addition, as
reports can now be generated
electronically, and most
correspondence is by email, the cost of
using paper and postage has been
reduced.
6 Computer based registration system This has been successfully
implemented.
7 Applicant information stored in a All manual data has been transferred to
database database.
54
55
Future Development Possibilities
Since the foundation of the new system has been laid, any future development will require less
effort. For example, managers may need new reports, so this can be done easily by adding
extra queries.
1. Offering new services to applicants and companies like SMS notification for interview
dates, proactive monitoring of user behaviors and using fuzzy logic to match skills with
requirements.
2. Increase in applicant numbers and job postings by opening BJA services to world-wide
customers.
To handle these, extra capacity is required. This will require upgrade of the server (ie. faster
processor, more RAM etc), and increase in storage capacity.
This can be done in phased approach so that there is minimal impact on the current system.
Expansion of IT infrastructure will require hiring of new IT manager and technical staff, as this
will become a requirement to keep the system running optimally.
56