You just changed business functions by requirements and applied the same logic. A module can be as many thing depending on where you are in the level of the development of the product. An architecture could see it as a layer of the application, a whole module of features, a component etc... a developer could see it a component, a simple service or a class. And I don't think you can only touch the first principle and leave the others. All are a set and should be used together. In your content you used many times example that are related to the I (Interface Segragation than the SRP)