29
SWEP Smith & Wilson Executive Placements Ltd SAD Case Study David Grylls 29 th May 2007

Smith & Wilson Executive Placements Ltd samples/07.hsa... · Smith & Wilson Executive Placements Ltd (SWEP) is a recruitment organisation which ... The purpose of this report is to

  • Upload
    dangtu

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

SWEP

Smith & Wilson Executive Placements Ltd

SAD Case Study

David Grylls

29th May 2007

INDEX 1. INTRODUCTION 3 1.1 Case Study Scenario 3 2. SYSTEMS ANALYSIS 3 2.1 Terms of Reference 3 2.1 Statement of Purpose 3 2.3 Requirements 4 2.4 Systems Model 5 2.5 Context Diagram 6 2.6 Events List 7 2.7 Individual Context Diagrams 8-10 2.8 Top-Level Dataflow Diagrams 11-13 2.9 Low-Level Dataflow Diagrams 14-18 3. SYSTEMS DESIGN 19 3.1 Data Dictionary 19-23 3.2 Datastores Structure and Elements 24-25 3.3 Dataflows Structures and Elements 25-26 4. CRITICAL REVIEW 27 5. REFERENCES 28 6. APPENDIX 29

2

1. INTRODUCTION 1.1 Case Study Scenario Smith & Wilson Executive Placements Ltd (SWEP) is a recruitment organisation which matches people seeking new job opportunities with companies offering employment prospects. The role of SWEP is to identify suitable Jobseekers that are suitable for job vacancies and shortlist Jobseekers for interviewing. This is done using information submitted to SWEP during the Jobseeker registration process. This information can be updated at any time if the Jobseekers circumstances were to change. Companies also register with SWEP, before vacancy information can be submitted. It is then the responsibility of SWEP to advertise the vacancies for the companies, this will then lead to the short listing of suitable candidates for interviewing. Please note: This system is not base entirely as specified in supplied case study

2. SYSTEMS ANALYSIS

2.1 Terms of Reference

The purpose of this report is to analyse and design a computerised system for the SWEP. The new system will be used to replace the current out of system. The report should provide a basis from where SWEP can go on to implement the new system with minimal disruption to the recruitment process of Smith & Wilson Executive Placements Ltd Recruitment.

2.1 Statement of Purpose

The system will record all Jobseekers, including Jobseekers requirements and Curriculum Vitae (CV) information. The system will then identify suitable vacancies using this information. The system will distribute further information about the vacancy before when required. The System will record advertisements and distribute to relevant Publications as well as recording receipts from payments made for advertising. Finally the system should create and store invoice information from Companies.

3

2.3 Requirements

The system should:

• Register new Jobseekers

• Create a confirmation/rejection letter

• Update Jobseeker information

• Store details of requirements and CV

• Issue vacancy details to Jobseekers

• Register new companies

• Create a confirmation letter with account number

• Update company information

• Create and store interview shortlists

• Create and store job adverts

• Create and store billing/invoice details

4

2.4 Systems Model

For the purpose of this report all Dataflow Diagrams used are based on Yourdon’s model, whereby the following symbols are used:

Symbol Duplicate Symbol Description

Entity – has an input into the system or

receives output from it. Does not exist within

the system itself

Identifier: a, b, c…..x, y, z and a name.

Process – represents the processes which

must take place inside the system

Identifier: 1, 2, 3, …. and a name.

Data store – where information is held over

time

Identifier: 1, 2, 3, …. and a name.

Data flow – the direction of the arrow shows

the direction in which the data flows within

the system

adapted from Nawaz [1] Further information can be found in chapter 9 of Ed Yourdon's on-line book, "Just Enough Structured Analysis" http://www.yourdon.com/strucanalysis/chapters/ch9.html [2]

5

2.5 Context Diagram: SWEP

Figure 1: Context Diagram The Context diagram in figure 1 shows the data and information flows between SWEP, the Jobseekers, Companies and the Publications. This ensures all processes are completed to ensure a Jobseeker finds employment.

6

2.6 Events List 2.6.1 Jobseekers Events 2.6.1.1 Jobseeker registers with SWEP 2.6.1.2 Jobseeker submits requirements/CV 2.6.1.3 Jobseeker updates requirements /CV 2.6.1.4 Jobseeker requests vacancy information

