Design a medium sized software system

Assignment Help Basic Computer Science
Reference no: EM131482051

Aim: The aim of this assignment is to test your ability to design a medium sized software system and to demonstrate your ability to manage and present clearly a design document.

This assignment is designed for students working in groups of 2 or 3. You are allowed to work alone but improved group work is an aim of this unit and so is encouraged. All group members are required to contribute equal effort to the assignment. See the Unit Coordinator as soon as possible (well before the deadline) if you believe this is not the case. Please feel free to post to help4401 (the discussion forum) if you need to find other group members.

If you choose to work on your own, the workload will be very high. The same marking criteria will be used whether the assignment is done collaboratively or individually.

Task: Your task for this assignment is to develop a system design for a computer system that facilitates electronic interaction between students and teachers during lectures, using mobile devices. The system will be called the Electronic Lecture Interaction (ELI). The requirements definition for this system is given in the ELI Requirements Definition reproduced below. As well as the analysis for the software design, you should document the rationale for the design decisions you make and also keep a log (listing date, task, people involved, time taken) for all work undertaken on this project.

Your system design document (80%): Your design document for ELI should comprise the parts described below. For parts a to g, you should supply rationale for your design decisions; however, you do not need to structure your arguments in rhetorical steps (such as issues, proposals, criteria,..., as given in lecture 13). There is no minimum or maximum page limit on your design document. You should cover all of the parts below and adopt a common document format (font: Times, size: 12, margins: 2.5-3cm).

a. Functional modelling. Provide a use case diagram containing appropriate choice of actors and use cases which covers all the functionality of the given requirements definition but does not invent any new functionality. In the diagram, you should use the client's language and not new or ambiguous terms. Boundary between this system and external systems should be clearly identified and justified. For each use case in your diagram, you should provide a table that describes the use case (see the lecture notes for the template).

b. Object modelling. Provide a class diagram to show the significant relationships between objects identified in ELI. You do not need to include boundary and control objects in this diagram. Reasonable roles and multiplicities should be given. For each class in your class diagram, supply the attributes (including the types) and major operations. Again, use the client's language and do not invent new or ambiguous terms. Names of attributes and operations should be explained. To avoid putting too much information into a single diagram, it is recommended that your main class diagram for the DBMS should contain only the names of all the classes. For each class in the main class diagram, you can then draw a separate class diagram showing the attributes and operations.

c. Dynamic modelling part a. Each member of the group should provide 1 sequence diagram, chosen from any of the use cases in your use case diagram above. Clearly identify which student created each sequence diagram as marks will be allocated on an individual basis for this part. Identify in each sequence diagram, the participating actors and objects. Explain the type (entity, boundary, or control) of each object. Clearly label the messages sent between the participating objects. Your sequence diagram should be consistent with your class diagrams.

d. Design constraints. List 5 design constraints for ELI and prioritize them. Give sufficient explanation for each design constraint and its priority.

e. Subsystem decomposition. Describe in detail how you would decompose ELI into subsystems. Describe the services provided by each subsystem. Justification of your subsystem decomposition (such as coupling and cohesion) should be given. Are there other ways to decompose the system? Include diagrams alongside your description.

f. Dynamic modelling part b. Each member of the group should supply 1 statechart diagram to describe the dynamic behaviour of the overall DBMS or an object with significant state variation in ELI. Clearly identify which student created each statechart diagram as marks will be allocated on an individual basis for this part. Give a detailed description for each diagram. Choose meaningful names for the states and transitions. Again, use the client's terminology.

g. Design patterns. Each member of the group should list 1 design pattern that would be appropriate to be used in the system. Describe which part of the system that each pattern is suitable for and justify why you chose the pattern. Identify the student author for each, as marks will be allocated on an individual basis for this part.

h. System design rationale. Now think about implementing ELI. Your aim is to develop a working system that is efficient, reliable, and secure. Although you would, hypothetically, be free to use any programming language (you are not required to write any code in this assignment), one constraint is that ELI must work over a wireless network connection. Before beginning any coding, you would need to consider about hardware and software components that would fit together and work with your design. In your system design document, identify 3 issues that may have two or more possible solutions and that require you to resolve for the best solution for each issue. Follow the structured steps (issues, proposals, criteria, ...) for the design rationale as shown in lecture 13 to address these issues and your decision rationale.
i. Log. Attach at the end of your system design document a log, which should list the date, task, people involved, time taken, for all the work undertaken on this project. You can supply your log in a table form.

Seminar presentation (20%): You must give a short presentation to explain your design for ELI. If you work in a group, all group members must be present and participate in the talk. There is no need to create fancy Powerpoint slides. However, diagrams/text shown on the slides should be clear and legible. In the seminar, you should focus on the important aspects of your design, as there may not be sufficient time to go through all the fine details of your design.

Further details about the presentation and timetable will be given on the cshelp forum and an announcement will be made in the class.
ELI: Electronic Lecture Interaction (Requirement Definition Document)

