Hi, I have an idea to make a library information management system console application but am abit lacking on what kind of information i need to get started,from what i have created so far, I know i might need an administrator to manage the whole system, some students, scholars to borrow library materials such as books, publications etc,the library system to hold the books and student objects, also i might require some objects to represent books mmh... and that's all I got for now.
When i review this requirements, they seem to me inadequate to suffice a whole lib-inf-sys that am thinking about, Also while am trying to generate new requirements they seem to get superseded by my previous suggestions and I can't get a step further, am stuck.
I will appreciate some suggestion on what I really need , some DOs and DON'T s or some earlier test question on the same that outlines the requirements quite clearly, if possible let it not be some code cz i'll be so good at copying and i wanna gauge my skills so far but if i get another question i'll definitely ask.
Start by thinking about use cases. What are the actions you want your application to do?
- Add a book to the library's collection.
- Can you have multiple copies of the same book?
- Can books by different authors have the same title?
- Do you want to be able to look up a book? By title? By author? By subject?
- Add a user to the system
- Check out a book to a user
- Checkin a book from a user
- Print an inventory of the library's books
- List the books checked out by a user
- Save the data to a file when you exit the program
- Reload the data from a file when you restart the program.
Once you have a list of use cases, you can start thinking about the classes needed to represent the objects in your system (library, users, books, etc). Now you can start sketching out variables that each class needs and the actions that each class can perform.
Thank you very much @Abstractionanon, such a suggestions was definetly what I needed , I'll add it up with my intial list and with that i will be getting somewhere on my project.