C# application creates a minimal student enrolment system, DOT NET Programming

Assignment Help:

This assignment is about writing a C# application that creates a minimal student enrolment system. The application will display lists of papers and students. The user can enrol students into papers. The main focus of this assignment is on working with classes and objects. Additionally, you will need to use collections for storing and displaying objects. Please check out the attached marking rubric for additional guidance on what is required and on how many marks are available for the various parts of the task. Please use the Stream forum to seek clarification on this task if required.

Functionality required

The application you write for this assignment has to provide the following functionality:

- Papers: A paper has a name and a numeric credit value. All papers are displayed as a list. The credit value of a paper can be changed. The details of a paper (name and credit value) are displayed when the paper is selected.

- Students: A student has a name. A student can be enrolled in up to 5 papers. The details of a student (name, which papers enrolled in, total credit value of these papers) are displayed when the student is selected.

- Enrolling: The user enrols students in papers. A student can only be enrolled once in each paper. 

An Example

The screenshot shows you how this application could look and what kind of data it is supposed to deal with.

 

How to implement this application

You need to create two new classes for this application, one for students and one for papers. The lecture slides on Classes show you how to do this (check out slide 8 and the following slides that give you the code for the Balloon class example). You could implement the creation of objects for students and papers in various ways (e.g., reading the data from a file or asking our user to enter the data via the user interface). To keep things simple I suggest you enter the data for creating the objects directly into your code (see lecture slide 11 on ArrayLists as example of how objects are created: 'new Car (...)'). Use ArrayLists for both students and papers. ArrayLists are very suitable for this as they allow us to store objects, as we can link them to list boxes for display and selection of elements by the user (see again lecture slide 11 on ArrayLists for how to connect an ArrayList and a ListBox). To capture which papers a student is enrolled in, each student object needs to keep references to the relevant paper objects. Because these instructions give you a maximum number of papers per student you can use an array for this (lecture slide 12 on Arrays shows you how to make an array that will contain objects, in the example of type Person; be careful, there are two important differences to this example: first, the paper objects you add to your array will have already been created; second, the code to add the papers will not be located in your Form class but in your Student class). Make your application robust, as you cannot rely on the user behaving as intended by you. If you rely on using selected items from a list make sure such items are selected (see slide 5 on ListBoxes for an example). If you are expecting a number from the user make sure that the user has given you a number.

Other requirements

Please make sure your application fulfils the following requirements: - The use of proper object-oriented design, in particular you need to create classes for papers and students.

- Create a clear user interface layout and a well-structured interaction of the user with the program.

- Your program should not 'crash' (e.g., in response to unsuitable user input).

- You need to follow of C# style guidelines or as used in the program examples in lecture slides and sample programs (e.g., use suitable names for variables).

Suggestion

You can start working on the assignment as soon as you have studied the 'Classes' material. You can initially focus on just the classes Student and Paper and simplify, e.g., by saying that each student is enrolled in only one paper. This allows you to get started before studying ListBoxes, arrays and ArrayLists.

 


Related Discussions:- C# application creates a minimal student enrolment system

What is the relationship between a class and an object, What is the relatio...

What is the relationship between a class and an object? A class acts as a blue-print that explains the properties, states, and behaviors that are common to a number of objects.

I need to duplicate a website, Duplicate a Website I need a customer man...

Duplicate a Website I need a customer management site Please help me out and what I need to get. I need all charteristics of above mentioned site a) Effects b) Mobil

Explain class, What is a class? A class explains all the attributes of ...

What is a class? A class explains all the attributes of objects, as well as the methods that execute the behavior of member objects. It is a comprehensive data type, which show

Setup project with database, i am working on an project and my client needs...

i am working on an project and my client needs it in 2 days.project is ready but don''t know how to make setup project including local sql database(.mdf) included in setup..

I want c# routines for website back end, I want C# routines for website bac...

I want C# routines for website back end Project Description: We want some routines written in C# (.NET) to: * Parse some RESTful APIs to transform and push data to RabbitM

How to code reviews?, How will you do code reviews? The way in which th...

How will you do code reviews? The way in which the code reviews are done change from person to person and also from company to company. But generally when a project is started

What is a delegate, What is a delegate? A delegate is similar to a clas...

What is a delegate? A delegate is similar to a class that is used for storing the reference to a method and invoking that method at runtime, as needed. A delegate can hold the

Web-app developer for startup, Web-App Developer for Startup Project Des...

Web-App Developer for Startup Project Description: I am seeking someone who is good at building dynamic sites that will run on both desktops and tablets. The core of the w

Write Your Message!

Captcha
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