ENTD 321 APUS Application Classes and Architecture Implementation Programming Task
Application Classes and ArchitecturePurposeThe purpose of this assignment is to begin the design modeling for our ITOT Case Study. For this assignment, you will develop an application class diagram that includes entity, view, and controller classes as well as an architecture diagram.In this assignment we will begin the design for the case study, the IT Online Training Project. You have already completed sample analysis specifications for this case study. This assignment is based on the IT Online Training Project Requirements 2018R2. In this assignment you will develop an application class diagram and the software architecture for the application. The software architecture is usually developed at the very beginning of analysis and design, is continually updated, and is the guiding document for the design of the application.Course Objective(s)CO5: Describe the software development process including application analysis and system designYou will use the new Design Specification Template 2018 document to create your design specifications. Make certain that you keep the formatting and numbering of the template for your assignments. The Design Specification Template is a Word file with predefined sections that you will complete each week as you did with the Analysis Specification. In this assignment you will create an application class diagram for your detailed use case and you will also create a system architecture for your application.In this assignment you will complete the following sections of your Design Specification:1, 1.1, 1.2, 1.3 Introduction to the Project2, 2.1, 2.2, 2.3, 2.3 System Architecture Diagram for Case Study3, 3, 3.1, 3.2, 3.3, 3.4, 3.5 4+1 Architecture4, 4.1, 4.2 Application Class DiagramClass Design PurposeThe purpose of this assignment is to continue our design modeling for the ITOT Case Study by creating detailed class designs for both ShoppingCart and ShoppingCartItem classes.Course Objective (s)CO6: Describe the software development process including the implementation of models and object oriented languagesCO9: Apply your knowledge of object oriented and UML concepts by designing and developing UML modelsIn this assignment you will develop a detailed design for both the ShoppingCart and ShoppingCartItem classes. Follow the class design guidelines in your readings and use the appropriate use cases you have already developed for the project. Remember that the actions in the use cases and sequence diagrams have to be allocated to classes as operations and ultimately implemented in a programming language. Sequence diagrams include messages which are implemented as operations in classes. So you will need to make certain that your messages in your sequence diagram are reflected in your detailed design. You will need the detailed steps of the Manage Shopping Cart use case and your sequence diagrams. Provide a description of your class design and justification for your decisions.A class is often asked to provide the values of its attributes, so we usually create getter operations for each of the attributes while the attributes are made private. Like for Course we could create public operations like get.courseNo(), get.CourseTitle(), etc. and each of the attributes of Course would be made private so that any change is made through a publicly available operation(method). On the other hand we would create setter operations for each of the attributes to change the value of the attribute. So again we would have set.CourseTitle(courseTitle), etc. where the parameter would be the new course title.ShoppingCartItem would need operations/methods to manage the attributes it has like itemName, qty, costPerItem, and totalCost. So you would have an update operation/method and the getter/setter operations/methods. It would also have the operation/method to calculate the total cost since it has all of the attributes and values to do this.You will complete Sections 5 Class Design, 5.1 Detailed Class Diagram, and 5.2 Detailed Class Diagram Discussion in your Design Specification from last week.ImplementationPurposeThe purpose of this assignment is to continue with our design modeling of the ITOT Case Study. For the Manage Shopping Cart use case, you will create a test scenario, and two test cases. You will also create a persistent UML class diagram and SQL statements for ShoppingCart and ShoppingCartItem. Finally you will map your domain classes ShoppingCarat and ShoppingCartItem to Java statemens. Use you domain class diagram with attributes and operations.Course Objective(s)CO7: Describe implementation modeling for databases and programming styleCO9: Apply your knowledge of object oriented and UML concepts by designing and developing UML modelsYou will create two test cases following the format described in your design specification. In testing, test cases are developed first and then tested later by a different team. You will not be able to exercise your test cases (so you won't have Actual Results) but you can create the test case. You will also create SQL statements including constraints forShoppingCart and ShoppingCartItem. You will also create sample Java statements for ShoppingCart and ShoppingCartItem design classes.In this assignment you complete the following sections in your Design SpecificationSections 6, 6.1, 6.2, 6.2.1, 6.3, 6.3.1 on test cases, Sections 7, 7.1, 7.1.2, 7.2, 7.2,1 on SQL, and Sections 8, 8.1, 8.2 on Java.Instructions1. Review the Quick Resources listed at the end of this assignment.Test Scenario and Test Cases2. Section 6, 6.1. You will identify and document one test scenario (name and description) based on the Manage Shopping Cart use case and complete Sections 6 and 6.1 in your design specification. A test scenario is not the same thing as a test case!3. You will create and discuss two test cases for your scenario above for Manage Shopping Cart including test Case Name, Description, Prerequisites, Steps, Input, Expected Result, Actual Result, Status. The steps of the test case must be numbered!Test Scenario: <add your test scenario here for Manage Shopping Cart>Test Case IDTest Case DescriptionTest Case StepsExpected ResultsActual ResultsTest Case StatusTC001<add description?1. <add step><add expected result><add actual result><add status pass/fail>2, <add step>………………TC002<add description?1. <add step><add expected result><add actual result><add status pass/fail>2, <add step>………………3.1 You will create Test Case 1 based on your scenario for Manage Shopping Cart and add it in the table format in Section 6.2 of your design specification.3.1.1 You will add a discussion of Test Case 1 to Section 6.2.1 in your design specification.3.2 You will create Test Case 2 based on your scenario for Manage Shopping Cart and add it in the table format in Section 6.3 of your design specification.3.2.1 You will add a discussion of Test Case 2 to Section 6.3.1 in your design specification.4. Your entity (persistent) classes will most likely become tables in a relational database. In database design, we would follow normalization and functional decomposition guidelines to normalize our entities (classes) into valid relations. Then we would create SQL (Structured Query Language) statements to create the tables and add constraints. After that, we could populate our tables with data. We will assume our classes are normalized for this exercise.Persistent Class Diagram4.1 Create a persistent UML class diagram (without operations) of persistent data. You already have this from Assignment 2. Make certain that you include ShoppingCart and ShoppingCartItem. Designate primary and foreign keys. Add this to Section 7.1 in your design specification.4.2 Include a discussion of your persistent class diagram in Section 7.1.2 in your design specification.SQL Statements for ShoppingCart and ShoppingCartItem5. You will use two classes (ShoppingCart and ShoppingCartItem) from your persistent UML class diagram and create the SQL statements to implement the tables and constraints. You will need to include primary key and foreign key constraints. Add the SQL Statements to Section 7.2 of your design specification.5.1 Include a discussion of your SQL statements in Section 7.2.1 in your design specification6. Complete Section 7 of your design specification.Java for ShoppingCart and SoppingCartItem7. Create Java statements for ShoppingCart and ShoppingCartItem detailed design classes. Note that ShoppingCart and ShoppingCartItem have a composition type of part whole relationship. See the Engine and Piston example at https://coderanch.com/t/443002/java/Java-Coding-UML-Aggregation-Composition. Add them to Section 8.1 of your design specification and complete Section 8 and 8.2 discussion. You need to map the attributes and methods.