CASE STUDY

Dental Health

The leading online platform for dental and orthodontic practitioners

Solution

Development solutions for X-Ray analyses, image archiving and patient record management

Industry

HealthTech Industry

YEAR

2017

Digital Transformation Communication Framework

Computools
Project Manager
CTO
Developers
CLIENT
Communication

The organization and creation of a communicative ecosystem greatly simplify the process of developing any application, executing client tasks. It also increases the productivity of collaboration in several times. In order to effectively accomplish the tasks assigned by the client, the Computools Project Manager tried to create a comfortable communication ecosystem that would facilitate quick decision-making and control over the execution of tasks. Email and Skype were used to communicate with the client, internal communication was built at work in Skype.

Business Process Mapping

Described

The client’s team lead already had an offer for Business Processes of the project. After a short discussion and brainstorming it was enhanced by solutions offered by the Computools engineers. The client’s project coordinator provided our team will all the necessary data and documentation.

Modeled

For achieving their goals Dental Health had requested Java developers for outstaff development. After examining Business Process, Computools offered to enhance the team with two more members.

Planned

Our team of engineers has developed a road map for the development process that includes: support of the current solution, improvement of the visual component, improvement of the interface including complex elements of work with images, attempts to stabilize the system.

Digital Platform & Technology

The technology stack was offered by the client, however, we’ve also participated in the discussion.

Computools
Project Manager
CTO
Developers
CLIENT
Project Coordinator
Communication
JPA

JPA (Java Persistence Annotation) is Java's standard solution to bridge the gap between object-oriented domain models and relational database systems. The idea is to map Java classes to relational tables and properties of those classes to the rows in the table. This changes the semantics of overall experience of Java coding by seamlessly collaborating two different technology within the same programming paradigm.

Servlets

A servlet is a Java programming language class that is used to extend the capabilities of servers that host applications accessed by means of a request-response programming model. Although servlets can respond to any type of request, they are commonly used to extend the applications hosted by web servers.

jQuery

jQuery is a lightweight JavaScript library. jQuery takes a lot of common tasks that require many lines of JavaScript code to accomplish, and wraps them into methods that you can call with a single line of code. jQuery also simplifies a lot of the complicated things from JavaScript, like AJAX calls and DOM manipulation.

Canvas

Canvas is part of the specification for web pages. It gives a way to make space on a web page, and a set of operations for drawing on it. The canvas as an HTML5 element allows for dynamic, scriptable rendering of 2D shapes and bitmap images. It is a low level, procedural model that updates a bitmap and does not have a built-in scene graph

System architecture

Specification

In order to finish the project and complete the client’s tasks on time, our engineers have developed a specification based on tasks setted by the client. Thanks to close collaboration with the client’s Project Coordinator we had a good opportunity to pay close attention to all important functional and non-functional requirements.

Create a web application according to all client’s demands. Steps of the Development Process: 1. Implementation of changes to the application interface according to the client’s tasks. 2. Adding checkboxes for each doctor. 3. Solving problems with language packs. 4. Solving problems with a data analysis system in various languages. 5. Creating an analytical report export page 6. Debugging the function of unloading the analytical report for each patient. Maintaining 1. Maintaining of the application. 2. Quick debugging.

COMPUTOOLS TEAM

To reach the client’s goals and complete the task on time the Computools formed a strong team of Java developers and experts in other technologies required for this project. Thorough selection of project participants allowed to perform all the tasks at a high-level quality and on time.

BACKSTAGE

A productive collaboration between the project participants is a key to success in any difficult situation. A well-organized communication system allows to solve various almost immediately. Each type of meetings, face-to-face brainstorming, video or audio-conferences, helps to achieve the main goal of the project.

Whiteboard Meeting
After finishing a large part of the work we conduct team discussions and arrange feedback sessions. Thanks to exchanging opinions and emerging ideas, our developers find truly innovative solutions, improving their personal efficiency and the efficiency of the entire team.
Team Brainstorming
The brainstorming sessions help our engineers to find a really innovative solution. They stimulate creative activity and each participant has an opportunity to offer as many options as possible, including the most fantastic ones. It helps to hit the necessary ideas and solutions.
Dev Meeting
Well-coordinated collaboration at all stages of the coding and testing process increases the pace of the development. This works especially well when our software engineers cooperate closely with their client counterparts.

Internal Communication Flow

The main goal of the Computools is to finish the project on time and meet all intermediate deadlines with completed tasks and solved issues. To provide quick decision making and solving any difficulties during work on the project developers used Skype. All the necessary information and transitional data were stored and shared through Google Drive. Project Manager used Jira to set tasks to team members and to monitor assignments.

Project Management Methodology

For this project, Kanban was chosen as a proper methodology. Kanban is a method for managing the creation of products with an emphasis on continual delivery while not overburdening the development team. Kanban is based on 3 main principles: visualize workflow, limit the amount of work in progress, enhance flow (when something is finished, the next highest thing from the backlog is pulled into play). Kanban promotes continuous collaboration and encourages active, ongoing learning and improving by defining the best possible team workflow.

PROJECT TIMELINE

1 week
2 weeks
24 months
1
Background
Defining Scope
  • Gathering all the necessary data
  • Working on a prototype scheme
2
Strategy
Planning
  • Developing a strategy
  • Delegating tasks
Teamwork
  • Brainstorming
  • Building a prototype
Tests
  • First series of tests
3
Implementation
Debugging
  • Solving problems with language packs.
  • Solving problems with a data analysis system in various languages.
Maintaining
  • Maintaining of the app

CODE DEVELOPMENT

The code development process is fully controlled by the client. Our team of developers execute the tasks on the client's sheet and fill in the client's QA server. Then QA test the completed tasks, we fix it if necessary and fill in the prod.

CODE SAMPLE

Scan QR code to find code sample

Or use link below

https://github.com/computools/java-spring-sample

Implementation On Client’s Side

01 Launch

The launch of the application is preceded by thorough preparation by the client. Marketing research, surveys and customer opinions were collected before making the final fixes to the application.

02 Transfer

The development of the application was carried out in real time, so only the latest version of the developed application was transferred to the company's main servers.

03 Education

The development of the application was carried out according to a clear plan and tasks determined by the client in advance. Employee training and writing instructions and user guides were not required. However, the client may contact us for further clarification.

Outcome

Work on this project is following the tasks and needs of the client. In the process, additional options were identified, functionality and design were improved, and a number of problems with language packs were solved. Productive work on the application continues as our engineers maintain it.

1 application
Number of Application Released
0%
Exceeding Budget
0 days
Exceeding Deadlines
24+ month
Overall Outstafing Time
5 weeks
Average First Version Delivery Time
40%
Increase the number of clients

CONTACT US

Let's talk about your project.
Use the form to drop us an e-mail.

Thank you for your message! Your request will be carefully researched by our experts. We will get in touch with you within one business day.