Software Engineering Program
ENSF 619– Fall
软件工程作业代写 In this assignment you are supposed to practice a complete process of design and development of.a software project, using an..
Total Mark: 100 Introduction: 软件工程作业代写
In this assignment you are supposed to practice a complete process of design and development of
a software project, using an systematic design methodology.
As I mentioned before the last part of the course is focused on system level design and architecture and will be achieved in an “Active Learning” pedagogic approach. It means while theoretical concepts will be discussed in lectures, the corresponding practical techniques to build some design components will be developed in the classroom.
This method shows you the initial directions and helps you to have a better vision on how to continue the details later
A Movie Theater Ticket Reservation App 软件工程作业代写
In this project your task is to analyze, design, and develop a system that can be used by two group of users: ordinary users that can search for a movie, select an specific theater, view available show times, view graphically available seats, select the desired seat, make payment by credit card, receive a copy of ticket and the receipt, via email.
Users also should be able to cancel their ticket only up to 72 hours prior to show and receive a credit with %15 administration fee for future purchase up maximum of one-year expiration date. The other group of users are those who must be registered (let’s call them Registered Users, RUs), and their information such as name, address, credit and/or debit card account must be saved on the system’s database.
RUs must pay a $20.00 annual account fee, but they don't have to pay 15% admin fee for cancelling their tickets and will receive the movie news before public announcement. There is also one more constraint: Only 10% of the seats can be purchased by RUs on a first come first serve policy prior to public announcements.
Your Design document must include all the required details of the full version of the desired system, but your implementation responsibility will be limited to a single theater development. I will discuss further detail in one of the upcoming lectures.
Design Phase (40 marks)
In this phase you should submit a Design Document that includes a clear description of system’s requirements, and design artefacts in the following order:
- Systems use case
- Systems activitydiagram
- A state transition diagram for the following objects in yoursystem:
- Paymentobject 软件工程作业代写
- A detailed “Scenario” each use case, having all candidate objects underlined, and all candidateoperations underlined (use single-underline for objects and double-underline for operations).
- System interaction diagrams for four major and important use cases in . This system (each team member must take responsibility one and his/her name must appear on the related page).
- A Design Level Class Specification thatincludes:
- Aclass diagram without attributes and behavior that only shows the class name and the relationships among them. The purpose of this diagram is to show the entire system in one page. Please make sure lines never cross each other and the diagram is clear and easy to
Note: You class diagram should be traceable into your use-case scenarios. Mark will be deducted for class that are not trace able in these documents.
- A class diagram with no relationships (no lines), only showing the class details: attributesand This diagram can be organized in multiple pages. Please try to keep them well organized, clear, and easy to read.
- A state transition diagram for at least two major and core classes in thesystem
- A PackageDiagram
- A DeploymentDiagram
Note: In this stage you need to apply all possible design strategies and techniques to make the architecture of the system more: reusable, scalable, maintainable, reliable, and using necessary concepts such as modular design, inheritance, realization, aggregation, composition, polymorphism, and appropriate design patterns as needed.
Part II (60 marks)- Implementation Stage 软件工程作业代写
In this phase will implement your proposed design, in Java. The details of implementation will be discussed later.
What to submit on the D2L?
- A jar file that contains all .class
- A tar file that contains all .java