2.6.2 Company Events 2.6.2.1 Company registers with SWEP 2.6.2.2 Company updates SWEP via account number 2.6.2.3 Company submits job vacancy information 2.6.2.4 Company informs SWEP of interview results 2.6.2.5 Company pays relevant fee 2.6.3 Publications 2.6.3.1 Invoice issued to SWEP 2.6.3.2 Receipt issued to SWEP 2.7 Individual context diagrams (CD) The CD has been split into 3 sections to prevent confusion. The sections will be integrated in the finished system 2.7.1 Jobseeker Administration Terms of reference SWEP will register new Jobseekers and confirm registration or rejection by letter or email. SWEP will obtain Jobseekers job requirements and CV information; this information will be stored ready to match to job vacancies. Jobseekers may update their personal information at any time. The Jobseeker can request further information about job vacancies advertised with SWEP.

7

Statement of Purpose The System should record and store all Jobseeker details including CV and job requirements and issue further information in relation to job vacancies.

Figure 2: CD for Jobseeker Administration

8

2.7.2 Company Administration Terms of reference SWEP will register new Companies, confirm registration and allocate account numbers. Companies will notify SWEP of job vacancies. SWEP will compile a interview short list and notify each company. Companies will then contact the Jobseeker to arrange the interview. SWEP will be notified by the company when the successful Jobseeker has been recruited. SWEP will then create invoice details for company fees. Statement of Purpose The system will record and store all Company information including job vacancies invoice and fee payment information.

Figure 3: CD for Company Administration

9

2.7.3 Publications Administration Terms of reference SWEP will create job advertisements for vacancies notified by each company. SWEP will distribute an advert copy to various Publications. SWEP will then receive billing invoices and receipts after from each Publication. Statement of Purpose SWEP will create job adverts and store each advert, invoices and payment receipts will also be stored and finally payments will be issued to Publications.

Figure 4: CD for Publications Administration

10

2.8. Top-Level Dataflow Diagrams (TL DFD) 2.8.1 Jobseeker Administration

Jobseeker registers, SWEP checks Jobseeker details with SWEP records and then send confirmation or a rejection letter or email. Jobseekers details will be recorded and the Jobseeker will then submit job requirements and CV. A Jobseeker can request further information about a current vacancy; this information is stored and will be sent to the Jobseeker by post.

Figure 5: TL DFD for Jobseeker Administration

11

2.8.2 Company Administration Companies will register with SWEP and their information will be stored. Confirmation will be issued to the Company along with an account number. Companies can then update their information at anytime by supplying their account number and new information. This information will be used in the vacancy registration stage. Companies will then submit job vacancy information and be allocated a vacancy reference number. The vacancy details will be stored. When a Jobseeker has been successful SWEP will be notified and the Jobseekers details will be recorded in the Interview Results data store, invoices will then be generated using this data along with Company data store information. SWEP will then send an invoice to the Company with fee details and issue receipts when payments are received.

Figure 6: TL DFD for Company Administration

12

2.8.3 Publications Administration

SWEP creates advertisements from stored vacancy information, there are then distributed to various Publications and a copy of the advert is stored.

Invoices are received from Publications and are stored, the invoices are checked with the Advert copy data store and payments are then issued to the Publication. Receipts will be stored when sent by the Publication.

Figure 7: TL DFD for Publications Administration

13

2.9 Lower-Level (LL) Dataflow Diagram 2.9.1 Jobseekers Registration

Figure 8: TL DFD for Jobseeker Registration

14

2.9.2 Company Vacancies

Figure 9: TL DFD for Company Job Vacancies

15

2.10 Lower-Level (LL) Dataflow Diagram 2.10.1 Company Registration

Figure 10: LL DFD Company Registration

16

2.10.2 Vacancy Registration

Figure 11: LL DFD for Vacancy Registration

17

2.10.3 Process Account

Figure 12: LL DFD for Account Processing

18

3. SYSTEM DESIGN 3.1 Data Dictionary The data dictionary is a description of the data stores that are used within the system. It is used to describe the data structures and elements of the data stores. Due to lack of time all data stores are not shown. Data Store:

1 Jobseekers

Data structures:

REGISTRATIONS = {REGISTRATION}

REGISTER = Jobseeker+ADDDRESS+OCCUPATION

JOBSEEKER = J_titleJ_fname+J_sname

JADDRESS = house#+street+town+county+postcode

JDETAILS = date_of_birth+ tel_no_home+tel_no_work

Data Elements:

J_title = 1{char}4 **[Mr|Mrs|Miss|Dr]

