logoKor
First-ever educational platform for drivers in Norway
apple buttongoogle button
logoKor
phone
Industry:
EDTech
App:
Cross-Platform
Location:
Norway
How the story started
For some time, market of driving schools in Norway has been facing major challenges. Its old-fashioned approaches have led to the lack of transparency. Potential students simply have no idea how much time and money they must spend to obtain a driving license. Most schools use it to sell expensive programs with more lessons than needed. Management of driving schools is costly with several administrators working simultaneously. Instructors don't spend their time efficiently wasting it on endless administrative work. Besides, no one tracks students' progress with driving. Understanding the challenges, Kör Teknologi AS decided to create a transparent, easy-to-use environment for obtaining driving license and practicing driving – first-ever educational platform Kör. In a nutshell, Kör is the first digital school for drivers. The platform lets users book driving programs & lessons online, keeps track of their progress, and allows family & friends to be involved in the process. So, when Kör Teknologi AS decided to build their first educational platform for Norwegian drivers, they trusted us with the product’s development. Their main goal was to create MVP (Minimum Viable Product), then go to users with the real app and test it. To define product’s business goals & vision, Fulcrum started with the Discovery service.
Discovery stage
Workshop
Kör Teknologi AS has made some primary research on their side: they held interviews with the potential stakeholders – instructors, students and their families. To take these data into work and finalize client's business objectives, define product's functionality and scope of work, we hold a workshop with Kör team. During our 3-day workshop, we formulated client’s business & project goals, stakeholder groups, app's user types, risks (general, tech, and management risks) and actual roadmap of the project.
phone
Workshop deliverables
  • Finalized product & project goals;
  • Detailed stakeholders description;
  • Established outline of strategic partners;
  • Defined user types;
  • Estimated risks of the project (general, project management, tech & security);
  • Outlined flows for all user types;
  • Approximate app’s functionality;
  • Delivery roadmap for 2 next milestones.
Main student flow
At the end of our workshop, we developed userflow diagrams for each user type. That's how Kor's main stundent flow looks like:
Student chooses lesson type
arrow
Sees available dates and time slots for this lesson type
arrow
Chooses date and time slot
arrow
Chooses pick up location
arrow
arrow
Lesson with 1 student
arrow
Sees available offices (pick up location)
arrow
Chooses an office
arrow
Pays for the lesson
arrow
Lesson is booked
arrow
Lesson is added to Plan: future lessons (booked)
arrow
Does student have a program?
arrow
Updates the program
Roadmap
Based on the deliverables of the workshop we had, client`s business needs and agreed timeline, we developed project`s approximate roadmap. Take a look at part of Kör’s roadmap:
phone
22232425262728293031123456789101112131415161718192021222324252627282930123456789101112131415161718192021222324252627
Payment
Payment page
Deposit
Other lessons
Booked lessons
Book a lesson
Cancel a lesson
Payment account (profile)
Book a program
Profile
Remaining lesson
Past lesson
Notifications
Rating of the teacher
Share the lesson details
Main page
Change logo
Analytics
Invite friends
Prepare to upload
Bug fixing
Architecture
At pre-development stage, we had to define product's architecture. We had two main options to choose from: Monolith or Microservices. After comparing these two architectures, their pros and cons, we settled with Monolith. Why?
App’s data flow and service exchange were not 100% defined. In this case, Monolith apps allow you to set your deployment once and then simply adjust it afterwards based on ongoing changes.
KOR’s development team was quite small. For Monolith, deployment and setting up CI/CD is much easier than in Microservices.
App’s load wasn’t that big. Since it was our first iteration and we didn’t expect a great amount of users, the app’s load wasn’t high. For non-high loads, Monolith is a perfect solution.
Monolith development and maintenance costs are much lower and the processes are easier.
Monolithic Architecture
monolithic
vs
Microservice Architecture
microservice
Prototyping & Design
After we outlined approximate functionality and flows, our team started to work on prototyping and design of the app. We designed app’s first screens, app’s wireframes, clickable prototypes.
phone
Create your profile
phone
First experience
phone
Pay for the programm or lesson
phone
Detailed result of your lesson
phone
Check your results on dashboard
phone
Choose comfortable timeslot
phone
Create your profile
phone
Choose comfortable timeslot
phone
First experience
phone
Check your results on dashboard
phone
Pay for the programm or lesson
phone
Detailed result of your lesson
Typography
This sans-serif typeface is the system font for iOS, macOS, and tvOS, and includes a rounded variant. It provides a consistent, legible, and friendly typographic voice.
fonts
Сolors
    • Bermuda
    • 68DEA6
    • Mirage
    • 17212A
    • Hoki
    • 64829D
    • Black Squeeze
    • F3F7FB
