[9-12] Comp Sci Paper 2

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