J_fname = 1{char}20

J_sname = 1{char}20

house# = 1{char}3 **usually numeric but can form from subset [0..9|a..z|A..Z]

street = 1{char}20 **usually from [A..Z|a..z|0..9,-]

town = 1{char}20 **usually from [A..Z|a..z|0..9,-]

county = 1{char}20 **usually from [A..Z|a..z|0..9,-]

postcode = 7{char}7 **format $$# %$$ where $=[A..Z] #=[1..99] and %=[0..9]

date_of_birth = date **format dd/mm/yy

age = 1{char}2 **numeric [1..999]

tel_no_home = 12{char}12 **usually from [0..9||-]

tel_no_work = 12{char}12 **usually from [0..9||-]

19

3.1 Data Dictionary cont.. Data Store:

2 Jobseeker

Requirements

Data structures:

JOBSEEKER REQUIREMENTS = {JOBSEEKER REQUIREMENT]

JOBSEEKER REQUIREMENT = LEARNER+LADDRESS+COURSE+tutor

LEARNER = l_title+l_fname+l_sname

LADDRESS = house#+street+town+county+postcode

COURSE = @class_no+course_title+day+time

Data Elements:

J_title = 1{char}4 **[Mr|Mrs|Miss|Dr]

J_fname = 1{char}20

J_sname = 1{char}20

occupation = 15{char}15

fulltime = 2{char}3 **[yes][no]**

parttime = 2{char}3 **[yes][no]**

Preferred location = 1{char}20 **usually from [A..Z|a..z|0..9,-]

Preferred salary = currency £

date_of_birth = date **format dd/mm/yy

occupation = 15{char}15

Years of experience = 1{char}1 **{1|2|3|4|5|6|7|8+]

Company car = 2{char}3 **[yes][no]**

20

3.1 Data Dictionary cont.. Data Store:

3 Company

Data structures:

REGISTRATIONS = {REGISTRATION}

REGISTER = COMPANY+ADDDRESS+REIGON

COMPANY = C_name

CADDRESS = house#+street+town+county+postcode

CDETAILS = Fax+tel_no

Data Elements:

C_name = 1{char}20

house# = 1{char}3 **usually numeric but can form from subset [0..9|a..z|A..Z]

street = 1{char}20 **usually from [A..Z|a..z|0..9,-]

town = 1{char}20 **usually from [A..Z|a..z|0..9,-]

county = 1{char}20 **usually from [A..Z|a..z|0..9,-]

postcode = 7{char}7 **format $$# %$$ where $=[A..Z] #=[1..99] and %=[0..9]

tel_no = 12{char}12 **usually from [0..9||-]

Fax_no = 12{char}12 **usually from [0..9||-]

Contact_person = 1{char}20

21

3.1 Data Dictionary cont.. Data Store:

4 Vacancies

Data structures:

VACANCIES = {VACANCY}

VANCANY = COMPANY+ADDDRESS+REIGON

VACANCY = V_name

Data Elements:

v_name = 1{char}30

V_description = 1{char}100 **usually numeric but can form from subset [0..9|a..z|A..Z]

Location_street = 1{char}20 **usually from [A..Z|a..z|0..9,-]

Location_town = 1{char}20 **usually from [A..Z|a..z|0..9,-]

Location_county = 1{char}20 **usually from [A..Z|a..z|0..9,-]

Location_postcode = 7{char}7 **format $$# %$$ where $=[A..Z] #=[1..99] and %=[0..9]

Contact_tel_no = 12{char}12 **usually from [0..9||-]

Contact_Fax_no = 12{char}12 **usually from [0..9||-]

Contact_person = 1{char}20

22

3.1 Data Dictionary cont.. Data Store:

5 Invoices

Data structures:

INVOICE = @invoice#+date+{COMPANY}+total+payterms

COMPANY = CONTACT+CADDRESS+JOBVACANCY

CCONTACT = forename+surname+tel_no

CADDRESS house#+street+town+county+postcode

Data Elements:

C_name = 1{char}30

vacancy = 1{char}30

Contact_tel_no = 10{char}30 **usually from [0..9||-]

Location_town = 1{char}20 **usually from [A..Z|a..z|0..9,-]

Location_county = 1{char}20 **usually from [A..Z|a..z|0..9,-]

Location_postcode = 7{char}7 **format $$# %$$ where $=[A..Z] #=[1..99] and %=[0..9]