1. General Goals
1.1. Purpose of the system
Student-teacher interaction increases the efficiency of learning and promotes a high value learning environment. However due to low staff-student ratios, universities rely more on traditional lecture environments where interaction is not encouraged and may not be feasible. However, as smartphones, tablet computers and laptops become more prevalent, we have the option to use mobile devices for large scale student-teacher interaction in lectures. The system should allow students to connect their mobile device at the start of a lecture, access electronic resources (readings, media files), complete electronic assessments, or respond (anonymously) to polls or questions set by the lecturer. The responses from polls and tests should be able to be automatically aggregated and displayed to students to give real time feedback in a lecture setting. 1.2. Scope of the system

ELI is designed to be used in a lecture environment, to allow the lecturer's laptop computer to use a wireless router to communicate with students' mobile devices (smartphones, tablets and laptops). At the students' end, the system should provide a simple interface for downloading learning materials, responding to questions set by the lecturer and completing multiple choice tests. At the lecturer's end, the system should allow students to be added to a class, learning materials to be made available, polls to be taken, electronic assessments to be set and results from polls and tests to be aggregated and displayed. For generality, we will assume no fixed format for the electronic assessment, and suppose that the lecturer will supply a module that allows ELI to automatically mark the assessment. It is intended that ELI will complement a conventional lecture system that displays and records lecture slides to the students (we will refer to this as the lecture presentation system). 1.3. Objectives and success criteria of the system

1.3.1. Develop a system that allows teachers and students to interact during lectures using mobile devices.
1.3.2. Provide a student interface that allows students to access teaching materials and complete electronic assessments and participate in polls.
1.3.3. Provide a teacher interface that allows teaching materials to be made available, polls and assessments to be set and real time feedback to be given to students.
1.3.4. A generic system that does not require students to purchase specific hardware, and a reliable system that allows medium classes (100+ students) to interact with minimal lag in data transfer.
2 Proposed System
ELI provides a system that allows students to interact with the lecturer using their own mobile devices. They should be able to download and access teaching materials, complete electronic assessments and participate in polls, and receive feedback in real- time. The lecturer should be able to set assessment and polls, display feedback to the students and release teaching materials throughout the lecture. 2.1 Functional Requirements
2.1.1 Student Registers
- ELI shall provide a lightweight application to manage the students interface. On entering the lecture venue, a student will start the ELI app. The app will create a connection with the ELI system running on the lecturer's computer and prompt the student for login details.
- If the student's login details are correct, a session is created and the student is then able to access resources as they are released. Otherwise, the student is prompted to re-enter their details. The student's session is recorded in a log for future reference. 2.1.2 Set up class
- ELI provides an application to allow the lecturer to interact with students. Prior to the start of a lecture, the lecturer starts the application and then sets up the class by selecting the list of students expected to attend, the teaching materials required (readings, media files, etc) and the electronic assessments and marking scripts.
- At the start of the lecture, the lecturer opens the ELI to students, who are then able to register with the ELI. 2.1.3 Access learning material
- When the lecturer decides to releases some teaching material to the students, the lecturer selects the file and the option "release".
- The students are then notified (either verbally or electronically) that the material is available. Through their interface, they can select the newly available resource and download it to their device. We assume that the format of the teaching material is sufficiently generic (pdf, avi, jpg, http) that the students' devices will have the necessary functionality to allow the students to access the resource.

2.1.4 Set poll
- The lecturer is able to use ELI to set one or more poll questions. This will typically involve a question and a set of responses. The lecturer will select the question(s) and the option "poll". The students are then notified of the poll question(s).
- The students will use their mobile device to access a response form from the lecturer's computer. They will select their response(s) and submit the form.
- As the responses are submitted, they are recorded on the lecturer's computer. The results are aggregated and the data is presented in common formats (e.g. pie graphs and histograms). The lecturer may then elect to share the results with students, either through the ELI system or the lecture presentation system 2.1.5 Set assessment
- The lecturer is able to use ELI to set an assessment. This will typically be a multiple choice test, but could potentially also involve short answer questions or writing computer code. The lecturer will select the assessment and the option "assess". The students are then notified of the assessment(s).
- The students will use their mobile device to access the assessment from the lecturer's computer. They will be given time to complete the assessment and submit their answer to the ELI system.
- As the responses are submitted, the marking module is run within ELI to assess the submission and the results are recorded on the lecturer's computer. The results are aggregated and the data is presented in common formats (e.g. histograms with mean and standard deviation).
- The individual's results are then made available to each mobile device so students may (privately) view their mark. The lecturer may then elect to share the results with students, either through the ELI system, or the lecture presentation system. 2.2 Example scenario
Tim is lecturing CITS4401. Prior to the lecture he sets up the class list with all CITS4401 students, he prepares the lecture overview, a reading and a multiple choice test. At the start of the lecture he starts the application on his machine and immediately makes the lecture overview available to all students.

