程序案例-BISM 7255

UML ASSIGNMENT – BISM 7255 – SEMESTER 1-2021 A Digital Solution for Dance Studio 358 ASSESSMENT WEIGHTING: 40% DUE DATE: 27 April 2022 at 2:00pm VERSION: 31 March 2022 INTRODUCTION Summary Task: The assignment asks you to create a collection of UML diagrams (eight diagrams) that visually represent a business application for the dance studio 358. Introduction of Case Scenario: The Dance Studio 358 is a studio in Corinda that provides adults of any age a place to experience dance in a positive environment. In a term, different dance workshops are offered every week covering a range of different styles, Jazz, Ballet, Contemporary, and Tap. A workshop is a two-and-half-day or three-day course focused on a particular dance style. Over time, more and more adults want to attend dance workshops. The studio’s director, Louise Red, manages all matters related to the studio with the Excel spreadsheet and pen and pencil. Doing it this way is very time-consuming, bears the potential for mistakes and errors, and limits the possibility for others to get involved. Hence, Louise would like to have a digital solution to help him with the management of the dance studio. After consulting with Queensland Associated Dance Studios Inc. that represents all Queensland-based dance studios, Louise decided to hire the IT consulting company Blue Bridge to create the digital solution. Michael Price, the owner of Blue Bridge, is tasked with the design of the system, and you are working with Michael to achieve this. Assignment requirements for students: 1) You must use the software Enterprise Architect from the company Sparx Systems to create the UML diagrams. 2) You must in total create eight UML diagrams – five diagrams that follow the case description and three diagrams that present a feature, or innovation that is not described in the Dance Studio 358 case description (we refer to them as “innovation diagrams). For more details, see section ‘Task Description’. 3) Assignments with watermarks are not allowed because when there is a watermark in the diagram the marker cannot read your solutions –for further details inquire in the consultation with M. Wang. 4) You must use UML 2.5 –This means the assignment must comply with the tutorial materials and by extension the OMG UML specification version 2.5 or Sparx Systems’ UML recommendations. 5) Your final submission is a Word document where the UML diagrams are copied in 6) You must also submit a SINGLE Enterprise Architect file that includes the eight UML 2.5 diagrams which the marker uses if the copied UML diagrams are not readable, or the marker wants to verify something. Do not submit diagrams another student created because this is considered ‘student misconduct’ and will be dealt with according to UQ policies. UML Project – Dance Studio 358 Semester 1-2022 [New Version: Effective from 21 Feb 2022] 2 Students per Assignment The assignment can be submitted as an individual assignment OR done by two students as a group assignment. When doing it as a group assignment it is a UQ requirement to do a peer evaluation. For more details refer to the course’ Blackboard site. How do I submit the assignment The assignment submission must be done via the Blackboard site following the steps below: 1) Go to “Assessment” → “Assessment: Project analysis and design assessment portfolio” 2) Find two links → one is a Turnitin submission link, the other is a Blackboard submission link. 3) Through the first Turnitin submission link, submit a project report (.doc or .docx). 4) Through the second Blackboard submission link, submit an Enterprise Architect file (.eapx). If the assignment is done in a group, a Peer Assessment Form (.pdf) must be submitted via this link as well. IMPORTANT: If the assignment is done in a group, only ONE student of the group needs to submit the project report (.doc or .docx) through the Turnitin submission link. The name and student ID of both students in a group must be clearly stated on the cover page of the project report. However, both students must submit the Enterprise Architect file (.eapx) and Peer Assessment Form (.pdf) through the Blackboard submission link. How do I know that my assignment submission was successful When the assignment is successfully submitted the student receives two automatically generated confirmation emails (one for the Turnitin submission, one for the EA project submission) in his/her student email. Each email contains a unique submission ID. Important submission information: 1) To avoid any potential technical problems with computers or the internet, students are advised to commence assignment submission at least 3 hours before they are due. 2) Students must click on the Submit button to submit their assignments. Do not save the assignment as a draft, you must submit the assignment by clicking the submit button. When the assignment is only saved then the submission has not been finalised. 3) If the student does not receive any of the two confirmation emails with the submission IDs, then the student must assume that the submission of the entire assignment or part of it was unsuccessful. 4) If a student does not receive the TWO confirmation emails with the submission IDs within 60 minutes the student is advised to resubmit the respective assignment part or the entire assignment (word file and EA file). 5) The two confirmation emails with the submission IDs are the only proof that the assignment has been successfully submitted. Do not delete these confirmation emails. 6) It is the student’s responsibility to ensure that any UQ assignment is submitted successfully. Any unsuccessful submission may result in late penalty. Misconduct It is understandable that students talk with each other regularly and discuss problems and potential solutions. However, it is expected that the submitted assignment is a unique work – all parts of the assignment are to be completed solely by the student(s) indicated on the first page of the assignment. The best practice to avoid misconduct is not to look at another student’s UML Project – Dance Studio 358 Semester 1-2022 [New Version: Effective from 21 Feb 2022] 3 file(s) and not to show your solution to other students. In case where an assignment is perceived to not be a unique work, a loss of marks and other implications can result. For further information about academic integrity, plagiarism and consequences, please visit http://ppl.app.uq.edu.au/content/3.60.04- student-integrity-and-misconduct DETAILED INFORMATION ABOUT DANCE STUDIO 358 In the following, you find details that allow you to create a truthful representation of the business case. You must capture the operation of the dance studio as it is described here. You cannot fill in gaps or leave information out. If you do so, marks will be deducted. Registration Process for a Dance Workshop: Currently, a client (an adult interested in taking a dance workshop) either calls Louise or send an email inquiring about attending a workshop, which is inefficient and makes it difficult for Louise to keep a record of the persons’ information as well as restricting the number of dancers for each workshop. Hence, she wants to have an automated process registration to eliminate any manual work, support registration for the workshops in an easy way, and provide her with the ability to better manage capacities for each workshop. The registration process will be overseen by the headteacher who is ballet and jazz teacher in the studio. While the director takes charge of the studio enrolment and term payments, the headteacher is responsible for maintaining workshop register, records attendance, weekly workshop schedules, and other activities necessary to keep the dance studio running smoothly. The Scope of the Project – Systems Behaviors and Possible Use Cases The following text provides the details to create the use case diagram. The use case shall present the dance workshop registration subsystem. The goal of the digital solution is to automate the process of booking of the dance workshops. With the digital solution, the headteacher can open new workshops, along with editing information relevant to the workshops. The headteacher can also restrict the capacity of dancers for each workshop. If a workshop does not have at least five adults registered three days before the start date of the workshop, the headteacher has the option to cancel the workshop. For the online booking, there is also a set capacity of 18 dancers per workshop. However, the headteacher or Louise can change the number up to 20 places, which equals to the studio’s capacity. It would be good if the system sends a notification to the headteacher and Louise once 18 dancers have booked to allow for manually increasing the number for the ‘in-demand’ workshops. This means the headteacher and Louise both need access to the system to change the workshop capacity. Michael cannot believe it when Louise tells her that some adults do not show up to the workshop despite having booked and paid in advance. Hence, Louise is confident that she normally can accommodate all dancers wanting to be creative and express themselves. Louise also wants to set up a registration portal on the dance studio’s webpage through which dancers can register for the workshops beforehand. Through the registration portal, dancers can log in, view all available workshops, and sign up for their preferred workshops. If they want to keep information about the booked workshop, they have the option to download an iCalendar UML Project – Dance Studio 358 Semester 1-2022 [New Version: Effective from 21 Feb 2022] 4 file, which can be added to their Outlook/Google calendar. At times, dancers would like to cancel certain bookings due to unexpected events, such as sickness or a hospital visit (sprain an ankle). Then they can use the ‘Cancel’ option. Dancers are required to sign up in advance through the ‘Register Now’ feature, but sometimes dancers do not register and simple ‘walk-in’ on the day of the workshop. Hence, in most weeks there are less than 18 dancers booked in. This means that the walk-ins are allowed to attend the workshop. In fact, Louise or the headteacher always try to make room for a few more dancers if their studio capacity of 20 is not reached. When the dancers come into the studio, there is a sign-up sheet (paper) on the table asking them to sign in. They need to provide their name, the membership number, their contact details, and emergency contact details. Louise would like to remove the paper sheet and put a tablet at the entrance table. When dancers enter the workshop studio, they can then enter their details directly into the digital solution. After each workshop, the headteacher generates a report to get the list of attendees. Louise needs to get the report because she needs to compare the workshop attendees with the term enrolments. She can also get a printout version if needed. The workshop fee is AUD 150. At the moment, many dancers pay per bank transfer. Louise would like the dancers to pay via the registration website at the time of the booking. However, Louise does not want to force payment at the time of the online booking because she is afraid it may negatively impact the numbers. Hence, the system should give the option of online payment or via bank transfer. When attending a workshop, the dancers need to make sure they are enrolled in Dance Studio 358 to have insurance when attending. The yearly fee is either AUD 35 or AUD 75 depending on membership status. Registration Process for a Dance Workshop The following text provides the details to create the activity diagram and the sequence diagram. Both diagrams present the booking process for a dance workshop, however, the activity diagram needs to capture the process, whereas the sequence diagram captures the interactions between the actors [dancers & headteacher] and the system (each). The process of booking a workshop at Dance Studio 358 starts when the dancers go to the studio’s website and there click on “Register Now”. First, the system requires verification of the users’ identity by asking them to sign into a valid account. If the dancer is not a registered user, s/he will need to sign up for a new account. To do so, the dancer enters personal information, including the age, emergency contact, email address, and his/her contact number. After submitting the sign-up form, the dancer receives a validation email to complete the sign-up process for the new account. The link contained in the email will expire three days from the date sent. When the dancer has an account, s/he simply logs into the system by entering his/her login details, i.e., email address and password. Once the dancer is logged in, s/he can book any upcoming workshops. Initially, Louise sets the capacity for each workshop to 18 dancers. Once 18 bookings are made, any new bookings will be rejected, but the person is added to a waiting list. The headteacher and Louise will receive UML Project – Dance Studio 358 Semester 1-2022 [New Version: Effective from 21 Feb 2022] 5 a notification (via email and text message) and can increase the number of sign-ups for the workshop manually, either immediately or at a later stage. The increase is only possible to a maximum of 20 places to comply with the studios’ health and safety regulations. Subsequently, more places open up for booking and the dancers on the waitlist will be notified. Once they have confirmed their interest in a particular workshop, they are automatically signed up for it. The payment for the dance workshop works as follows: There are two options for dancers to pay for the workshop – immediately online or later via bank transfer. If sign-up is online, the dancers have an option to make the payment via credit card at the end of the booking process or later as a bank transfer but not later than two days before the workshop. Once the payment is made via the online system, the system sends a receipt and, meanwhile, records the details of attendees. If the dancer does not pay online, s/he will only receive a confirmation email with the studio’s bank account details and a unique transaction reference code. For these dancers who choose to pay the workshop fee via bank transfer, they instruct their bank to transfer the fee to the studio’s bank account. The payment is confirmed and recorded in the system at the time of the fee is received. Once a dancer has booked a workshop, s/he is free to check out the detailed workshop plan and dance moves on the webpage. In most cases, dancers would like to get a reminder of the workshop. They can simply do so by clicking on the ‘Save to Calendar’ button on their booking page. In case a dancer wants to sign up for more than one dance workshop, s/he can repeat the same process to book available workshops. Data Requirements of the Digital Solution The following text provides you with the details you need to create the domain class diagram. The diagram shall present the data structure of the entire dance studio management system (beyond the workshop booking subsystem). In the meetings with Louise, Michael learns about various types of information that the system needs to keep track of, and that are important to different users of the system. Louise provides him with a list of the essential information the system needs to capture. You find the information in the Excel spreadsheet (see in Blackboard). To help Michael better understand the information in the spreadsheet, Louise also provides him with some additional information as below: Louise needs to maintain information about each member that is an account holder. In fact, the person who attends each of the workshops is not always the account holder but can be the dancer’s partner or employer. For each dancer, Dance Studio 358 only allows for a single sign- up for the account. Dance Studio 358 offers two types of memberships, namely, Gold Star Membership and Standard Membership. The Gold Star membership provides also access to online dance workshops offered by the studio, and the monthly dance magazine. For people that hold the Gold Star Membership, Louise wants to keep a record of who they are and what benefits (name of the benefit, description of the benefit) are available to them. For those who hold the Standard Membership, she occasionally provides them with special discounts for workshops. In such cases, it requires the system to generate discount codes. UML Project – Dance Studio 358 Semester 1-2022 [New Version: Effective from 21 Feb 2022] 6 Louise needs to hire a venue for the dance workshops. Usually, she contacts the owner of the studio venue in November to renew the lease for the following year. Now and then, their workshop studios are not available on specific dates of the year, for example during competition times. If this occurs, she will need to look for other venues for temporary use on those days and weeks. Louise would like to offer multiple advanced dance exercises in each workshop, but also to have basic warm-ups and standard dance moves. She believes that slow dance moves are a great way for adults to express their emotions. Indeed, creating a contemporary expressional dance piece requires fewer skills than ballet and every dancer can do it. Hence, Louise never arranges a workshop without offering either a modern or traditional slow dance piece. Louise usually opens the registration for the workshops for an entire year in January. This allows the booking for more than one workshop. Therefore, Louise relies on the system to keep track of information about bookings, especially details that otherwise cannot be captured in the records of the members and scheduled workshops. Louise also wants to restrict the number of registrations for each workshop. If a workshop reaches its predetermined maximum attendance numbers, a waiting list will be open for this specific workshop. Otherwise, the system only generates a list of registration. Louise worries that if someone accidentally deletes the registration list, the registration will no longer exist. Therefore, she wishes to set up two-factor authentication on the access of the list. Workshop attendees can make payments online when they book for one or more workshops with vacancies. Alternatively, they are welcome to pay the workshop fees via bank transfer. For online payments, Louise would like to capture the type of credit card and the billing address of the payee. For fees that are paid via bank transfer, she wants to capture the account details (daily cash account or again via credit card) and the transaction reference code. The registration process is handled by the headteacher who is ballet and jazz teacher in the studio. Louise needs to maintain records of all dance teachers’ personal information (ID, title, first name, and last name) and their administrative services. Additional information is also important for Louise to know. Therefore, she wants to record the details of the teachers’ contracts, such as contract ID, the start date and end date of their appointment. Since these are additional information, they are not captured as part of their personal information nor the administrative services they are assigned to. For the headteacher, Louise is interested in knowing more in-depth information, including the educational background, experiences in choreographing for competitions, and actual working hours per month. The Lifecycle of a Dance Workshop The following text provides the details to create the state machine diagram. The diagram shall represent the different states of a crafts workshop and the transitions between the states. At Dance Studio 358, each workshop goes through a multiple-phase process to ensure the dancers enjoy the activities but also improve their skills in a certain dance. The lifecycle of a workshop includes several major phases – a planning phase, an online booking phase, a preparation phase for the dance exercise, a workshop running phase, and a performance and presentation phase. A headteacher oversees the entire process. UML Project – Dance Studio 358 Semester 1-2022 [New Version: Effective from 21 Feb 2022] 7 The process starts when Louise shares via email the evaluative feedback from the previous workshop with the headteacher. The headteacher then reaches out to two other dance teachers to work with her on the next workshop. These three people form a creative tribe for the week. In the Planning phase, the headteacher first carefully reviews the feedback while researching about different dance exercises, such as ballet stretching and bending, slow dance moves, and jumps. Then, the headteacher drafts a workshop plan laying out the following details: what time to dedicate to each exercise, what resources are required, what is important feedback from the last workshop, and which online could be used in the week under planning. Once the workshop plan is drafted, it is shared among the team. They review and discuss the proposal, and eventually decide on whether to approve it or not. If the workshop is not approved, it is marked as Rejected and the initial planning process starts again. If the workshop is approved, it is marked as Approved and the headteacher is notified through email. Once a workshop is approved, the headteacher goes ahead and opens the online booking for the workshop. The workshop is then flagged as open in the system and spots are available to be filled. Every time the system recognizes that 18 dancers have signed up for a workshop, it notifies the headteacher and Louise who then may release more spots for waitlisted dancers. From time to time, some dancers may decide to cancel a workshop. As a result, those spots open and become available for the dancers on the waitlist. Note that bookings close one day prior to each workshop. At that point, if there are less than five dancers registered, the workshop will be cancelled and removed from the list. The headteacher and the volunteers start preparing for the workshops three days before, such as selecting music, cleaning the floor, putting out water bottles, stretching mats, and gymnastic balls. On the day of the workshop, the headteacher and the other teachers run the workshop together. They open the studio for the dancers to come in, set up the healthy corner with water and fruits, and create a relaxing zone for stretching as well as other dance exercises. They also explain the dances the studio’s housekeeping rules. A smooth-running workshop is only possible through the efforts of the headteacher and the other teachers. Each workshop is generally a combination of slow dance moves and other dance practices, which provide opportunities to create a unique art piece, master modern dance skills, and emotionally work through experienced events. Louise has made it a habit to collect feedback about each workshop from the dancers by emailing them a short questionnaire. It generally takes him two days to receive feedback back from the dancers. The feedback is later entered into the system. After 24 hours of entering the feedback, Louise carefully reads through the feedback and adds some personal notes that mark the end of one dance workshop. Task Description After familiarising himself with the business requirements for the software application for Dance Studio 358, Michael and you are now required to do THREE tasks: 1) Task 1: Find a name for the digital solution. You must also give the solution a name. Put the name on the cover page of the word file. UML Project – Dance Studio 358 Semester 1-2022 [New Version: Effective from 21 Feb 2022] 8 2) Task 2: Create five UML models (one for each type) based on the description of business requirements for Dance Studio 358. Document any assumptions you made (if any) underneath each diagram. 3) Task 3: Create three additional UML models (we refer to them as “innovation diagrams) that have not been detailed in the description of the Dance Studio 358. Here we ask you to be creative and use your own imagination to come up with something new. You can consider this task as a suggestion of an additional feature, an innovation, the studio owner did not think of. The three UML models you are asked to create must be an activity diagram, a sequence diagram, anda state machine diagram. To propose something truly new – you must keep the following in mind: 1. Activity diagram cannot be the ‘Registration Process’. We recommend going back to the use case diagram and thinking about a different business process. 2. Activity diagram and sequence diagram must depict the same business process. 3. State machine diagram cannot be the object ‘Dance Workshop’. UML 2.5 Portfolio All UML models MUST be created with Enterprise Architect (EA) and each diagram must be exported as an image and pasted into a Word document that MUST be submitted as well. The word document needs to include an overview page that must contain a table of contents with meaningful headings. For example, “Activity Diagram” followed by the name of the system. In addition, each diagram may have assumptions underneath only if needed. It is recommendable approximately 200 words (for the whole document) but can be less or more. Also, it is desirable the use of bullet points. Furthermore, the word document must have the pages numbered and the diagrams must have a readable font size. All models MUST be done in UML 2.5. This means it must comply with the tutorial material, and by extension the OMG UML specification version 2.5 or Sparx Systems’ UML recommendations. Please make sure that you comply with the modelling guidelines as follows: 1) The models must be created with Enterprise Architect from the company Sparx. 2) The first five models must be a truthful representation of the business case. This means you need to create the five diagrams using the information provided in the assignment. 3) You must only model the automated part of the digital solutions. This means any manual activities that are not carried out by the system are going to be represented in the UML models. 4) You must follow appropriate modelling conventions (the rules) that are specified in the weekly tutorial files. 5) You must clearly capture the relationships between different types of UML models. This means: The activity diagram must model the business process that is captured in one or more use cases of the use case diagram. Activity diagram and sequence diagram must depict the same business process. The information contained in the sequence diagram should match the information captured in the class diagram. State machine diagram must depict the states of a single object (over its lifespan); this object is captured as a class in the class diagram. UML Project – Dance Studio 358 Semester 1-2022 [New Version: Effective from 21 Feb 2022] 9 For Task 2 – the first five UML diagrams (see p. 7), you must have the following details in each diagram: N Diagram Type Detailed Requirements 1 Use Case Diagram 3 different actors 8 or more top level use cases 3 or more include relationships 4 or more extend relationships 2 Activity Diagram 3 partitions 25 – 30 activities 4 forks 4 joins 4 decision activities 3 Sequence Diagram 1 domain object that interacts with 2 actors in a complex sequence of interactions, including 12 input messages, 13 return values, and 5 self- messages and 5 self-message returns. Parameters/input data must be included along with each input message. You should also include combined fragments, specifically, 1 loop fragment, 2 opt fragments, and 2 alt fragments. 4 Class Diagram 21 domain classes with multiplicities, attributes, and operations. 3 cases of generalization/specialization relationships 3 cases of whole-part relationships (i.e., aggregation AND composition) 2 association classes Please make sure that all information captured in the Class Diagram come from the excel spreadsheet and the case description. 5 State Machine Diagram 1 object, 9 or more major states, 1 composite states, 1 choice pseudo- state, and various transitions with triggers and guard conditions (if required). You should also include initial state(s) and final state(s). For Task 3 – the innovation diagrams (see p. 7), you must have the following details in each diagram: N Diagram Type Detailed Requirements 1 Activity Diagram 3 partitions No less than 20 activities No less than 2 forks No less than 2 joins No less than 3 decision activities 2 Sequence Diagram 1 domain object that interacts with 2 actors in a complex sequence of interactions, including… 1) no less than 10 input messages, UML Project – Dance Studio 358 Semester 1-2022 [New Version: Effective from 21 Feb 2022] 10 2) no less than 10 return values, 3) no less than 2 self-messages, 4) parameters/input data must be included along with each input message. 5) combined fragments must be included, specifically, 1 loop fragment, 2 opt fragments, and 2 alt fragments. 3 State Machine Diagram 1 object, 9 or more major states, 1 composite states, 1 choice pseudo- state, and various transitions with triggers and guard conditions (if required). You should also include initial state(s) and final state(s). Submission Process The assignment must be submitted electronically through Blackboard. Please make sure that your submission includes TWO files: 1) Analysis and design assessment portfolio. This is a word file (not a PDF file). 2) An Enterprise Architect file that corresponds with your word file diagrams. Export each diagram as an image and paste it in a WORD DOCUMENT and submit the EA FILE used to produce the portfolio. Files submitted as email attachments to teaching staff will not be accepted. Late submission will result in the deduction of marks. Before the closing time of the submission, you can submit multiple times. Blackboard displays all submissions, and we can see what the latest submission is and will only mark your latest submission. No submissions via email will be accepted. Submission Date Submission date: 27 April 2022 at 2:00pm For each day (including Saturday and Sunday) after the 27 April 2022, the late submission penalties apply based on UQ examination policies until the assignment is submitted. When the assignment is successfully submitted, the student receives two automatically generated confirmation emails (one for the Turnitin submission, one for the EA project submission) in his/her student email. Each email contains a unique submission ID. Important submission information: 1) To avoid any potential technical problems with computers or the internet, students are advised to commence assignment submission at least 3 hours before they are due. 2) Students must click on the Submit button to submit their assignments. Do not save the assignment as a draft, you must submit the assignment by clicking the submit button. When the assignment is only saved then the submission has not been finalised. 3) If the student does not receive any of the two confirmation emails with the submission IDs, then the student must assume that the submission of the entire assignment or part of it was unsuccessful. 4) If a student does not receive the TWO confirmation emails with the submission IDs within 60 minutes the student is advised to resubmit the respective assignment part or the entire assignment (word file and EA file). UML Project – Dance Studio 358 Semester 1-2022 [New Version: Effective from 21 Feb 2022] 11 5) The two confirmation emails with the submission IDs are the only proof that the assignment has been successfully submitted. Do not delete these confirmation emails. 6) It is the student’s responsibility to ensure that any UQ assignment is submitted successfully. Any unsuccessful submission may result in late penalty. Consultation There are two types of UML consultation – open consultation (i.e., drop-in session) and group consultation (i.e., 10-student group). In open consultation, students ca