screen
Kör's User Journey

Step 1

Registering profile

Secure and quick authorization via mobile phone. Each user has a personal profile with all personal information outlined.

step

Step 2

Booking assessment lesson or starting private practice

Depending on the goals:

  • Users proceed to professional training by booking the first assessment lesson with an instructor.

  • Students are able to practise driving privately by clicking ‘Drive’ button. They can train driving skills without enrolling on any driving program. All ride details are saved in the app.

step

Step 3

Adding emergency contacts and companions

Users can invite companions to Kör. They can track friend's progress and see feedback from the driving instructor. An emergency contact is useful for admins if something should happen during a driving lesson.

step

Step 4

Receiving a student program best-tailored for user's needs

  • After the assessment, the instructor will suggest a driving program best tailored to student's needs and skills.

  • Users can have a discount by paying a full cost of the program, or confirm their participation and pay for each lesson separately.

  • Students can track all lessons of the program in ‘Plan’ and their progress on the main page.

step

Step 5

Booking next lesson

  • Users schedule the next lesson at any convenient time and date.

  • Students select their pickup location by setting the map pin, or enter an address. They may also save up to three favorite locations by pressing the heart symbol.

  • After the booking is done, users can see all details of the upcoming lesson: its time, date, location, instructor etc.

step
Technologies stack
Kör's technology stack is divided into 3 main groups: backend architecture, tech stack for admin & partner apps, and technologies used for student & instructor mobile apps.
Backend Architecture
 
tech
Node.JS
tech
Nest
tech
Redis
tech
MongoDB
tech
SocketIO
tech
Firebase
tech
Nets Easy
Student & instructor apps:
 
tech
React Native
tech
Redux
tech
Redux-Saga
tech
TypeScript
Admin & partner apps:
 
tech
JavaScript
tech
Redux
tech
Redux-Saga
tech
React
Admin Security
The admin security of the app is supported by the protection from xcrf, xss attacks. What’s more, HTTP only tokens are kept in cookies to secure the app’s performance even more.
gif
Setting up CI/CD
App’s continuous integration and delivery are performed through GitLab CI pipelines. It enables to detect errors if there are any as soon as possible and provide smoother integration.
gif
3-rd party integration
What concerns 3-rd party services, the app is integrated with Nets Easy payment system which enables students and partners to pay for the lessons/programs inside the app. Pushwoosh platform is also integrated with the app for independent push notifications.
gif
SCRUM approach
For our project management, we use SCRUM approach which is based on developing product stage-by-stage to have the results in place now and there. That’s why we’re developing products by 2-week sprints. At the end of each sprint, we present a demo, then we give a demo and builds to the client for checking. Then, the new sprint begins.
gif
Features

Progress tracking

Users can track their progress, lessons they have completed & the number of upcoming lessons. There’s also an opportunity to see the instructor’s feedback and assessment.

Setting up own calendar

Instructors and students can see previous & upcoming lessons, read detailed info about the driving program and shift their own availability.

View trip
report

Users can add/edit information, add a text note to the trip, see weather conditions, time & date of the trip, track the skills they’re good at and what still needs to be improved.

Lesson types

The app offers around 20 various services and lesson types for students who are learning to drive.

In-app payment system

The app offers elaborated payment system available both for students and their families to pay for the driving program/lesson.

Location
tracking

App has smooth integration with geolocation services (Google Map API, Google Places API, Google Geocoding API).

Taking a companion friend for a ride

Users can add a friend, partner or a family member as a companion, and let them see student’s progress and feedback from the driving instructor.

Lesson selection algorythm

Kör offers range of time slots to choose from, so that students can schedule the lesson with the most convenient time, date and location. The app will automatically assign available instructor to the student.

Client review
Internal stakeholders and users alike are impressed with Fulcrum’s deliverables, citing their efficiency and noteworthy quality. Throughout the project, the team has been professional, collaborative, and dedicated, ensuring a smooth and successful engagement.
Øyvind Holm-Johnsen
CEO, Kör Teknologi AS
Results
So far, the app is in its beta testing phase. Being released on App Store & Google Play, it’s going to be tested by real users, receive their most critical feedback and proceed with further improvements & development.
apple buttongoogle button
results

KICK-START YOUR PROJECT

Learn what it takes to create your perfect product.
Speak to us