[CSAL] Software Dev

Testing Strategies

  • Stub testing
  • White-box
  • Black-box

Stub test

  • Create the methods/functions declaration, without implementing them
  • One scenario is use in developing user interface, those "backend" functions are declared as stub while the user interface can be program/test independently 

White-box testing

  • Testing every path through the program code
  • i.e. the test based on having access to the source code, knowing "HOW" it works

Black-box testing

  • Compare expected results with actual results when a program is run
  • In contrast to white box, no knowledge about HOW the code works
  • Can perform by testers who is not the one to create the program

Testing methods

  • Module test / unit test - testing on individual components, usually whitebox test
  • Integration test / (sub) system test - Combining multiple modules to test
  • Alpha testing - In house test before release to customer
  • Acceptance test - Customer checks the program meets their requirements and work as expected, usually part of the hand-over process
  • Beta testing - Early release to chosen user group, beta testers will perform the test in their own environment and report issues to the developers. 

Test plan

  • Should include the followings:
    • Test case number (serial number)
    • Description
    • Test data
    • Type of test data
    • Expected result
    • Actual outcome
    • Remedial plan

Types of test data

  • Normal (valid)
  • Abnormal (invalid)
  • Extreme / Boundary (can be valid or invalid) 

Project management

  • Manages project resources
  • which includes time, human, equipment etc.

PERT chart

  • Program Evaluation Review Technique (PERT)
  • A method to help planning and scheduling of a large and complex project
  • Activity - The work need to be done
  • Milestone- Scheduled event after certain activity is done
Activity Description Weeks Deliverables Milestones
Start 1
A Identify requirements 1 Requirement specification 2
B Produce desgin 2 Program design 3
C Write program code 8 Complete code 4
D Test modules 5 Tested program modules 5
E Integration test 2 Tested integerated software 6
F Install software 1 Software ready to use 7
G Acceptance test 2 Software signed off 8
Write documentation 4 Technical documentation 9
J Write training material 2 User documentation 8
K Train users 3 Users trained 10
L Go live 1 Finish 11

Critical Path

  • Longest possible continuous pathway from start to finish
    • Adding all serial activities
    • Adding longest path in parallel activities
  • Any delay in the critical path results the project delayed

Gantt Chart

  • Graphical representation of a project schedule
  • Helps to plan activities in a project

[CSAL] Software Dev

By Andy tsui

[CSAL] Software Dev

  • 161