SBD403 – Secure by Design

SBD403_Assessment 3_Brief_Executable file_Module 12 due Page 1 of 9
Task Summary
You will be provided with a Microsoft excel .csv file. This file contains a large volume of data.
You must develop an executable that respects the permissions and rules that the file has
been created with. There are several possible rules that each cell or section can have, and
they will be detailed both below and within the sheet itself.
This program should be able to read and write to the .csv file, as well as support multiple
levels of user access (Guest, User, Superuser, and Administrator). Security information,
terms, and definitions are detailed below in the Task Instructions.
This assessment has 4 weeks allocated, and is due on the final day of the module.
Context
One of the fundamental, core concepts of Security through Design is the separation of
functionality into different roles. This assessment follows that separation. Many programs
opt to make different accounts into a ‘flow – down’ structure, where;
 Users have all the permissions of guests,
 ‘Superusers’ have all the permissions of Users,
 and administrators have full access.

ASSESSMENT 3 BRIEF
Subject Code and Title SBD403 – Secure by Design
Assessment Assessment 3 – Executable Development
Individual/Group Individual
Length As appropriate
Learning Outcomes This assessment addresses the Subject Learning Outcomes outlined
at the bottom of this document.
Submission Due by 11:55pm AEST Sunday end of Module 12.
Weighting 40%
Total Marks 100 marks

SBD403_Assessment 3_Brief_Executable file_Module 12 due Page 2 of 9
As we have illustrated thus far in SBD403, this can prove problematic in certain situations.
This assessment will evaluate your understanding of the separation of specific roles, their
importance, and your implementation of the principles covered in SBD403. The submission
must also include a one-to-two page document outlining the various specifications OR a
design document that details justification for the appropriate architecture.
This assessment will prepare you for undertaking similar projects in the industry, where you
must understand, follow, and justify your implementation of client and security
requirements. Protection of User (or client) data within industry is of paramount
importance, and can make the difference between success and catastrophic failure of a
project.
Justification and implementation are the core qualities assessed in this assignment.
SBD403_Assessment 3_Brief_Executable file_Module 12 due Page 3 of 9
Task Instructions
Submission for this assignment should be in the form of an executable application that can
be run on the university machines. The language used to develop it is up to you (discuss
with the lecturer prior) but it must have an existing API to read and output to Microsoft
Excel .csv files.
The User types are as follows:
Guest: This user is not ‘logged in’ so to speak, and should only have a minimal level of
access. At every available protected instance, the guest should have requested credentials
(such as a username or password dialog that would allow a User to sign in)
User: This user is ‘logged in’, and can be thought of as a ‘client login’. This user should have
access to their own data, but not access to any other clients’ data.
Superuser: This user is ‘logged in’, and can be thought of as a staff member. This user can
create new users, add and view data in their accounts, and can also view company-specific
information. They can also view information on their own account, but not other
Superusers. They cannot create Superuser accounts.
Administrator:
This account level cannot view user information, or create user accounts. However, the
Administrator can view Superuser information, as well as create Superuser accounts. The
Administrator (like the Superuser) can also view the Company information.
The security types are:
Public: This information is available to all users. This includes file names, sheet names, and
other miscellaneous data. This also includes access to the tool itself. It should also be public
to create a user account (which then elevates the guest to a user.)
Client / User: This information is visible to both the specific user and Superusers, but not
guest or administrators. This may include client details – such as names, addresses, and
other private information. Client information should be visible to the specified User and
Superusers only, and not to other Clients.
Company: This information is visible to users, Superusers, and Administrators. This
information is only relevant to the company. This may include employment information, or
company relevant policies, procedures, and plans.
SBD403_Assessment 3_Brief_Executable file_Module 12 due Page 4 of 9
Your application will be marked on the following criteria:
Commenting and Programming standards – (10%)
– The quality of your documentation within the code, as well as your usage of your
technical skills. A well-performing example in this area would be a wellcommented, dynamic program with no visible lag or slowdown, no errors, and
very few to no minor issues. The program is also well commented and laid out,
with clear and concise information provided.
Adherence to SBD principles – (30%)
– This area focuses on how closely you follow, develop, and display the principles
of Security by Design, both for the hypothetical user, and within the
implementation itself. A well-performing example in this area would be a secure
program that does not allow users to contradict the secure principles. The
systems in place cannot be used to intentionally access protected data.
Technical Implementation – (30%)
– This area focuses on the technical depth of the submitted application. A good
performer in this area has many relevant features implemented. These features
are approaching the level of a professional-level application. The features also
respect SBD principles, and cannot be easily exploited in order to retrieve
protected data.
Documentation – (30%)
– The accompanying documentation for the application. A good submission for this
documentation not only explains the purpose of the application, but also lays out
and justifies decisions made during development. The documentation includes a
number of cited, well-researched sources that add to the overall justification of
design decisions.
SBD403_Assessment 3_Brief_Executable file_Module 12 due Page 5 of 9
Referencing
References should be included in the accompanying document that you have created. There is no
minimum amount of references however, remember that the primary component of this assessment
is Justification, which makes up a large amount of the overall documentation section.
It is essential that you use the appropriate APA style for citing and referencing research. Please see
more information on referencing here: http://library.laureate.net.au/research_skills/referencing
Submission Instructions
Submit Assessment 3 Executable Development via the Assessment link in the main navigation menu
in SBD403 Secure By Design by 11:55pm AEST Sunday Module 12. The Learning Facilitator will
provide feedback via the Grade Centre in the LMS portal. Feedback can be viewed in My Grades.
SBD403_Assessment 3 Brief_Executable File Module 12 due Page 6 of 9
Assessment Rubric

