Olá, como vai?
li atentamente a sua descrição do projeto (antes todas fossem tão boas descritas quanto essa).
### solução proposta
pela descrição, creio que:
1. [alugueis] só há necessidade de criar uma tabela (alugueis) com referências ao usuário, livro a ser alugadoe alguns outros campos, como data do empréstimo, dias, data de devolução, etc...
Outras informações podem ser obtidas a partir da combinação dos registros de todas as tabelas;
2. [carrinho de compras] o carrinho pode ser feito apenas com sessões de php, por exemplo, e os empréstimos registrados nas tabelas apenas quando confirmados;
3. [relatórios] os relatórios e informações em tela, como no caso 1, podem ser inferidos a partir da combinação dos registros de todas as tabelas;
4. [envio de imagem] implementação da rotina de envio de imagem e atualização da base de dados;
### metodologia de trabalho
[gestão e acompanhamento] No inicio do projeto criamos um kanban online com todas as tarefas que serão realizadas e disponibilizamos para os senhores possam acompanhar o desenvolvimento a qualquer momento;
[qualidade do código] 100% dos nossos códigos, independente da linguagem, são comentados de acordo com as boas práticas (para PHP utilizamos o PHPDOC como padrão).
[ambiente de desenvolvimento] criamos um ambiente de desenvolvimento e outro acessível via internet para a sua validação.
Qualquer dúvida, por favor, entre em contato pelo chat do freelancer ou skype (marcosvit).
Grato,
Marcos Viterbo