Software Requirements, Data Types, and Security Principles in System Design Questions With complete verified solutions already graded A+(PASS GUARANTEED)

0.0(0)
studied byStudied by 1 person
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/146

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No study sessions yet.

147 Terms

1
New cards

Functional requirements

The specific behaviours, operations and outputs a software solution must perform (e.g., calculation, sorting, displaying output).

2
New cards

Non-functional requirements

Quality attributes of a solution, such as usability, reliability, robustness, portability and maintainability.

3
New cards

Constraints

External limitations that restrict the solution; includes economic, technical, social, legal and usability constraints.

4
New cards

Scope

Defines what the solution will include and what it will not; establishes project boundaries.

5
New cards

Data type - String

A sequence of text characters used for names, labels or descriptions.

6
New cards

Data type - Integer

A whole number used for counting, indexing or iterations.

7
New cards

Data type - Float/Real

A number with decimals used for precise values and calculations.

8
New cards

Data type - Boolean

A data type that stores true or false values for decision-making.

9
New cards

Data type - Date/Time

Represents calendar dates or time values, used in scheduling or logging.

10
New cards

Data structure - One-dimensional array

Stores multiple values of the same type in indexed order; useful for repeated similar data.

11
New cards

Data structure - List

A flexible structure storing items that can vary in size and type and can be appended/removed easily.

12
New cards

Data structure - Record

Stores grouped data items of different types under named fields (e.g., a user profile).

13
New cards

IPO Chart

A design tool that identifies Inputs, Processes and Outputs for a solution.

14
New cards

Data dictionary

A table that describes each data item's name, type, size and purpose.

15
New cards

Flowchart

A diagrammatic representation of algorithm logic using standard symbols (e.g., decision diamond).

16
New cards

Pseudocode

A structured English-like description of an algorithm that outlines logic clearly.

17
New cards

Use case diagram

A diagram showing interactions between actors (users) and system functions.

18
New cards

Context diagram

A high-level diagram showing the system and its interactions with external entities.

19
New cards

Data flow diagram

Shows how data moves between processes, data stores and external entities in a system.

20
New cards

UI Design Principle - Functionality

Interactive and navigable elements help the user achieve tasks efficiently.

21
New cards

UI Design Principle - Usability

Ease of use, clarity and accessibility for all users, including those with impairments.

22
New cards

UI Design Principle - Appearance

Use of layout, spacing, colour, alignment, fonts and images to create a visually clear interface.

23
New cards

Interactivity

The ability of users to actively control and navigate the solution.

24
New cards

Navigation

How users move between screens, menus or sections within the interface.

25
New cards

Accessibility

Ensuring all users can access the system, including those with visual, auditory or motor needs.

26
New cards

Abstraction

An OOP principle that hides unnecessary details while exposing only essential functions.

27
New cards

Encapsulation

Grouping data and methods together while restricting direct access to internal details.

28
New cards

Sequence

The execution of statements in the order they appear.

29
New cards

Selection

Executing different instructions based on conditions (e.g., IF/ELSE).

30
New cards

Iteration

Repeating a block of code using loops (FOR, WHILE, DO UNTIL).

31
New cards

Syntax error

An error due to incorrect programming language grammar; prevents program from compiling.

32
New cards

Logic error

Code runs but produces incorrect results due to faulty logic.

33
New cards

Run-time error

An error that occurs while the program is running (e.g., divide by zero, index out of range).

34
New cards

Existence check

Validation to ensure a required field is not left blank.

35
New cards

Type check

Validation to ensure entered data is of the correct data type.

36
New cards

Range check

Validation to ensure input falls within allowable limits.

37
New cards

Verification

Checking data accuracy after entry by comparing against the source.

38
New cards

Testing table

A table comparing expected and actual output to confirm correctness.

39
New cards

Test case

A specific set of input values used to verify a function or module behaves correctly.

40
New cards

Internal documentation

Comments and formatting that explain how code works for maintenance.

41
New cards

CamelCase

A naming convention where multi-word names begin each new word with a capital (e.g., totalStudents).

42
New cards

Hungarian notation

A naming style adding type information prefix (e.g., strName, intCount).

43
New cards

Project plan

Structured timeline of tasks, durations, dependencies and milestones.

44
New cards

Gantt chart

Visual timeline showing task scheduling and progress.

45
New cards

Evaluation criteria

Standards for assessing how well a solution meets requirements.

46
New cards

Maintainability

How easy it is to modify or update code after development.

47
New cards

Robustness

The ability of software to handle errors or unexpected conditions without crashing.

48
New cards

Portability

The ability of software to run on different hardware or platforms.

49
New cards

Reliability

The ability of software to perform consistently without failure.

50
New cards

Usability

The degree to which software is easy for users to learn and operate.

51
New cards

Efficiency

Use of minimal time, effort or computing resources to perform tasks.

52
New cards

Effectiveness

The degree to which a solution meets user requirements and solves the intended problem.

53
New cards

Post-implementation evaluation

Reviewing how well the completed solution meets requirements after deployment.

54
New cards

