Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 19

Introduction

Convention and conference management is being very difficult due to lack of planning

and organizing. It involves various types of events and seminars. In this case study it is

advised to develop a system to manage conventions considering different types of

aspects. Through the system users will not be able create events and seminars for the

same room at same time slot and each room has limited capacity. Also through the

system users will be able to create, modify and remove their own programs. The

document outlines the class diagram, activity diagram, use case diagram, code

architecture, and system implementation in the following sections with proper

evaluation.

Task – 1: Candidate Class List & Diagram

1.1 Candidate Classes

No Class Name Purpose

1 Venue In order to store venue related information and different

methods to update, delete and add venue.

2 Location Location data will be stored in this class. As location has

its own object.

3 Stalls Stall related data and methods will be retrieved through


this class. This will help to find out booked and available

stalls.

4 Rooms Each room has its own attributes like capacity, room

numbers etc. Through the room class these attributes

will be stored.

5 Resources Each room and stall contains several technical

resources. So in order to retrieve the resources this

class will be created.

6 Events Events title, time and date, description will be added,

updated through the methods of this class.

7 Seminar Each seminar has its own attributes like title, date and

time, duration, etc. So manipulating seminar related

data this class is essential.

8 Attendees Through the system attendees will be able to create and

modify events or seminar. So in order to track each

attendee’s details this class will be created.

9 Presenter Presenter is one kind of attendee. But it has also own

attributes so this class is needed to track seminar

details.

10 Audience Audience is also one kind of attendee that has own

attributes.

11 Exhibitors In order to keep track the details of stalls that will ensure

which attendees are exhibiting the event.


1.2 Additional Classes

No Class Name Purpose

1 Program In this class program details will be stored. It will be an

abstract class.

2 User Role In order to provide the access level to users, user role

class will be created.

3 Booking Through the booking class booking related data will be

stored that will manipulate date and time, available time

slot, and attendees details.

4 Time Slot This class will be used to take times or each programs

for each day. Each day may have different time slot.

5 Ticket Type Ticket related information will be generated through this

class. Some may be for specific programs; some may

be for full day.

6 Admin Admin will be responsible for managing the system. So

admin related information will be stored at admin class.

1.3 Class Diagram

Through the class diagram of a system several aspects are identified such as state of

an object of the class, operation of objects, interaction of objects, and the behavioral

features (Gibbs, 2016). The class diagram of the proposed system is given in the

following.
Figure 1: Class Diagram
Task – 2: Activity Diagram

Figure 2: Activity Diagram


Task – 3: Use Case Diagram

Figure 3: Use Case Diagram


Task – 4: Code Architecture

Code architecture of a system defines the interaction of objects with each other. It

ensures that code is separated into a reasonable number of classes and reduces the

complexity of code. Good code architecture depends on several aspects. In this section

of the document, the code architecture of the proposed system is provided with proper

evaluation.

4.1 Entity Framework

The proposed system is developed using Entity framework where data access is

performed using model (Microsoft, 2017). The model of the system is made up of entity

classes that represent a session with the database in order to manipulate data. In order

to retrieve data from database language integrated query (LINQ) is used and to save

data database-specific operations like insert, update commands are used.

4.2 Inheritance

Basically inheritance is used to express the relationship between base class and

derived classes in object oriented programming. Derived classes are specialized

versions of the base class. Inheritance increases the reusability of code. Through

implementing the inheritance the sub class can access the method and properties of the

super class. Also the sub class can define its own methods if required (Wadje, 2017).
In order to handle the requirements of the proposed system inheritance is implemented.

For example - attendee’s class has four child classes. So attributes of the super class is

managed using access modifier and each of the sub classes objects are created in the

super class using keywords.

4.3 Polymorphism

Through the Inheritance we will be able to inherit attributes and methods from super

class. Polymorphism allows us to use those methods to perform different tasks in

different ways. It enables to override the methods of base class (Kanjilal, 2016).

In the proposed system an attendee may act as presenter, exhibitor, audience and

participants for different programs. So polymorphism is used in order to handle these

situations. For example - the super class Attendee that has a methods

getAttendeeDetail(). Subclasses of Attendee may be Presenter, Exhibitor, Audience and

Participant. Subclasses also have their own implementation of methods. So

polymorphism is used in the proposed system to handle this situation through overriding

the methods of super class.

4.4 Handling User Input

In order to handle the input of users for the proposed system different windows forms

control are used. Based on the user requirements combo box is used for selection,

textbox is used for insertion, date picker is used for date time input.
For handling an event and controlling authors, method overriding is used rather than

attaching a delegate to the event. In order to handle the data associated with an event,

arguments are passed to methods.

4.5 Handling Output

In order to display the result in the window forms of the proposed system, list view and

grid view is used. For retrieving the data from the database language integrated query

(LINQ) is used. After retrieving the data from tables, a collection of data (data set) and

data matrix is used to represents the results in list view and grid view. And also different

types of conversion methods are used to display the result in appropriate formats.
Task – 5: System Implementation

Systems implementation is the process that determines how a system should be

designed and ensures the system is operational that can meet quality standards. In this

section of the document system implementation of the proposed solution is provided

with code and design screenshot.

Figure 4: Login Form


Figure 5: Login Form Code

Figure 6: Registration Form


Figure 7: Registration Code

Figure 8: Booking Form


Figure 9: Booking Code
Figure 10: Attendees Info

Figure 11: Room Details Form


Figure 12: Room Insertion Code

Figure 13: Room Update Script


Figure 14: Seminar Create Form

Figure 15: Insertion Script


Figure 16: Stall Create Form

Figure 17: Insertion Script


Conclusion

In order to develop the proposed solution successfully it was required to understand the

requirements of the system properly. For implementing and designing the system

properly several diagrams such as class diagram, activity diagram and use case

diagram are done. During the development of the solution several problems were faced

and learned how to overcome problems. These experiences will help to work

professionally in future.
References

Gibbs, M. (2016, January 10). What is Class Diagram. Retrieved January 3, 2019, from
https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-class-diagram/

Kanjilal, J. (2016, January 20). How to implement polymorphism in C#. Retrieved January 15, 2019, from
https://www.infoworld.com/article/3024718/application-development/how-to-implement-
polymorphism-in-c.html

Microsoft. (2017). Entity Framework Documentation. Retrieved January 10, 2019, from
https://docs.microsoft.com/en-us/ef/

Wadje, V. (2017, November 17). C# Corner. Retrieved January 16, 2019, from https://www.c-
sharpcorner.com/UploadFile/0c1bb2/types-of-inheritance-in-C-Sharp/

You might also like