Because of the simplicity of the user requirements, the corresponding use cases are not duplicated here, as would be the case in a normal XYZZY design document.
The purpose of the system is to provide information about products to a potential purchaser. A Java desktop application is to be developed, driven by a simple Swing GUI. Interaction between the database and the application is to be via JDBC. The NetBeans IDE is to be used for development. Java DB must be used as the database.
The Phase 1 user requirements are:
1.Start the application and connect to the database. If a connection cannot be established, the application must exit.
2.Close the database connection and stop the application
3.Display all products
4.Display all products for a specified region
5.Display the number of products within a specified age range
6.Update the price of a specified product
7.The software architecture is to conform to the MVP (Model View Presenter) pattern.
Note that for our prototypes, a products (ie malt whiskies) are specified by a distillery and an age - 10 year old Laphroaig and 15 year old Laphroaig are distinct products.
The database design and sample data are provided in Section 4. Data validation is not required at this stage. However, basic preconditions must be satisfied for each requirement and if these are not satisfied, an appropriate message is to be displayed. These preconditions are specified in Section 8.