CIS 340 Arizona State University Eclipse IDE Java Library Application Mini Project 2

User Generated

zfvtb

Programming

CIS 340

Arizona State University

CIS

Description

Unformatted Attachment Preview

CIS 340 – Business Information Systems Development I Mini Project 2 Purpose Learn how to solve problems using Object-Oriented Design/Programming concepts. Description You will be using the Eclipse IDE for your Java programming. Overview An area library is considering letting patrons checkout electronic devices such as tablets and eReaders. It is therefore commissioning a prototype of a Device Management and Checkout System (DMCS) by a group of talented CIS developers studying Object-Oriented Design/Programming! To begin, the library would like to start building a basic list of devices they have in stock. Having a prototype would give them the ability to see both possibilities and shortcomings, refine their own requirements and expectations, and then go to a software development consultant. In their basic prototype, the library would like a demonstration of a simple system which allows maintenance of device information. Following are the general specifications of what the library wants. While there are some specifics provided, the library leaves the nitty-gritty implementation details in the good hands of its capable developers team. The library maintains a list of electronic devices. Each device has a Stock Keeping Unit (SKU) code, which is an alphanumeric code up to 6 letters long. Each device also has a name. The library would like to keep track of whether or not a device is available to loan. Devices that are checked out already are considered “not available”, whereas devices that are “available” can be checked out. Since the library is commissioning an object-oriented prototype, they would really like objects to model devices. Each device “object” should have in it all the attributes which need to be tracked. The library has heard arrays are a good way to store a series of logically related objects although they don’t know much about them. They hope that their talented developers will come up with some sophisticated design that would be reusable and extensible in the years to come! For its management purposes, the library would like the following. A main menu should present the user with options. Users should be able to see a list of devices, add a new device, edit an existing device, search for a device by name, and check out a device. The main menu should ask which option the user would like to select and perform that action. After completion, the user should be brought back to the main menu. The main © Copyright Arizona Board of Regents | K. Roumina 1 menu should also allow users to cleanly exit the application. Also, needless to say, the library would prefer if its application did not crash! That would be a bad result for the development team. Sample Output Instead of screenshots, please review the videos posted to this item on the course site. Posted videos cover the required functionality and error-handling features. Requirements 1. General a. Name your project MP2 b. Use object-oriented design to create classes and utilize instance and methods i. There should be little to no use of static variables and methods 2. Features/Specifics The application should allow the user to: a. Display a list of devices b. Add a new device i. Ask users for details of each device that must be tracked: SKU, name, and availability c. Edit an existing device d. Search all device names and display a list of all matching devices e. Check out a device. This should allow users to see a list of all available devices and select one to check out f. Provide the ability to cleanly exit the application The application should have data for a minimum of 5 devices already preloaded into the array when the application starts. The ArrayList should have a minimum size of 10. Hints and Recommendations (All Optional) • • • • • • • • You are free to vary the format of the project. The look of the program, should be clean and pleasing to the eye. Columns should be cleanly delineated. You have a fair degree of flexibility in modeling your project design, implementing methods, etc. You may use E15/16 and/or A7 as your template in getting started. The ArrayLists for objects should always be outside the object. Have a DisplayMenu method in your primary class. Implement your menu calls using a do-while loop. Do not call your DisplayMenu method over and over from other methods. Use System.exit(0) to cleanly exit applications. If you find yourself repeating code, try to have it structured such that it is in one method and you should call that method again rather than type redundant code. You might be interested in having a Utilities class, in which you could store common utility methods that read numbers, insert pauses/”Press any key” statements, etc. © Copyright Arizona Board of Regents | K. Roumina 2 • • Create static methods, readInteger, Pause, etc. Do any error handling within these methods, so that the vast majority of your code remains clean and easier to implement as well as read. If you wrote methods previously for exercises or assignments, you can reuse them. Create one method to write the header of the application and reuse it on every screen. Suggested Sequence of Activities • • • • • • • Design/Create your Device class as one of the first things you do. Once you have your Device class, you can create your array of devices in an external class. Once you have successfully created the array, create a method to load sample data, i.e. create data for 5 sample devices and store it in the array. Then start working through each feature – displaying devices, adding devices, etc. Your goal should be to do iterative development such that you are always adding functionality to a program that is running error-free. Each iteration of your project works but each successive iteration has something new that is added to it. Look at your code again after it is working and take out all redundant and duplicate code – create reusable classes and methods as much as possible. Finally, clean up variable and method names, comment code properly, and make the code look clean and readable! Deliverables All CIS 340 submissions must adhere to standards detailed in the following documents (available on the course site) for full credit. • • • CIS 340 Assignment Submission Instructions CIS 340 Programming Conventions CIS 340 Commenting Guide Note: Assignments will be scored on source code AND output, with the emphasis on the source code. © Copyright Arizona Board of Regents | K. Roumina 3
Purchase answer to see full attachment
User generated content is uploaded by users for the purposes of learning and should be used following Studypool's honor code & terms of service.

Explanation & Answer

View attached ex...


Anonymous
Excellent resource! Really helped me get the gist of things.

Studypool
4.7
Trustpilot
4.5
Sitejabber
4.4

Related Tags