describe the functions of various types of software they encounter in their everyday life