Contact_tel_no = 12{char}12 **usually from [0..9||-]

Contact_Fax_no = 12{char}12 **usually from [0..9||-]

Contact_person = 1{char}20

23

3.2 Datastores Structure and Elements

Due to lack of time all datastores cannot be shown Name:

1 Jobseekers

Description: **SWEP’s customers** Content: REGISTRATIONS = {REGISTER} Inputs: 1.1 check registration Outputs:

Read: Live / daily / weekly / monthly Vol: Write: Live / daily / weekly / monthly

Status: Disk / Paper Ledger / Written Report Name:

2 Jobseeker

Requirements

Description: **the Jobseeker submits job requirements Content: JOBSEEKER REQUIREMENTS = {JOBSEEKER REQUIREMENTS} Inputs: 1.2 store requirements Outputs:

Read: Live / daily / weekly / monthly Vol: Write: Live / daily / weekly / monthly

Status: Disk / Paper Ledger / Written Report Name:

3 Companies

Description: **Companies registering and updating records Content: COMPANIES = {COMPANIES} Inputs: 1.3 register & update details Outputs: 1.3 register & update details

Read: Live / daily / weekly / monthly Vol: Write: Live / daily / weekly / monthly

Status: Disk / Paper Ledger / Written Report Name:

4 Vacancies

Description: **Job vacancies submitted by companies Content: VACANCIES = {VACANCIES} Inputs: 1.4 store vacancies Outputs: 1.4 store vacancies

Read: Live / daily / weekly / monthly Vol: Write: Live / daily / weekly / monthly

Status: Disk / Paper Ledger / Written Report

24

Name:

5 Invoices

Description: **invoice to company for services Content: INVOICE = {INVOICE} Inputs: 1.5 successful interview invoice Outputs: 1.5 successful interview invoice

Read: Live / daily / weekly / monthly Vol: Write: Live / daily / weekly / monthly

Status: Disk / Paper Ledger / Written Report 3.3 Dataflows Structures and Elements Due to lack of time unable to show dataflows but have listed a few below. Name: Register

Description: A Jobseeker registers details Content: = REGISTER Source: Process

1.1 Registration Data Store 1 Jobseeker

Destination: Process 1.1 Registration

Data Store 1 Jobseeker

Read: Live / daily / weekly / monthly Write: Live / daily / weekly / monthly Status: Disk / Paper Ledger / Written Report Name: Vacancy info request

Description: Jobseeker requests information about vacancy Content: = vacancy information request Source: Process

1.2 company vacancies Data Store 1 Jobseekers

Destination: Process 1.2 company vacancies

Data Store 1 Jobseekers

Read: Live / daily / weekly / monthly Write: Live / daily / weekly / monthly Status: Disk / Paper Ledger / Written Report

25

3.3 Dataflows Structures and Elements cont.. Name: Job Vacancy

Description: Company submits vacancy information Content: = vacancy information Source: Process

1.2 vacancy registration Data Store 2 vacancies

Destination: Process 1.2 vacancy registration

Data Store 2 vacancies

Read: Live / daily / weekly / monthly Write: Live / daily / weekly / monthly Status: Disk / Paper Ledger / Written Report Name: Invoice

Description: SWEP issue invoice after jobseeker is successful Content: = Invoice Source: Process

1.2 vacancy registration Data Store 4 invoices

Destination: Process 1.2 vacancy registration

Data Store 4 invoices

Read: Live / daily / weekly / monthly Write: Live / daily / weekly / monthly Status: Disk / Paper Ledger / Written Report

26

4. CRITICAL REVIEW Whilst working through the ICA my system had errors in the system analysis. Datastores numbering is not sequential due to deletion of some datastores. Due to Insufficient time further detail was emitted which could have improved the system as a whole. Example’s of this is that advertising to gain new jobseekers & on-line services for Jobseekers to register and be notified via email. The main area of errors are with datastores where the datastores are not read and written to and System design as I did not fully understand the principles of this.

27

5. REFERENCES

References

Nawaz, Mansha System Analysis and Design, University of Teesside Feb 2005 Yourdon, Ed Just Enough Structured Analysis, on-line book Mansha Nawaz. BWBMS Project Example; CASE Tools description Mansha Nawaz. Worked solutions, SAD handbook Nicholas Hoy ECF Membership and Racing System Carol Jones Middlesbrough Adult Education Service ICA

28

6. APPENDIX

Writing Formal Report Anne Siedle

29