Client
Elinext is an international custom software development company. We have multiple offices in several countries, and sometimes it’s not an easy task to keep track what’s going on in the co-working, conference, or relaxation room of your particular office at a certain time. We decided that it’d be nice to have a system that would enable booking conference rooms and other facilities as the one that has been used before was made using an outdated stack, and has rarely been in action.
This was an internal project, and our teams often worked on solutions that would simplify our everyday operations. Conference Room Management (we called it Meeting Room Management - MRM - to avoid a more frequent abbreviation) is a project made by our junior developers and crafted into one of the everyday use tools within the company.
Project Description
Conference room manager (aka Meeting Room Management aka MRM) is a tool for employees to find out what events could be taking place in Elinext conference rooms. It allows booking the room on a specific day and time.
With the help of the tool, one could change events, move them to another date, or cancel them. It also allows the addition of new rooms for events, as well as editing existing ones.
The old version of the software wasn’t used too often as it was made with the help of old technologies, had a limited set of functions, and was outdated.
Challenges
It wasn’t a top priority project as there was a similar software already functioning. However, the tool was outdated, so there were some challenges for this project to be realized:
- Create an updated version of Conference Room Management Software
- Ensure that the UI of the software is modernized and doesn’t scare users within the company
- Complete the project using the modern tech stack
- Train junior developers’ skills so they could be included in similar projects for our customers in the future.
Process
The users of the system are Elinext employees. The user base is as big as our company is. Our employees in all countries, where we have our offices, now can book a room in the office to hold an event.
This was realized by our engineers using the waterfall methodology within several months. The project wasn’t prioritized, so they were included in the project as they were vacated from external projects.
Solution
The solution uses the most common JavaScript FullCalendar and consists of several components: schedule grid, events, list of rooms, search, notifications, etc.
Schedule Grid that Includes Events
One of the main components of the application is a schedule grid with events for the selected offices/rooms. The user can select either a separate office room or all rooms in the selected office.
The grid displays all the events that are planned in the selected room or group of rooms. If a group of rooms is selected, then each individual event is highlighted in the color of the corresponding office. One could choose the color of the office in the admin panel.
There is a button ‘Today’ that allows you to select the current date. The current date is highlighted in blue (by default), and the selected date is highlighted in orange.
Events
Each event contains the time, name, and description of the event, the room where the event takes place, and the email of the event organizer. Clicking on any cell in the grid, later than the current date, allows you to create a new event, in which you select the title, date, time, description of the event, and room for the event, and choose guests who’ll participate in the event (via e-mail).
The function of creating the event in the past is disabled. However, it is possible to create any event, or set of events in the future, including recurring events. It is possible to set the frequency of the event - the user can select any day of the week and the end date of the event
It is also possible to set the frequency of the event – you can select any day of the week and the end date of the event (i.e. every week there will be events on selected days until the end date).
You can also delete and edit your created events, later than the current date, by clicking on them.
List of rooms
The room list shows us all existing event rooms in all company offices.
By default, all offices/rooms are selected. You can unselect any office or room so as not to show events for them in the schedule grid, or vice versa.
It is also possible to edit existing offices/rooms. You can change the name of them, change the color of events for offices, add or remove offices/rooms.
That is especially useful as our company expands, and more and more conference rooms are in action at our offices.
Calendar
The calendar allows you to select a date, which, when selected, will display events occurring during the day for the selected room.
The current date in the calendar is highlighted in blue, and the selected date is highlighted in orange.
The calendar is pretty standard and could be filtered by days, weeks, and months.
Notifications
When someone changes/deletes an existing event, adds a new one, creates a new office/room, or changes/deletes existing ones, notifications are sent about these actions, and we can track them, and send the notification to your email about the changed status of your event
Search
The users can search for events if they know the event’s title. As a result of the search, events that match the search criteria are displayed in the table.
Results
Meeting Room Management Software serves the purpose of booking conference rooms within the premises of the company. With the help of the tool, one could change events, move them to another date, or cancel them to manage the time and company’s conference room effectively.
The old version of the software wasn’t used too often as it looked ridiculously outdated in the modern setting. So the management of Elinext decided to dedicate the time and efforts of our developers to creating a version of Meeting Room Conference Software that would allow conference room booking via the user-friendly interface.
The new tool has gained popularity across all the territories our company operates in, and its code could be used for future projects, both internal and external.