Assessment
Attributes
Fail
(Yet to achieve
minimum standard)
0-49%
Pass
(Functional)
50-64%
Credit
(Proficient)
65-74%
Distinction
(Advanced)
75-84%
High Distinction
(Exceptional)
85-100%
Technical
Implementation
30%
Program does not run at
all.
OR
Program runs, but does
not have any of the
requirements outlined in
the brief.
OR
Program runs, but is
unable to load the source
file required for
assessment.
OR
Program runs, and is able to
load the file provided.
Few pieces of functionality
are present – data can be
retrieved, and there are at
minimum two different
account types present in the
program.
The program may not be able
to save to a local file, but is
able to display data within the
dataset itself.
Accounts should not be able
to access data marked
inaccessible by their account
type.
Program runs, and is able to
load the file provided.
The program is able to read
and edit the appropriate
data within the provided
file, and there are 3
different account types
present.
The program should be able
to save the data, once it has
been edited.
Accounts should not be able
to access data marked
inaccessible, and an error
warning should inform them
of this.
Program runs well, and can
load the provided file.
The program is able to read,
edit, and save the
appropriate data, and there
are all 4 account types
present.
When saving, users should
be presented with a dialog
that allows them to choose
a directory to save to.
Accounts should not be able
to access data marked
inaccessible, and there may
be a prompt to change
accounts to a higher level.
Program runs well, and can
load the provided file.
The program is able to read,
edit, and save the
appropriate data, and there
are all 4 account types
present. The program may
have additional features
above the aforementioned
requirements.
Users can save to a
specified directory through
a dialog box.
Accounts retain proper
permissions, request access
when proper, and are
independent of each other
in abilities.

SBD403_Assessment 3 Brief_Executable File Module 12 due Page 7 of 9

Program runs, but is able
to access data that should
be inaccessible for its
account level.
Program is implemented in
a Graphical interface, rather
than in Command line or
simply text-based.
Program is implemented in
an efficient, readable
Graphical interface.
The program is
implemented in a well
designed graphical
interface, approaching a
professional level.
Adherence to SBD
Principles
30%
The program does not
adhere to SBD principles.
Issues could include:
 Complete lack of
data security or
respect of cell
information.
 Crossover in roles
to the detriment
of the program.
 Improperly
assigned roles.
None of the principles
addressed in the program
have been followed in this
assignment.
Implementation may be
present, but the system
has obvious, fatal flaws
that prevent it from being
awarded a passing grade.
The program adheres to SBD
principles.
A few principles (least
privilege, secure architecture)
may be addressed explicitly,
but a large amount of the
program may be more
insecure.
There may be overlap in
certain roles (such as user and
Superuser) and account types
may be missing.
At minimum, two separate
accounts should be present,
with some different
responsibilities.
There may be some flaws
present in the system, which
prevent the software from
being awarded a higher grade.
The program follows many
of the SBD principles, but
perhaps not all of them.
Some of these principles are
addressed explicitly, and a
large amount of the
program is secure.
There may be one or two
small areas of overlap
between accounts (such as
Superuser and
administrator), and 3
accounts should be present
– each with different
responsibilities.
At this level, there should be
no easily-exploited flaws in
the system. Any more
obscure flaws must be
covered in the code, as well
as in the documentation
provided.
This program addresses all
of the SBD principles.
All of these principles are
addressed both in the
overall implementation, as
well as in the overall design
of the User interface.
There are no areas of
overlap between accounts,
and all 4 accounts should be
implemented, each with
different responsibilities.
At this level, there should be
no easily-exploited flaws in
the system. If any, flaws
should be noted in both the
code and the
documentation.
This program addresses all
of the SBD principles.
While all principles are
addressed, there are
additional secure features
that enable this program to
be considered at a
professional level.
There should be no areas
that are exploitable, or
overlap between accounts.
Each account should remain
secure, and have
implementation that goes
above what a traditional
structure may implement.
If there are any flaws at all
(there should be no
security-related ones
anywhere) then they should
be noted in both
documentation and code.

