Your solution should demonstrate the following. You would each be individually assessed on your solution and would be required to establish your learning and understanding of the items stated in this section with adequate theoretical/technical explanations and demonstration of codes and other artefacts during your presentation;
Req-1: Strong understanding of Programming concepts
a.Appropriate and correct use of language (java) constructs
b.Efficient development of algorithms and optimal use of looping constructs
c.Proper structured code using static methods, constants and libraries
d.Creation of appropriate classes based on case study description
Req-2: Create solution design based on case study specifications described here
a.Evidence of your analysis of the case description to derive appropriate design specifications using class diagrams and other UML notations.
b.Define classes in java that would demonstrate accessors, modifiers, instance methods, constructors
Req-3: Comprehensive Solution Development
a.System building using concepts of aggregation of classes.
b.Based needs demonstrate the use of appropriate collections (eg: arraylist, hashmap, iterators etc.)
c.Craft reusable method signatures with appropriate arguments and return values using wrapper classes.
d.Demonstrate aggregative operations on collection using build in libraries
Req-4: Advanced OOP concepts
a.Build class hierarchies with OO inheritance and interfaces
b.Use of appropriate over-riding and over-loading of methods
c.Demonstrate polymorphic class behaviour and late binding
Req-5: UI principles
a.Use of appropriate visual components
b.Event driven programming with exception handling.
Req-6: Competence in Advanced concepts
a.Use of generics
b.Identification and use of design patterns
c.Practices for error free coding including exception handling, error messaging through unit and system level testing.
The new member fills out a (paper) membership application including their name and student/staff card number. The clerk requests the computer system to display the “New member” screen and enters the form information.
The system then
- uses the student/staff card number as the membership number
- stores the member in the members database.
New Products Entry
1)When new products arrive, the store keeper requests the system to display the “New Product” screen
2)For each Product, the store keeper enters
- the Product’s category
- the Product’s title, in addition to other information
3) The system then
- automatically assigns a “product id” to this product, according to the rules above
- enters the product in the product data base
- displays an option for continuing to enter information about another product
1)The store keeper can add a new category requesting the system to display the “New Category” screen.
2)The system displays a list of all categories currently available in the system.
3)The store keeper is then prompted to enter
- A three-letter code for the new category
- A name for the category
4)The system then checks if the category code already exists, in which case it will print out an error message and terminate the function, returning to the main menu. If the category code does not already exist, the new category is added to the data file, and the user is returned to the main menu.
Buying a product
1)The store keeper requests the system to display the “Check Out” screen, and reads the bar-code on the student/staff card to determine the identity of the member.
2)The store keeper reads the product id from the bar-code sticker on each Product being purchased.
3)The member is required to make immediate payment. If payment is not received, the check-out operation is cancelled, and the user is returned to the main menu.