Refactorización y modulado del codigo