SBD403_Assessment 3 Brief_Executable File Module 12 due Page 8 of 9

Commenting and
Programming
Standards
10%
The entire program lacks
commenting, and the
commenting standards are
inconsistent and
confusing.
Comments directly hinder
understanding of the
program.
Variables, functions, and
parameters do not follow
a logical convention, and
the overall internal
implementation is difficult
to understand from a
logical standpoint.
The program may lag
repeatedly, hang, or crash
frequently.
Commenting is somewhat
present, although
commenting standards may
be inconsistent.
The comments that are
present help to convey the
general idea behind the
functionality and operations
present in the system.
Variables, functions and
parameters may follow
several conventions, but they
are frequently logical. Overall
implementation is readable,
and partially understandable
from a logical standpoint.
The program may lag or hang
infrequently, but crashes
should not occur.
Commenting is present in
the code, and remains
relatively consistent.
Comments that are present
help to convey the main
ideas behind functions,
variables and their uses, as
well as the intended
operations at each stage of
the code.
Variables, functions and
parameters follow a singular
convention (mostly), and
are – with some exceptions –
largely logical. Overall
implementation is easy to
read, and understand from
a logical standpoint.
There may be the occasional
lag or hang, but the
program should be largely
stable.
Commenting is present in
the code, and is consistent
throughout the entire
program.
Comments that are present
advance the understanding
of the functionality of the
program. Areas are
highlighted and explained in
detail, and include flow-on
systems present in the code.
Variables, functions and
parameters follow the same
singular convention, and are
all similarly logical. The
overall implementation is
easy to read and
understand.
There may be an instance or
two of lag, but the program
should remain otherwise
flawless in stability.
Commenting is present,
consistent, and clear
throughout the program.
Comments explain – in
detail – the systems being
covered, as well as
explaining the logic behind
the systems created – their
efficiency, etc. This should
be present alongside the
Distinction requirements.
Variables, functions, and
parameters follow the same
convention, and are all
connected logically.
Implementation is clear and
concise, with efficient and
professional use of
resources and code.
The program is wholly
stable, and no lag or
hanging is noticeable.

SBD403_Assessment 3 Brief_Executable File Module 12 due Page 9 of 9

Documentation
30%
The documentation is not
present
OR
The documentation
presented is in no way
relevant to the
assessment.
OR The documentation is
relevant, but there simply
isn’t enough relevant
information for it to be
considered useful.
Documentation has been
submitted, and briefly details
the functionality of the
program.
The documentation may
outline this functionality, but
little justification is given for
the usage of techniques or
methods, and understanding
of the necessity of these
methods may be absent.
Documentation is present,
and details the functionality
– and some reasoning – of
the program.
The documentation outlines
this functionality, and
explains some of the
reasoning behind the
techniques employed, and
the systems used.
At this level, justification
should be present for most
of the systems.
Some explicit explanation
should be present for how
the program fits SBD
guidelines as well.
Documentation present
details the functionality
thoroughly, and provides
reasoning for several areas
of the program.
The documentation dives
into explanation,
highlighting reasoning and
exploring the techniques
and systems used in detail.
Justification is present, and
provided for all areas of the
program.
Explanation of how the
program adheres to SBD
guidelines is woven through
the documentation, and
highlighted at several
stages.
Documentation is present,
and details both
functionality and reasoning
across the entire program.
The documentation clearly,
concisely, and accurately
displays the functionality of
the entire program, as well
as providing justification at
each appropriate area as to
the overall design decisions
for the program.
The documentation
highlights its adherence to
SBD guidelines, and
emphasises it throughout
the document.
The following Subject Learning Outcomes are addressed in this assessment
SLO a) Demonstrate capabilities to incorporate security requirements in system specifications, design, development and testing phases
of software development.
SLO b) Administer implementation of security controls, security risk mitigation approaches, and secure design architecture principles.
SLO c) Explain Secure Development Lifecycle models and identify appropriate model for a given situation.
SLO d) Assess the maturity of secure systems development in the IT work environment.
SLO e) Apply Security by Design industry standard principles in real time systems development.
WhatsApp
Hello! Need help with your assignments?

For faster services, inquiry about  new assignments submission or  follow ups on your assignments please text us/call us on +1 (251) 265-5102

🛡️ Worried About Plagiarism? Run a Free Turnitin Check Today!
Get peace of mind with a 100% AI-Free Report and expert editing assistance.

X