Computer Science homework help. Assignment 5 –Application Classes and Architecture
The 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.
You 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 Project
2, 2.1, 2.2, 2.3, 2.3 System Architecture Diagram for Case Study
3, 3, 3.1, 3.2, 3.3, 3.4, 3.5 4+1 Architecture
4, 4.1, 4.2 Application Class Diagram
- Review the IT Online Training Project Requirements 2018R2 and your previous submission for the project.
- Review the Quick Resources listed at the end of this assignment and the resources for Week 4..
- Open the Design Specification Template 2018and save it as ENTD321Assignment5_FirstNameLastName.
- Sections 1, 1.1, 1.2, and 1.3. Complete Sections 1, 1.1, 1.2, and 1.3 of the Design Specification. These are just introductory comments. You can use the Analysis and Requirements Specification documents as references.
Application Class Diagram
- Sections 4, 4.1, 4.2. Develop an application class diagramthat includes entity classes (domain classes), view (boundary) classes like screens and forms, and controller classes that mediate between the view classes and model classes.
5.1 Use your detailed use case (Manage Shopping Cart) as the basis as well as your sequence diagram. Review other use cases to make certain that the application class diagram supports the use case functions. Usually we start with one controller for each use case and name it using the name of the use case and the word “Controller”.
5.2 So for application class diagram start with a controller named after your detailed use case. Use your CASE tool to create the application class diagram. Add text that includes your name and course number directly on the diagram.
5.3 Add view classes for the forms you identified for your detailed use case in your analysis specification.
5.4 Use your sequence diagram for your detailed use case and add the objects as classed to your application class diagram.
5.5 Include a discussion of your application class model and how it works.
5.6 Insert your application class diagram into Section 4.1 of your design specification. Complete Sections 4 and 4.2 (discussion) of your design specification.
System Architecture Diagram
- Sections 2, 2.1, 2.2,.2.3. Develop a System Architecture diagram for your IT Online Training application and include a discussion of the 4+1 architecture. Use some of the Microsoft suggested techniques or the web application techniques and present your architecture. I suggest that you might want to look at the Microsoft generic MVC architecture discussed in Lesson 5 and the Web Architecture article at the end of this assignment.
6.1 Use your CASE or other tool and create an architecture diagram for the IT Online Training application. Insert it into Section 2.3 of your design specification. Complete Sections 2 (introduction to contents of section), 2.1 (assumptions and dependencies), 2.2 (general constraints), and 2.3.1 (discussion) of your specification.
- Sections 3, 3.1, 3.2, .3.3, 3.4, and 3.5. Complete Sections 3, 3.1, 3.2, .3.3, 3.4, and 3.5 with an analysis of the 4+1 Architecture. See FCGSS (2007) in the Quick Resources . Each section has instructions for completing it. Essentially you will include the following:
3.1 Logical View –a brief description of the UML diagram you would propose and if you have already created the model, insert your model into the section.
3.2 Process View–include a brief description of the UML model you would propose for this view and if you have already created the model, insert your model into the section.
3.3 Implementation or Development View–a brief description of the UML diagram you would propose and if you have already created the model, insert your model into the section.
3.4 Deployment View–include a brief description of the UML model you would propose for this view and if you have already created the model, insert your model into the section.
3.5 Use Case View–include a brief description of the UML model you would propose for this view and if you have already created the model, insert your model into the section.
- Make certain that your name and course number at the top of the document.
- When you submit your Word file, use your name as part of the file name, e.g., ENTD321Assignment5_FirstNameLastName
Your assignment will be graded with the following rubric:
Rubric for Assignments
|Content & Development 50%||50/50|
|Grammar, Punctuation, & Spelling 15%||15/15|
|Readability & Style 5%||5/5|
|Timeliness (late deduction 10 points) Optional|
Application Class Diagram
- See Application Class Diagram for an example of an application class diagram and discussion of MVC (Model View Controller).
- For a discussion of how web pages are integrated into development software see ASP.NET MVC Web-Tier. (2003). Retrieved from http://msdl.cs.mcgill.ca/presentations/030613.Codagen/MVCWebApplication.pdf. This article describes the use of templates for class diagram, web page class diagrams (application class diagram), and navigation activity diagrams for the development of web based applications.
- Another example of an application class diagram can be found at http://www.cs.gordon.edu/courses/cs211/AddressBookExample/Analysis.html.
Use Case Controllers
- See the article Use Case Controllerthat discusses the use of controllers for a Place Order use case. The article takes the Place Order use case discusses it and its activity diagram. Figure 4 on the Place Order realization shows different classes (controllers, interfaces (views), and entity classes) required to implement the use case. Figure 5 shows mockups of the forms for the user interface. Figure 6 shows the relationships between the different types of objects in the MVC pattern. Figure 7 shows a generic model of the pattern. Implementation details follow in the article.
- Use the following article from your readings to help determine the appropriate UML diagrams to use:
FCGSS. (2007). Applying 4+1 View Architecture with UML 2. Retrieved March 20, 2013 from http://www.sparxsystems.com/downloads/whitepapers/FCGSS_US_WP_Applying_4+1_w_UML2.pdf. Covers each of the 4+1 Views with suggestions for using them
- See the following for a sample architecture for a Course Registration System similar to yours:
Software Architecture Document Version 1.0. Retrieved from http://www.ecs.csun.edu/~rlingard/COMP684/Example2SoftArch.htm#Purpose.
- Microsoft. (2016). Chapter 21: Designing Web Applications. Retrieved from https://msdn.microsoft.com/en-us/library/ee658099.aspx. This includes a generic web architecture that can be customized for our case study.
- Generic Web based architecture. Microsoft, (n.d.). Chapter 2: Key Principles of Software Architecture. Retrieved 3/29/2013 from http://msdn.microsoft.com/en-us/library/ee658124.aspx.
Software for Architecture Diagrams
Our CASE tool does not provide good features for constructing an architecture diagram. You can use draw.io, Word, Visio or other tool.