Evaluation strategy

A plan describing how, when, and by whom the solution will be evaluated and what data will be collected.

55
New cards

Efficiency measure

Assessment based on time, cost and effort required to perform tasks.

56
New cards

Effectiveness measure

Assessment based on accuracy, clarity, usability, completeness and relevance.

57
New cards

Project plan monitoring

Tracking actual progress against scheduled timeline and milestones.

58
New cards

Milestones

Key progress points or deliverables in the development timeline.

59
New cards

Critical path

The sequence of tasks that determine the minimum project duration.

60
New cards

Security threat - Accidental

Involuntary actions such as accidental deletion or misdelivery of information.

61
New cards

Security threat - Deliberate

Intentional attacks such as hacking, malware, theft or insider threats.

62
New cards

Security threat - Event-based

Natural or environmental influences such as fire, flood or power failure.

63
New cards

Malware

Malicious software designed to harm, exploit or damage systems.

64
New cards

Virus

Malware that attaches to programs or files and spreads when executed.

65
New cards

Worm

Malware that spreads independently across networks without user action.

66
New cards

Spyware

Malware that secretly gathers user data and activity.

67
New cards

Ransomware

Malware that encrypts data and demands payment for release.

68
New cards

Denial of Service attack

An attack that overloads a network or system, making it unavailable.

69
New cards

Insider threat

A security risk originating from individuals with authorised access.

70
New cards

Identity and Access Management (IAM)

A framework for ensuring only authorised individuals can access data and systems.

71
New cards

Least privilege principle

Users are granted only the minimum access required to perform their roles.

72
New cards

Role-based access control

Access permissions are assigned based on user roles/groups.

73
New cards

Symmetric encryption

Encryption and decryption use the same key (e.g., AES).

74
New cards

Asymmetric encryption

Encryption uses a public key; decryption uses a private key (e.g., RSA, ECC).

75
New cards

AES

A symmetric encryption algorithm widely used for secure data storage.

76
New cards

RSA

A common asymmetric encryption algorithm using large prime number mathematics.

77
New cards

ECC

Asymmetric encryption requiring smaller keys for strong security.

78
New cards

Backup strategy - Full

A complete copy of all data.

79
New cards

Backup strategy - Incremental

Copies only data changed since the last backup of any type.

80
New cards

Backup strategy - Differential

Copies only data changed since the last full backup.

81
New cards

Essential Eight

An Australian cybersecurity framework of eight recommended mitigation strategies.

82
New cards

Information Security Manual (ISM)

A framework providing technical guidelines for securing systems.

83
New cards

Privacy Act 1988

Legislation governing how personal data is collected, used and disclosed.

84
New cards

Privacy and Data Protection Act 2014

Victorian law governing the protection of personal and organisational data.

85
New cards

Health Records Act 2001

Legislation protecting privacy of health-related information.

86
New cards

Copyright Act 1968

Law protecting creative work from unauthorised copying or distribution.

87
New cards

Confidentiality

Ensuring that information is not accessed by unauthorised individuals.

88
New cards

Integrity

Ensuring data is accurate and unaltered.

89
New cards

Availability

Ensuring data and systems are accessible when required.

90
New cards

Penetration testing

Ethical hacking to identify vulnerabilities in security systems.

91
New cards

Security controls

Tools and procedures used to protect data, networks and systems from threats.

92
New cards

Authentication

Verifying the identity of a user before access is granted.

93
New cards

Encryption

The process of encoding data to prevent unauthorised access.

94
New cards

Risk management

Identifying, evaluating and prioritising potential security risks.

95
New cards

Evaluation report

A final review summarising how well the solution meets requirements and areas for improvement.

96
New cards

Alpha testing

A testing phase that checks whether modules or solutions meet all requirements and function as expected. Alpha testing is carried out by developers, independent testers or high-level users in a development or testing environment throughout the development phase.

97
New cards

Archiving

The process of moving data from a system that no longer needs to be accessed regularly to a less frequently accessed storage area for future use or to meet compliance requirements. This ensures that data can be stored separately to systems for long periods of time without impacting on current performance or storage requirements.

98
New cards

Backup

The process of making a copy of data and storing the copy separately to the original data in case it is needed due to data loss. Backed up data can be full (entire copy of data), differential (changes since last full backup), incremental (changes since last backup) or a combination of these. Backups can either run manually or be scheduled to run automatically, and can be stored on a local hard drive (distinct from the original source), on external storage devices or by using cloud computing. Backups are restored when data loss occurs.

99
New cards

Beta testing

A testing phase that checks whether solutions meet all requirements, function as expected, are stable and are usable by intended user groups. Beta testing is performed in a development, testing or production environment with hardware identical (or similar) to that on which it will be implemented on by users of the solution. Feedback from beta testing can be used to recommend or make modifications to modules or solutions.

100
New cards

Computational thinking

The process of recognising aspects of computation and being able to think logically, algorithmically, recursively and inferentially. It typically involves the components of decomposition, pattern recognition, abstraction, modelling and algorithms, which may be used to create digital solutions.