Factors considered for the design of the alogorithms