Jack is an CITS4401 student. He arrives at the lecture and takes out his mobile device (an iPad). He starts the ELI app which creates a connection to Tim's computer and prompts Jack for his user name and password. Jack enters these correctly and then downloads the lecture outline to his iPad.

Twenty minutes into the lecture, Tim announces there is a short reading following by a 5 question multiple choice test on the reading. Jack uses the ELI app to download both the reading (pdf) and test (html form). He completes the reading and the test and then presses submit.
Tim receives submissions from all the students and displays the number of people who got each question right. Jack's individual mark is displayed on his device. He got 4/5 and, like most people, he got question (4) wrong. Tim realizes that he has not adequately explained the relevant concept so he goes over it again in more detail.

3 Quality Requirements
The following section will aim to highlight the non-functional requirements of the ELI system.

3.1 Performance Characteristics

3.1.1 Student Device Performance
The student's mobile device would ideally be a tablet computer, but may also be a smartphone. As mobile devices have limited power and processing capabilities this system must not use an excessive amount of power or require processor intensive operations.

3.1.2 Lecturer Computer Performance
The lecturer's computer (possibly augmented with a wireless router) will be required to act as a server for more than 100 devices. It should be able to do this with little noticeable lag. It will also be required to mark multiple assessments, collate, record and display the results in real time. 3.2 Quality Issues

3.2.1 Reliability
Reliability of the system is an important requirement for the ELI system. Lecture time is valuable, so it is important that, during lectures, the downtime of the lecturers systems is less than 1%. All student devices should be able to reliably connect and reconnect to the system as required. Downtime for student devices should be less than 5% during lectures. The results from assessments should be recorded securely and backed-up as soon as possible to prevent loss of data.

3.2.2 Portability
System must be portable amongst different mobile devices. Total coverage may not be possible, but the systems should be available to a large range of mobile
devices, such as the Android platform or the iOS (iPad) platform. The ELI system should be able to run adequately off a laptop with a wireless router.

3.2.3 Usability
The ELI system must have a simple and intuitive interface for students and lecturers to use, as there will only be limited training resources available. Someone familiar with the mobile device should be able to adequately use ELI after no more than 5 minutes training. 3.3 System Modifications

3.3.1 Maintainability
As the mobile device market is rapidly evolving, it is important that the system is designed to be able to adapt to new devices, and to allow extra functionality and device features to be incorporated in future versions.

3.3.2 Scalability
The current specification is for medium lectures of between 100 and 200 students. However the system will be most valuable for large classes (600+ students) so it is important that it is designed to allow for future version to cater for larger classes.

3.4 Security Issues
Security is particularly important in the context of assessments taken through ELI. As the primary purpose of mobile devices is communication, it is difficult to prevent students communicating during tests. This risk may be mitigated by providing individual assessments to students (e.g. reordering questions etc). Students must provide a username and password to access the system. Students must be enrolled in a unit to interact using ELI.

Verified Expert

In this assignment we have studied design pattern.There are different type design pattern are there .Here we have studied design pattern like singleton and observer pattern and studied class diagram to understand structure of project.Here we also studied Class diagram , to study dynamic behavior studied state diagram.Here we also studied decomposition where we have divide a system into subsystem.We also learn constrain over the project.

Reference no: EM131482051

Data and layout file structure

This is an array of data, make sure that your output JSON file accurately represents this fact. The data should not just be a bunch of JSON objects in a file with no structu

Major manufacturer of heating equipment

Lennie Edison was employed as a project engineer for Vulcan Systems, which was a major manufacturer of heating equipment. As part of his job, Edison was sometimes required t

Leadership style interview for a company newsletter

Select someone in a leadership position at your organization or at a local company where you might seek employment.  This individual could be a director, manager, supervisor

Create a matrix that explains leadership theories

As a leader, you often need to display or clarify a concept.  A matrix is a grid that contains information and offers a visual model of ideas.  For this assignment, you will

Various business ventures by emma issacs

Describe the various entrepreneurial venture Emma Issacs founded or bought. Identify the types of entrepreneurial outcome represents the various business ventures by Emma Is

Diagram of ideas-digital manifestation to physical fixed

Using Ms. Blakley's diagram of Ideas/Digital Manifestation to Physical Fixed Express vs. Utility to Art , where, predominantly does the organization you have been researchin

Cultural dimensions of the country

Identify the cultural dimensions of the country of choice using the Project GLOBE article or other Internet tools and compare those dimensions with traditional American cult

Describe the characteristics and actions of a work group

Using Tuckman's Five-Stage Model of Group Development, describe the characteristics and actions of a work group for your present or former organization throughout their deve



5/27/2017 5:13:30 AM

Expertsmind, Thank you in particular. I truly welcome your assistance. I am graduating this coming Friday, so I won't trouble you any more. :) Thank you for everything. I know I needed to pay for those case papers and tasks, however it was justified, despite all the trouble. With your help, I could take more classes at once and graduate sooner.

Write a Review

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd