Save
[9-12] Comp Sci Paper 2
Save
Share
Learn
Content
Leaderboard
Learn
Created by
S B
Visit profile
Cards (56)
What does structure chart show
· Identification of
modules
·
Hierarchy
of modules
·
Parameters
/variables passed
between
modules
· Module
iteration
/
selection
Post condition loop
REPEAT…UNTIL
Pseudocode to define
record
TYPE
DECLARE...
ENDTYPE
Pseudocode Declare 1D array
DECLARE : ARRAY [1:] OF
White box testing
Necessary to test
all
possible
paths through the code
Why use record
· Allows
multiple
data
types
· Stored under
one
identifier
Structure chart shape for selection
Diamond
Benefits of using text files
· Data retained when program
terminated
·
Non-volatile
storage
When use count controlled loop when
number iterations
is known
Syntax Error
· Program
not
obey rules/
grammar
of programming language
· Program
cannot
run
·
Mis
spelt
keywords
Logic error
·
Error
in algorithm
· Program does not run as expected (give expected
output
)
· E.g. wrong
arithmetic
operator used
Run Time error
· Program performs
invalid
operation
· e.g. divide by zero
Need for & benefit of abstraction
· Need to filter out non
essential
information
· Solution
simplified
+ easier to implement
· System
tailored
to needs of user
How element added to queue
·
Increment
EoQ
· Data stored at value
pointed
by EoQ
How element removed from queue
· Element pointed at by FoQ
popped
· FoQ
incremented
Design stage
· Choose programming
language
· Decide
data
structures
· Create
testing
method/plan
· Create
algorithms
/
flowcharts
· Program
modules
split to teams
Describe decomposition
· Breaking down problem into smaller
sub
problems
· Easier to
understand
+
solve
problem
· Assign
different
parts to team
· Concept of
program
modules
Rapid Application Development (RAD)
· Provides working
model
·
Prototype
at
early
stage for approval
Features that make pseudocode easier to read and understand.
· Meaningful
variable
names
·
Indents
·
Capitilise
keywords
Algorithm
sequence
of steps that describe how to
solve
a problem.
Information in identifier table
· Name of
identifiers
used
·
Data
type of identifier
·
Purpose
of identifier
·
Value
of any
constants
·
Number
of elements in
array
/
string
· If variable
local
or
global
Benefits of decomposition
· Splitting
smaller
problems
easier
understand + solve
· Easier to
test
/maintain
· Solved in
separate
teams with
different
programming expertise
Pre condition loop
WHILE
…
ENDWHILE
Integration testing
·
Modules
all tested individually
· All combined into
single
sub
program – tested as whole
Type of Maintenance
·
Perfective
·
Adaptive
·
corrective
Adaptive maintenance
· Accommodate
change
in
requirement
/legislation
· E.g. new HTML version available
Corrective maintenance
· Program
not
performed
as expected
· There is a
bug
· E.g. passwords are not hidden
Purpose of structure chart
· Module
hierarchy
/relationships
· How problem
broken
down
·
Parameters
passed between
modules
· Shows if module is
procedure
or
function
Waterfall up arrow meaning
more
work
required at
previous
stage to complete
current
stage
Waterfall down arrow meaning
Result from
one
stage is
input
to
next
stage
Benefits of using library routines for program development
·
Already
tested –
error
free
· Perform
complex
function that programmer
cannot
do
· Readily
available
– speeds up
development
time
· Quicker and more
efficient
Reasons to use subroutine
· Task
repeated
in
several
places
· Part of algorithm completes
specific
task
· Program
simplified
·
Maintenance
easier
Beta testing
· Test carried out by
small
group
of users
· Users check
software
works as expected no
errors
· Users provide
feedback
· Problems identified before program
solved
Features of queue
· Each queue element contains
one
piece of data
·
Front
+
end
pointer
· Data added at
back.
Removed from
front
·
FIFO
structure
· May be
circular
Features of linked list
· Node contains
data
+
pointer
to next node
·
Start
pointer
· Last node has
null
pointer
· Data
added
/
removed
by manipulating pointers
· Nodes traversed
specific
sequence
Benefit of development life cycle:
easier to
manage
/
plan
project
Principles of Rapid Application Development (RAD)
· Modules developed as
prototypes
· Client involved in all
stages
during development
· Allows for
flexible
development + changes
Benefit of RAD
·
Prototype
produced
·
Client
involved – tailor to their needs
·
Quicker
development time
· Easier to
change
requirements
Drawbacks of RAD
· Client keep
changing
mind
· Hard to
plan
cost/time of project
Reasons why adaptative maintenance used
· Change to
website
requirements
· New
technologies
available
· Change in relevant
legislation
See all 56 cards