Add Update and Delete Feature

code refactor for some methods