Professional Documents
Culture Documents
Support Materials
Higher National Unit: Assessment
Support Pack
The information in this publication may be reproduced to support SQA qualifications. This
publication must not be reproduced for commercial or trade purposes. This material is
for use by teaching staff only.
www.sqa.org.uk
History of changes
Version Date Description Authorised by
Number
Support materials are distributed only to SQA approved centres and may be
downloaded from the SQA’s secure website by authorised personnel. For added
security, SQA discourages the downloading of this material for; the maintenance of
paper-based libraries, stockpiling ahead of assessment events and saving to portable
storage devices and laptop computers.
The assessment and marking information in this publication can be used or adapted
by staff in approved SQA centres subject to the guidelines above. Adapted materials
must be verified prior to use and stored securely within the presenting centre.
In addition to a centre’s own security procedures, any suspected breach of the above
must be reported immediately to SQA’s Business Development and Customer
Support team marked ‘Security breach — Support Materials’.
Copyright
The information in this publication may be reproduced in support of SQA
qualifications. Where the publication includes materials from sources other than
SQA (secondary copyright), this material should only be reproduced for the
purposes of examination or assessment. If it needs to be reproduced for any other
purpose it is the centre’s responsibility to obtain the necessary copyright clearance.
SQA’s Support Materials team may be able to direct you to the secondary sources.
Every effort has been made to contact copyright holders and SQA apologises if any
have been overlooked.
Acknowledgements
SQA acknowledges the valuable contribution that Scotland’s colleges have made to
the development of Higher National qualifications.
Introduction
This pack must be used in conjunction with a copy of the Graded Unit specification
which details the standard of performance expected of the learner. A copy of the
Graded Unit specification can be obtained from SQA.
This pack supplements the instructions for designing the assessment task and
assessing learners for the Graded Unit specification. It aims to provide an example of
assessment that is valid, reliable and practicable. The assessment task(s) detailed in
this pack corresponds to the instructions for designing the assessment task outlined
in the Graded Unit specification.
Whilst the example provided is intended for guidance, it may also be used as an
assessment instrument, as long as the centre ensures the integrity and confidentiality
of the assessment in the first and subsequent years of use and between centres. It
may be used in a variety of ways including, for example:
It is important that you make sure that the Assessment Support Pack is used in a
context appropriate to the delivery of the Graded Unit and to the Group Award of
which it forms a part. Although the content of this pack has been prior verified as a
suitable Instrument of Assessment, you should note that using this pack does not
automatically guarantee successful external verification. It is still your responsibility to
make sure that all the appropriate internal quality assurance procedures are
satisfactorily completed. For example, a valid, effective and approved internal
verification system must be in use at your centre.
Recommended reading
Before using this material you might find it useful to look at some of our other
publications, in particular:
Guide to Assessment
Introduction to Assessment Arrangements for Schools and Colleges
SQA’s Quality Framework: a guide for centres
Details of these and other SQA publications are available on our website. Most
publications can be downloaded free of charge from our website at: www.sqa.org.uk
on the ‘Publications, Sales and Downloads’ section. If you require a publication to be
sent to you, please telephone our Business Development and Customer Support
Team on 0303 333 0330 quoting the product code and, where a charge is applicable,
have a purchase order number or credit card details available.
Details of all HN Assessment Support Packs published after April 2004 are listed on
our website on the HN subject-specific pages. Your centre’s SQA or HN Co-ordinator
will have access to these HN Assessment Support Packs on SQA’s secure website.
Please approach them for copies. However, if you require a paper copy you can
obtain one from SQA’s Business Development and Customer Support Team,
Scottish Qualifications Authority, The Optima Building, 58 Robertson Street,
Glasgow, G2 8DQ (telephone: 0303 333 0330 or fax: 0845 213 5000).
1
The SCQF provides the national common framework for describing all relevant programmes of
learning qualifications in Scotland. The level a qualification is assigned within the framework is an
indication of how hard it is to achieve. There are 12 levels, from level 1 for Access 1 through to level
12 for doctorates. For further information on the level and credit rating see the Unit specification. For
further information on SCQF go to www.scqf.org.uk.
Scottish Qualifications Authority 3
HN Assessment Support Pack/H48Y 35/ASP001 V1
Computer Science: Graded Unit 2 January 2015
Downloaded by garath.stephens from 108.171.128.174 on 10/01/2018 11:58
Core Skills
The Unit specification will detail the Core Skills covered within the Unit.
Where Core Skills have been embedded in a Unit specification and an assessor
wishes to use an alternative method of assessment, s/he must ensure that the
assessment generates the necessary evidence as specified by the Evidence
Requirements in the Unit specification. It is recommended that the centre seek prior
verification for the alternative method to ensure that the Core Skill is still covered.
The Core Skill of Problem Solving at SCQF level 6 is embedded in this Graded Unit.
The Graded Unit specification defines the criteria you need to use to judge whether
or not the learner has met the standards. All Graded Units have the following:
Assessment guidelines
This section should give guidance on how best to conduct the assessment to
generate the evidence required.
It is important to realise that it is up to the assessor to judge when and if the learner
has satisfactorily met the standards. This decision should be based on the quality
and correct quantity of evidence collected, set against the standards in the Graded
Unit.
The assessment instrument in this pack should not create any unnecessary barriers
to achievement for open/distance learning delivery and the additional support needs
of individual learners should be taken into account. You may need to adapt it so that
you can assess learners with additional support needs or learners who are
undertaking the Graded Unit on an open/distance learning basis. However, whilst
taking into account the needs of the learner concerned, the methods of assessment
you choose must still be valid, reliable and practicable. If you have any questions or
problems, or if you are in any doubt as to whether or not the alternative assessment
you have chosen is still valid, please contact the Business Development and
Customer Support Team on telephone 0303 333 0330.
b Centres have their question papers with marking instructions prior verified by
SQA. Centres are advised to put the materials through an internal verification
process before submission to SQA. Materials should be submitted not less than
eight weeks before their intended use to Qualifications Approval and Verification,
Scottish Qualifications Authority, The Optima Building, 58 Robertson Street,
Glasgow, G2 8DQ or by e-mail to: qav@sqa.org.uk
Assessment
The following information indicates how the assessment task is to be marked and
also shows the evidence which should be retained for external verification.
Practical assignment
This project-based Graded Unit is in the form of a practical assignment and will be
marked out of 100. Assessors will aggregate the marks achieved by the learner for
each stage to arrive at an overall mark for the project. Assessors will then assign a
grade to the learner for this Graded Unit based on the following grade boundaries.
A = 70%–100%
B = 60%–69%
C = 50%–59%
Conditions of assessment
The learner should be given a date for completion of the practical assignment.
However, the instructions for the assessment task should be distributed to allow the
learner sufficient time to assimilate the details and carry out the assessment task.
During the time between the distribution of the assessment task instructions and the
completion date, assessors may answer questions, provide clarification, guidance
and reasonable assistance.
The assessment task(s) should be marked as soon as possible after the completion
date for each stage. The final grading given should reflect the quality of the learner’s
evidence at the time of the completion date.
The evidence for the project is generated over time and involves three distinct stages,
where each stage has to be achieved before the next is undertaken. Thus any
re-assessment of stages must be undertaken before proceeding to the next stage.
If a learner fails the project overall or wishes to upgrade, then this must be done
using a substantially different project, ie all stages are undertaken using a new
significantly different project assessment task, assignment, case study, etc. In this
case, a learner’s grade will be based on the achievement in the re-assessment, if this
results in a higher grade.
The practical assignment will be based on the development of a solution for a real
client or on a scenario supplied by the centre. If the method selected by a centre is a
scenario given to a number of learners, then the centre must ensure the originality
and uniqueness of each learner submission, through a formal authentication
procedure.
Each centre must ensure that the project is the authenticated work of the individual
learner. For example, centres may wish to informally question learners at various
stages on their knowledge and understanding of the project on which they have
embarked. Centres should ensure that where research, etc is carried out in other
establishments or under the supervision of others, that the learner does not receive
unreasonable assistance.
analyse the task and decide on a course of action for undertaking the project
identify the requirements for the project
plan the solution for the project assignment
organise work through to project completion
develop the product to meet the solution
track and document work undertaken through to project completion
reflect on what has been done and draw conclusions for the future
produce an evaluation with critical analysis to cover the product that has been
produced and an individual reflective analysis of their activities
produce evidence of meeting the aims which this Group Award Graded Unit has
been designed to cover
Each learner should undertake an individual project and it is envisaged that the
learner will carry out a project which encompasses all of the knowledge and skills
required to complete a small scale project for an external client (such as the
development of a commercially viable website or the development of a PC based
management system). The assessment should be based on the product, its
evaluation and the process. A learner must:
The Unit will be project based and allow the learner the flexibility to select from a
variety of different projects, eg the practical implementation of a software
development project (mobile app/web site/game/stand-alone application), designing
a network topology for a small to medium sized company, producing a
report/feasibility study on the implementation of IT systems for and organisation or
setting up a Service Desk.
has sufficient evidence for all three has sufficient evidence for all three
stages of the project produced to a stages of the project and is
high standard, and is quite clearly produced overall to an adequate
inter-related standard
Assessment task
This assignment covers the three stages of your project
Stage 1 — Planning
Stage 2 — Developing
Stage 3 — Evaluating
You are required to develop a prototype application that can be based on one of the
following:
You are required to undertake an individual project based on a brief. This may
involve you developing a number of user cases for a larger system, developing a
relatively small application for an external client or developing a user oriented small
scale application such as a mobile app or web-based application. If you choose to
use a brief based on your own ideas, you should use user centred analysis to
interpret the needs and clarify the brief.
The project is an individual project and as such, you should be aware that you will
gain more marks for autonomous work and that unreasonable assistance from
assessors/supervisors/lecturers/clients and/or third parties will affect your grade.
You must achieve the minimum Evidence Requirements for each stage before
progressing to the next stage.
Evidence Requirements
The project consists of three stages: planning; developing; and evaluating. The
following table specifies the minimum evidence required to pass each stage.
NOTE: The learner must achieve all of the minimum evidence specified below for
each stage of the project in order to pass the Graded Unit.
The learner must achieve all of the minimum evidence specified above in
order to pass the Planning stage.
The learner must achieve all of the minimum evidence specified above in
order to pass the Developing stage.
The learner must achieve all of the minimum evidence specified above
in order to pass the Evaluating stage.
Assessment task/exemplar
The Unit is project-based and allows the learner the flexibility to select from a variety
of different projects which are relevant to the Computer Science curriculum, eg
developing a website or implementing a web server or a database system.
analyse the task and decide on a course of action for undertaking the project
identify the requirements for the project
plan the solution for the project
organise work through to project completion
develop the product to meet the solution
track and document work undertaken through to project completion
test the solution tracking any changes and making amendments where required
reflect on what has been done and draw conclusions for the future
critically evaluate the approach taken developing the project and draw
conclusions the critical analysis should cover two areas:
1 product produced — Reflect on the product that has been produced, critically
evaluating the approach/strategy taken for all stages of activity.
2 individual reflective analysis — A learner should provide an evaluation of
their activities drawing conclusions to help future performance.
produce evidence of meeting the aims which this Group Award Graded Unit has
been designed to cover
Instructions to learners
You are encouraged to find external clients. However, ‘fleshed-out’ project briefs (eg
case studies) will be provided by your assessor. An example is given below.
You are required to undertake an individual project and the context envisaged is that
you will carry out a project which encompasses all of the knowledge and skills which
would be required to complete a small scale project for an external client. The
assessment will be based on the product, its evaluation and the process. You must:
The Unit is project-based and allows the learners the flexibility to select from a variety
of different projects which are relevant to the Computer Science curriculum, eg
developing a website or implementing a web server or a database system.
The assessor will meet you regularly to discuss your progress through the stages.
These meetings will be treated by the assessor as a management review of your
activities, keeping track of the progress of the project comparing the actual with the
planned progress. This will allow the assessor to modify deliverable dates (with your
agreement) so that you manage to complete the work in the required time.
An assessor will take a ‘project’ approach to this Graded Unit, allowing you to deliver
a coherent piece of work. The project undertaken should provide you with the
opportunity to develop knowledge and skills gained in the other Units of study.
Any assistance from any third party not involved in the Graded Unit will affect your
grade and your chance of getting an A.
The project will be marked out of 100. Your assessor will mark each stage of the
project taking into account the criteria outlined. You can only progress to the next
stage if you have met the minimum Evidence Requirements of the previous stage. At
the end of each stage, there will be opportunities for remediation/re-assessment on
that particular stage. However, if you require remediation/re-assessment this may
lead to a lower grade. In particular, if you miss an Evidence Requirement you will
lose marks and have to remediate, leading to a lower grade.
All allocated marks will be aggregated to arrive at an overall mark for the project.
Assessors will assign an overall grade to the learner for this Graded Unit based on
the following grade boundaries.
A = 70% — 100%
B = 60% — 69%
C = 50% — 59%
Planning 40%
Developing 40%
Evaluating 20%
You have been asked to clarify the requirements, identify and implement a suitable
hardware and software platform, install and configure the software and set up a
prototype which the company can extend later.
In this section you should give your interpretation of the project assignment brief,
including any information gathered to clarify the brief. (6 marks)
(4 marks)
1.1.3 Requirements
Here you should identify the resources required to carry out the project, eg
sources of information, procedures to be followed, people, equipment and other
physical resources. You should also specify how the required resources will be
accessed/obtained. (4 marks)
1.1.7 Analysis
You should undertake the analysis using appropriate techniques. The most important
thing here is to ensure that you and your client have a common understanding of
what you’re trying to achieve, ie what the client expects to receive is the same as
what you intend to deliver. (4 marks)
research using both online and offline sources, eg vendor websites, product
manuals
review of existing documentation
interviews with staff involved
The project plan must include testing. Marks will be deducted for its omission.
If you are familiar with the use of Project Management software, you could use this.
2 Developing
Here you must provide evidence of implementing the planned solution to the
task and tracking the implementation. This will involve the implementation of the
plan created in stage 1, reviewing or adjusting the plan if required.
The website must be database driven and allow for straightforward addition,
deletion and editing of stock data to be carried out in-house.
Customers must be able to set up accounts, purchase goods and make payment
online.
Where possible existing packaged solutions should be used, rather than those
calling for extensive development of bespoke code.
Evidence arising from this project should relate to material you have covered in
earlier Units, especially H16W 35: Relational Database Management Systems,
H1J9 35: Software Development: Developing Websites for Multiplatform Use
and H16S 35: Managing a Web Server.
identify and implement a suitable hardware and software platform (10 marks)
install and configure the software (6 marks)
set up a prototype which the company can extend later (14 marks)
This might consist of an introductory page, several pages on each topic and a final
page. This should be fairly easy for you to produce, based on your teaching and
lab notes for the relevant topics.
You should test the implemented solution, tracking any changes and making
amendments where required. (8 marks)
You should manage the project in line with the Project Plan drawn up earlier.
(2 marks)
3 Evaluation
You should produce an outline of the assignment and to what extent the solution met
the original requirements of the assignment brief as noted below. (4 marks)
You should give a statement regarding the extent to which each of these objectives
has been achieved. If an objective has not been achieved, or has only been partially
achieved, you should give an explanation.
You should give an assessment of the strengths and weaknesses of the outputs of
the practical assignment. (4 marks)
3.3 Recommendations
You should make recommendations for any future development of the solution and
give your reasons for these recommendations. (4 marks)
3.4 Modifications
You should give a summary of any modifications to the project plan, solution design
and/or implementation that were made during the project, including reference to any
unforeseen events and how they were handled. (4 marks)
You should identify any knowledge and skills which have been gained or developed
while carrying out the project assignment and how the actions/process of carrying out
the project could have been improved. (4 marks)
The suggested solution below should be used as a guideline rather than a completed
working project and as such contains samples of some of the minimum Evidence
Requirements. The scenario is based on a real software development project for an
external client but could equally well be applied to a case study.
The learner must achieve the minimum Evidence Requirements for the Planning
stage before progressing to the Development stage but the final mark for the
Planning stage should only be awarded once the solution plan is complete. The
Development stage must be completed before progressing to the Evaluation stage.
The following documentation from the client is used to illustrate some of the
documentation required for the Graded Unit.
You have been asked to clarify the requirements, identify and implement a suitable
hardware and software platform, install and configure the software and set up a
prototype which the company can extend later.
Assessors should complete the learner record checklist (overleaf) for each learner.
The following information is given for guidance only, as solutions will vary depending
on the project selected by the learner.
1 Planning
2 Developing
Implementing the planned solution to the task and tracking the implementation.
(30 marks)
Testing the implemented solution tracking any changes and making amendments
where required. (8 marks)
Managing the project. (2 marks)
3 Evaluating
An outline of the assignment and to what extent the solution met the original
requirements of the assignment brief. (4 marks)
An assessment of the strengths and weaknesses of the outputs of the practical
assignment. (4 marks)
Recommendations for any future development of the solution and reasons for
these recommendations. Any relevant references should be included. (4 marks)
A summary of any modifications to the project plan, solution design and/or
implementation, that were made during the project. Including reference to any
unforeseen events and how they were handled. (4 marks)
Identification of any knowledge and skills which have been gained or developed
while carrying out the project assignment and how the actions/process of
carrying out the project could have been improved. (4 marks)
Sample Solution
This sample solution exemplifies the work of a learner who would be awarded an A grade. It
should not be regarded as a definitive ‘correct’ solution. The notes in italics give the rationale
for the marks awarded and offer suggestions on why marks might be deducted.
I have been asked to clarify the requirements, identify and implement a suitable
hardware and software platform, install and configure the software and set up a
prototype which the company can extend later.
To accomplish this, the chosen software must support responsive website design.
This is a relatively new area and many older approaches to web design do not
support it, so this will be an important factor in software selection.
It must be database driven and allow for straightforward addition, deletion and editing
of stock data to be carried out in-house. The requirement that the website be
database driven could be difficult to implement using traditional web development
approaches and suggests the use of a content management system (CMS) rather
than a web design package.
Server set-up and software installation must be carried out in-house. This suggests
that server setup and software installation should be relatively straightforward. It also
suggests that maintenance will need to be carried out in-house as a third-party
maintenance provider is unlikely to want to maintain systems that they have not
installed.
Customers must be able to set up accounts, purchase goods and make payments
online. This suggests that the software must support the setup of customer accounts
and link to payment gateways.
Where possible existing packaged solutions should be used, rather than those calling
for extensive development of bespoke code. Again, this points towards the use of a
content management system, rather than a traditional web design package.
This should be a fairly easy area for learners to gain marks as all the relevant information
can be obtained from or is implied by the project brief. The above example makes six
specific points, but learners may group these differently. There are six marks allocated for
this section. Six or more relevant points should be awarded full marks, with one mark
deducted for every point omitted. More marks should be awarded if a learner ‘demonstrates
an accurate and insightful interpretation of the project brief’ as opposed to ‘demonstrates an
acceptable interpretation of the project brief’.
Again, this should be a fairly easy area for learners to gain marks as all the relevant
information can be obtained from the project brief. The above example lists four specific
aims, but learners may group these differently. There are four marks allocated for this
section. Four or more relevant aims should be awarded full marks, with one mark deducted
for every aim omitted.
1.1.3 Requirements
Functional Requirements
Non-functional Requirements
Constraints
Where possible existing packaged solutions should be used, rather than those
calling for extensive development of bespoke code.
There are four marks allocated for this section. Four or more relevant requirements should
be awarded full marks, with one mark deducted for every omission. All three categories of
requirements (functional, non-functional and constraints) should be included. A mark should
be deducted for the omission of any category. It should be noted that the distinction between
non-functional requirements and constraints is not absolute, so learners should be granted a
bit of leeway in assigning requirements to these categories.
There are four marks allocated for this section. Four or more relevant factors should be
awarded full marks, with one mark deducted for every factor omitted.
Sources of information
Information regarding hardware and software can be obtained online. A detailed list
of sources is given in section 1.1.6.
Procedures
Staffing
Equipment
Client and server operating computers and software will require to be sourced in line
with the recommendations made by the Consultant. These will be purchased in line
with the company’s purchasing procedures.
Client and server operating systems and applications software will require to be
purchased in line with the recommendations made by the Consultant. An internet
service will also be required, along with ancillary services such as e-mail and online
backup. These will be purchased in line with the company’s purchasing procedures.
There are four marks allocated for this section. Four or more relevant resources should be
awarded full marks, with one mark deducted for every resource omitted. It is essential that
learners specify how resources will be obtained.
Dell: http://www.dell.co.uk/
Acer: http://www.acer.co.uk/ac/en/GB/content/home
Microsoft: http://www.microsoft.com/en-gb/default.aspx
Ubuntu: http://www.ubuntu.com/
WordPress: http://wordpress.org/
Apache: http://www.apache.org/
MySQL : http://www.mysql.com/
BookStore: http://themeforest.net
Online retailers:
Dabs: http://www.dabs.com/
PC World: http://www.pcworld.co.uk/gbuk/index.html
Amazon: http://www.amazon.co.uk/
Microsoft: http://support.microsoft.com/?ln=en-gb
Ubuntu: http://www.ubuntu.com/support
Apache: http://httpd.apache.org/support.html
MySQL: http://www.mysql.com/support/
BookStore: http://crunchpress.ticksy.com/?envato_item_id=5243193
Reference books:
There are four marks allocated for this section. Four or more relevant sources should be
awarded full marks, with one mark deducted for every source omitted.
1.1.7 Analysis
Research was carried out using the following resources and techniques:
There are four marks allocated for this section. One mark for each resource/technique used.
The project will consist of three phases as detailed below. It is scheduled to begin
31st August and finish on 9th October 2015, a total of 30 days.
Phase 2: Developing
Development of the network design is divided into four sub-phases, each of which
consists of a number of tasks:
1 Select hardware
2 Select software
3 Install hardware and software
4 Implement prototype
Phase 3: Evaluation
The timeline and Gantt chart for the project are as follows:
Milestones are the end of each phase shown on the Gantt chart.
Deliverables are the documentation produced at the end of each phase or sub-
phase.
Ten marks are allocated for production of a formal project plan. The marks are distributed as
follows:
The Project Plan must include Testing. Marks will be deducted if this is omitted.
2 Developing
30 marks are allocated for this section. These should be split as follows:
identify and implement a suitable hardware and software platform (10 marks)
install and configure the software (6 marks)
set up a prototype which the company can extend later (14 marks)
Omission of any part will lead to the loss of the relevant marks.
Hardware Requirements
This system has been tested by Canonical and is certified to work correctly with
Ubuntu 14.04 LTS using the following components:
Cheaper suppliers, such as Acer, were considered, but it was felt that a system from
a known high-quality supplier was preferable and that it was important that it should
be certified to work correctly with the Ubuntu server software.
Software Requirements
Operating System
When it comes to web hosting platforms there are two major options available,
Windows and Linux. A Windows-based system can run either the open-source
Apache web server or Microsoft’s own Internet Information Services (IIS) server
and supports the MySQL database, Microsoft SQL Server and Microsoft Access.
Linux is a bit more limited as it supports only Apache and MySQL it is not
possible to run IIS, SQL Server or Access.
For various reasons, we decided to opt for a Linux platform. This is a much cheaper
option as the software is free and makes fewer demands on the hardware. It is often
claimed that Linux hosting is faster. This may not always be true, but when running
PHP and MySQL based applications it’s around 20% faster and is more reliable.
Both Linux hosting and Windows hosting can be hacked if the servers haven’t
been properly configured. However, Linux is more secure, largely because there are
more Windows viruses about than Linux viruses.
We opted to use the Ubuntu distribution of Linux, one of the most popular choices
at present. Other popular distributions include Red Hat, SUSE, Debian and
CentOS.
Ubuntu can close its own network ports using its own firewall software. The default
character encoding is UTF-8 which supports a range of non-Roman scripts.
Web Server
Having selected a Linux platform, Apache is the obvious choice of web server,
although there are alternatives available. Apache played a significant role in the
initial growth of the World Wide Web. Development began in early 1995, based on
the earlier NCSA HTTPd server. Apache soon became the dominant web server,
and has remained the most popular HTTP server in use since April 1996. In 2009, it
became the first web server to serve more than 100 million websites. As of June
2013, Apache was estimated to serve 54.2% of all active websites and 53.3% of the
top servers across all domains.
Database
Having chosen a Linux hosting platform, MySQL is the obvious choice of
database. MySQL is the world's second most widely used open-source relational
database management system (RDBMS). (The most widely used is SQLite, which is
used in every iPhone and Android device and with the Chrome and Firefox
browsers.) SQL stands for Structured Query Language.
The MySQL source code is available under the terms of the GNU General Public
License, as well as under a variety of proprietary agreements. MySQL was originally
owned by Swedish company MySQL AB, but is now owned by Oracle Corporation.
Drupal is one of the oldest CMS systems it was first released in early 2001. It is a
fully-fledged, enterprise grade CMS, recommended for large projects where stability,
scalability and power take priority over ease of use and aesthetics. Drupal is
extremely powerful and developer-friendly, making it a popular choice for feature rich,
data-intensive websites. Its advantages include the fact that it is stable, scalable,
extremely flexible, developer-friendly and has strong SEO capabilities.
Disadvantages include a steep learning curve, lack of free plugins (modules) and
lack of themes.
It is estimated that more than 68 million sites use WordPress, making it the world’s
most popular CMS. It is used by nearly a quarter of the top 10 million websites.
Advantages include support for multiple authors and a huge range of themes and
plugins. It is user friendly, has strong SEO capabilities and can easily be customised
using HTML/CSS. Due to its popularity, WordPress sites are often targeted by
hackers, so it is essential that steps be taken to enhance security.
Updates are frequent, so there can sometimes be incompatibilities with older plugins.
At the end of the day we decided to opt for WordPress, largely due to the pact that
there were several excellent themes available for creating bookstore websites. The
theme selected was BookStore, a clean, responsive WooCommerce powered
WordPress store theme suitable for book stores, libraries, book shops, digital
products, e-books, software apps or can be used to create affiliate sites linking to
store like Amazon and B&N.
It is compatible with all modern mobile devices. Its main features include:
Fully Responsive
WooCommerce Ready
Multilingual Support using WPML
Multiple Blog Styles
Multiple Portfolio Layouts
Google Fonts
Shortcode System
Page Builder
Slider Manager
Social Share for Posts
Well commented code
Layered PSD Included
HTML 5 & CSS 3
Thumbnail Options (Static Image, Slider, Video)
Ten marks are available. Two marks each should be awarded for:
Hardware
Operating System
Web Server
Database
Content Management System
Any omission will lead to a loss of marks.
Operating System
Ubuntu can easily be installed from a DVD or a USB drive. In this case it was
installed from a DVD. The initial screen asks whether you want to try Ubuntu from a
DVD or install it. The Install option was selected.
Canonical (the suppliers of Ubuntu) suggest that you should take the following
steps prior to installation:
plug your computer into a power source
make sure you have enough space on your computer to install Ubuntu
select Download updates while installing and Install this third-party software now
stay connected to the internet so you can get the latest updates while you install
Ubuntu
if you are not connected to the internet you can connect to a wireless network
during installation
The next screen asks whether you’d like to install Ubuntu alongside another
operating system, delete your existing operating system and replace it with Ubuntu,
or choose the Something else option. Install Ubuntu alongside Windows 7 was
chosen.
We can now verify that we have chosen the way in which we would like to install
Ubuntu. The installation process was started by clicking the Install Now button.
Ubuntu needs about 4.5 GB to install, so we added a few extra GB to allow for files.
The Apache Web Server and MySQL database were installed using a LAMP stack,
a group of open source software that can be installed together to enable a server to
host dynamic websites and web applications. The term is an acronym which
represents the Linux operating system, with the Apache web server. The site data
is stored in a MySQL database and dynamic content is processed by PHP.
We installed the stack on the server where we had just installed Ubuntu 14.04. In
order to do this we had to set up a separate non-root user account on the server.
Since we were using a sudo command, these operations were executed with root
privileges. We were asked to provide a user password, after which the web server
was installed. We verified this by visiting the server’s public IP address in a web
browser.
We saw the default Ubuntu 14.04 Apache web page, which is there for
informational and testing purposes.
We were now able to install MySQL , again using apt. We also installed some other
‘helper’ packages that would assist us in getting our components to communicate
with each other:
When the installation was complete, we had to run some additional commands to get
our MySQL environment set up securely.
First, we had to tell MySQL to create its database directory structure where it will
store its information by typing:
sudo mysql_install_db
Next we ran a simple security script to remove some dangerous defaults and lock
down access to our database system. We started the interactive script by running:
sudo mysql_secure_installation
We were asked to enter the password for the MySQL root account and offered the
opportunity to change it, which we declined. For the rest of the questions, we simply
hit the ‘ENTER’ key through each prompt to accept the default values. This removed
some sample users and databases, disabled remote root logins, and loaded these
new rules so that MySQL immediately respected the changes made.
The database system was now set up so we could move on to installing PHP. PHP is
the component of our setup that will process code to display dynamic content. It can
run scripts, connect to our MySQL databases to get information, and hand the
processed content over to our web server to display.
We can once again use the apt system to install our components. We included some
helper packages as well:
This installed PHP without any problems. We now wanted to modify the way that
Apache serves files when a directory is requested. Currently, if a user requests a
directory from the server, Apache will first look for a file called index.html. We
wanted to tell our web server to prefer PHP files, so we made Apache look for
an index.php file first by typing this command to open the dir.conf file in a text editor
with root privileges:
<IfModule mod_dir.c>
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>
We wanted to move the PHP index file highlighted above to the first position after
the DirectoryIndex specification, like this:
<IfModule mod_dir.c>
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>
When we were finished, we saved and closed the file by pressing ‘CTRL+X’. We had
to to confirm the save by typing ‘Y’ and then hitting ‘ENTER’ to confirm the file save
location. After this, we needed to restart the Apache web server in order for our
changes to be recognised by typing:
Our LAMP stack was now installed and configured. We now needed to test out our
PHP by creating a very basic PHP script which we called info.php.
In order for Apache to find the file and serve it correctly, it must be saved to a very
specific directory, which is called the ‘web root’. In Ubuntu 14.04, this directory is
located at /var/www/html/. We created the file at that location by typing:
This opened a blank file. We put the following valid PHP code inside the file, then
saved and closed the file.
<?php
phpinfo();
?>
This let us test whether our web server can correctly display content generated by a
PHP script. To try this out, we visited this page in our web browser:
This page gives information about the server from the perspective of PHP. It is useful
for debugging and to ensure that settings are being applied correctly. Since this was
successful, then our PHP was working as expected.
WordPress uses a relational database to manage and store site and user
information. We already had MySQL installed, which can provide this functionality,
but we needed to make a database and a user for WordPress to work with. To get
started, we logged into the MySQL root (administrative) account by issuing this
command:
mysql -u root -p
We were prompted for the password set for the MySQL root account when we
installed the software. You will then be given a MySQL command prompt.
First, we had to create a separate database that WordPress could control. We used
WordPress because it is descriptive and simple. We entered this command to
create the database:
Next, we had to create a separate MySQL user account for use exclusively to
operate on our new database. We called the new account wordpressuser and
assigned it an initial password of password as follows:
We now had a database and a user account, each made specifically for WordPress .
However, these two components have no relationship yet. The user has no access to
the database. We fixed this by granting our user account access to our database with
this command:
Now the user had access to the database. We needed to flush the privileges so that
the current instance of MySQL knows about the recent privilege changes we’d
made:
FLUSH PRIVILEGES;
exit
Scottish Qualifications Authority 46
HN Assessment Support Pack/H48Y 35/ASP001 V1
Computer Science: Graded Unit 2 January 2015
Downloaded by garath.stephens from 108.171.128.174 on 10/01/2018 11:58
Download WordPress
Next, we had to download the actual WordPress files from the project’s website.
The most recent stable version of their software to the same URL, so we can obtain
the most up-to-date version of WordPress by typing this:
cd ~
wget http://wordpress.org/latest.tar.gz
This downloaded a compressed file containing the archived directory contents of the
WordPress files to our home directory. We could then extract the files to rebuild the
WordPress directory we needed by typing:
While we were downloading things, we also obtained a few more packages that we
needed. We got these directly from Ubuntu’s default repositories after we updated
our local package index:
This would allow you to work with images and to install plugins and update portions
of your site using our SSH login credentials.
Configure WordPress
Most of the configuration would be done through a web interface later on. However,
we did need to do some work from the command line before we could get this up and
running. We started by moving into the WordPress directory that you just unpacked:
cd ~/wordpress
A sample configuration file that mostly matches the configuration we needed was
included by default. However, we needed to copy it to the default configuration file
location to get WordPress to recognise the file. We did that by typing:
cp wp-config-sample.php wp-config.php
Now that we have a configuration file to work with, let’s open it in a text editor:
nano wp-config.php
This file was almost entirely suitable for our needs already. The only modifications we
needed to make was to the parameters that hold our database information.
We needed to find the settings for DB_NAME, DB_USER and DB_PASSWORD in
order for WordPress to correctly connect and authenticate to the database we
created. We filled in the values of these parameters with the information for the
database we created:
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress');
These were the only values we needed to change before saving and closing the file.
We then moved into the document root to make some final permissions changes:
cd /var/www/html
We needed to change the ownership of our files for increased security. We wanted to
give user ownership to the regular, non-root user (with sudo privileges) that we
planned on using to interact with our site. We used the same account that we set up
during the initial server setup guide, which we called demo.
We gave group ownership to our web server process, www-data. This allows
Apache to interact with the content as necessary. We assigned these ownership
values by typing:
While we were dealing with ownership and permissions, we also looked into
assigning correct ownership on our uploads directory. This allows us to upload
images and other content to our site. Currently, the permissions are too restrictive.
First, we manually created the uploads directory beneath the wp-content directory at
our document root. This would be the parent directory of our content:
Scottish Qualifications Authority 48
HN Assessment Support Pack/H48Y 35/ASP001 V1
Computer Science: Graded Unit 2 January 2015
Downloaded by garath.stephens from 108.171.128.174 on 10/01/2018 11:58
mkdir /var/www/html/wp-content/uploads
We now had a directory to house uploaded files, however the permissions were still
too restrictive. We needed to allow the web server itself to write to this directory. We
did this by assigning group ownership of this directory to our web server, like this:
This allows the web server to create files and directories under this directory, which
will permit us to upload content to the server.
Now that we had our files in place and the software configured, we could complete
the installation through the web interface. In our web browser, we navigated to our
server’s domain name, where we could see the WordPress initial configuration
page, where we could create an initial administrator account:
We filled out the information for the site and the administrative account we wished to
make. When we were finished, we clicked on the install button at the bottom.
WordPress confirmed the installation, and then asked us to log in with the account
we had just created:
We hit the button at the bottom and then filled out our account information:
BookStore Theme
The next step was to install the BookStore theme. As we had already downloaded
the theme, we could do this from the Themes > Install Themes section in the
WordPress dashboard. We clicked on the Upload link at the top of the page:
Then we clicked the Choose File button, selected the archive of the theme from the
local computer and pressed the Install Now button.
WordPress uploaded and extracted the theme. All we needed to do next was press
the Activate link under the message for successful theme installation. We were then
able to go to our site to see the newly activated theme.
2.1.3 Set up a prototype which the company can extend later (14 marks)
Note: Basic data analysis should be carried out prior to developing the prototype.
Evidence might include an entity relationship diagram and entity descriptions. It is
difficult to be too prescriptive as some factors such as data storage formats may
depend on the packages selected.
Entity-Relationship Diagram
Entity Descriptions
Customer Book
Field Format Field Format
AccountNo Text ISBN Text
Title Text Author1 Text
Surname Text Author2 Text
Forenames Text Title Text
Street Text Description Text
Town Text Cover Hard/Soft
County Text Price Currency
Postcode Text SalePrice Currency
Telephone QuantityInStock Numeric
… …
Four marks should be awarded for data analysis: two marks for ERD showing correct
cardinality of relationships, two marks for accurate entity descriptions.
The top half of the home page shows a revolving slider of books:
Book covers reproduced with kind permission by Nigel Gatherer and Taigh na Tend Music Publishers.
Book covers reproduced with kind permission by Nigel Gatherer and Taigh na Tend Music Publishers.
Some site administration menu items are still shown as further work remains to be
carried out by staff. These can be removed on the final version of the site.
The site adapts automatically to the screen size of any device and has been
tested on desktops, laptops, smartphones, and tablets.
It must be database driven and allow for straightforward addition, deletion and
editing of stock data to be carried out in-house.
The site is driven by a MySQL database and allows addition, deletion and
editing of stock data from the Products area of the Dashboard in WP-Admin
mode.
Customers must be able to set up accounts, purchase goods and make payment
online.
Customers can set up accounts, purchase goods and make payment online.
The log-in page gives new customers the opportunity to register and provide
details of their e-mail, billing and delivery addresses. The e-mail address is used
as a username for subsequent login. On checkout customers are given the
opportunity to select a payment method. Purchases can also be made as a guest,
without logging in.
Where possible existing packaged solutions should be used, rather than those
calling for extensive development of bespoke code.
The site is built entirely from packaged solutions using LAMP, WordPress and
the BookStore theme. No bespoke code was required.
Ten marks are available. Two marks should be awarded for each requirement met
successfully. Any omission will lead to a loss of marks.
Note: all images and descriptions of books shown on the prototype website are used
by kind permission of the copyright holders:
Scotland’s Music (https://www.scotlandsmusic.com/)
and
Nigel Gatherer (http://www.nigelgatherer.com/).
Each component of the solution was tested to ensure that it had been installed
correctly and was functioning as required:
Component Comments
Ubuntu Everything OK
Apache Everything OK
MySQL/PHP Everything OK
WordPress with the BookStore theme Everything OK
The prototype website was tested to ensure that it functioned correctly and met all of
the required criteria:
Criterion Comments
The website must be responsive, The website was responsive and tested
allowing it to operate successfully on a to function correctly on desktops, laptops,
range of platforms, including tablets and smartphones.
smartphones and mobile devices.
It must be database driven and allow for The website was driven by a MySQL
straightforward addition, deletion and database and addition, deletion and
editing of stock data to be carried out editing of stock data could be carried out
in-house. easily from the WP-admin Dashboard.
Customers must be able to set up Customers could to set up accounts,
accounts, purchase goods and make purchase goods and make payment
payment online. online.
Where possible existing packaged The site was constructed using packaged
solutions should be used, rather than solutions: Ubuntu, LAMP and
those calling for extensive development WordPress with the BookStore
of bespoke code. e-commerce theme.
Eight marks are allocated for this section. One mark should be given for testing each of the
individual components and one mark for the testing of each criterion met by the prototype
website. Evidence of testing might include test plans, test logs, etc. Any omissions will lead
to loss of marks.
The project was managed in accordance with the Project Plan given earlier. There
were only minor deviations from the planned schedule, so no amendments to the
Project Plan were required.
Two marks are allocated for this section. Learners should indicate how the project was
managed and what remedial action was taken in the case of any deviations from the plan.
Learners would be expected to mention any deviations and how these impacted on the
project. Any omissions will lead to loss of marks.
3 Evaluation
I was asked to clarify the requirements, identify and implement a suitable hardware
and software platform, install and configure the software and set up a prototype
which the company can extend later.
Four marks are allocated for this section. Any omissions will lead to loss of marks. One mark
should be awarded for each requirement met, to a maximum of four.
Strengths
Weaknesses
Installing the Web Server locally may be problematic as it gives external users (or
potential hackers) a route into the main company network.
There is no systematic provision for updating operating system or applications
software. This is also a potential security flaw as it could lead to the continued
use of outdated versions of software with known vulnerabilities.
Four marks are allocated for this section. Any omissions will lead to loss of marks. One mark
should be awarded for every strength or weakness listed. To gain full marks there must be a
total of four strengths and weaknesses but there need not be the same number of each.
3.3 Recommendations
The Web Server should be moved outside the main network, possibly to a
Demilitarized Zone (DMZ). This would enhance security and make it harder for
hackers to access the network.
Systematic provision should be made for updating software, possibly by using
automatic updates where available, eg WordPress can be updated
automatically. This would reduce security risks due to continued use of outdated
versions of software. Consideration should be given to the automated distribution
of system and applications software updates.
Consideration should be given to enhancing backup facilities by adding
cloud-based backup, possibly using a backup service such as Livedrive.
Other security improvements should also be considered, eg the implementation
of strong authentication for users and the encryption of transmitted data. This
would make it harder for unauthorised users to gain access to the system or view
data during transmission.
Four marks are allocated for this section. Any omissions will lead to loss of marks. One
mark should be awarded for every recommendation listed and justified. References
supporting recommendations should be included where relevant. Recommendations
which are not justified should not be awarded a mark.
3.4 Modifications
No major modifications were made during the project. Where timescales did slip the
slippage was slight and made up during the same week, for example, the installation
and configuration of software did not follow the detailed day-by-day programme
precisely, but all the hardware was selected within the allocated week. There were no
major unforeseen problems.
Four marks are allocated for this section. It is difficult to be specific about the allocation of
marks as circumstances are likely to vary widely between projects some will proceed
smoothly, with little or no modification or unforeseen circumstances while others may require
major modifications. As long as learners specify what modifications were made (or not) and
what unforeseen circumstances arose (or not) they should be awarded the marks. If no
modifications were made or problems occurred, then learners should provide a good
explanation of why they think none were required in order to gain marks. This would avoid
them simply stating that none were required.
The actions/process of carrying out the project could have been improved if I had
been involved in discussions with users about the requirements for the system, rather
than simply being presented with them. I believe that I could have improved the
system design in several areas if this had been the case.
Four marks are allocated for this section. Three of these should be awarded for discussion of
knowledge and skills applied and one for describing the actions/process of carrying out the
project.
Assessment checklists
SCQF level 8
Learner’s Learner’s Learner’s
Surname: Forename: ID:
1 Planning
Learners must achieve all of the minimum evidence specified above in order to pass the
Planning stage. They must complete the Planning stage and have this signed off by the
assessor before proceeding to the Developing stage. Marks should be deducted for
unreasonable assistance from any third party.
2 Developing
Candidates must achieve all of the minimum evidence specified above in order to pass the
Developing stage. They must complete the Developing stage and have this signed off by the
assessor before proceeding to the Evaluating stage. Marks should be deducted for
unreasonable assistance from any third party.
3 Evaluating
Learners must achieve all of the minimum evidence specified above in order to pass the Evaluating
stage. Marks should be deducted for unreasonable assistance from any third party.
* Mark as appropriate