ic_banknote_smile_128ic_business_128ic_checkmark_128ic_client_team_manager_128ic_code_file_128ic_code_files_128ic_corporate_cloud_platforms_128ic_crossplatform_apps_128ic_developer_128ic_development_team_128ic_enterprise_128ic_faster_timeframe_128ic_graph_down_128ic_information_finder_128ic_junior_developer_128ic_managed_team_128ic_message_128ic_mobile_app_startups_128ic_mobile_development_128ic_mobile_development_up_128ic_mobile_devices_128ic_multiplatform_128ic_multiplatform_white_128ic_pricetag_128ic_project_checklist_128ic_project_management_128ic_project_management_team_128ic_research_and_development_team_128ic_scalable_team_128ic_senior_developer_128ic_smaller_codebase_128ic_smaller_price_128ic_startup_128ic_team_manager_128ic_three_times_faster_128K&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxArrow_Dropdownic_001_google+_16ic_002_xing_16Group 2ic_003_facebook_16ic_004_linkedIn_16Groupic_005_message_16ic_006_upload_16ic_007_remove_16ic_008_email_16ic_009_attachment_16ic_010_file_16ic_011_name_16ic_012_arrow_left_16ic_013_arrow_right_16ic_014_arrow_down_16ic_015_arrow_up_16ic_016_dropdown_arrow_down_16ic_016_dropdown_arrow_leftic_016_dropdown_arrow_rightic_017_K&C_dropdown_arrow_up_16ic_018_language_16ic_019_Quote_16ic_020_+_16ic_021_=_16ic_022_phone_16ic_023_twitter_16ic_024_position_16ic_025_company_16ic_026_search_16ic_027_mobile_16ic_028_fax_16ic_029_location_16ic_030_enlarge_16ic_031_downscale_16ic_032_contactic_download_normal_16pxic_033_skype_16ic_006_download_16 copyic_Interest_based_64ic_acrivate_card_64ic_api_client_64ic_application_architecture_64ic_application_architecture_ white_64ic_application_development_user_64ic_arrow_down_64ic_automated_backups_64ic_automated_infrastructure_provisioning_64ic_automated_infrastructure_provisioning_white_64ic_automated_storage_64ic_automated_storage_64ic_automation_64ic_avaliability_across_the_world_64ic_avaliability_across_the_world_white_64ic_brackets_64ic_brackets_64ic_build_64ic_build_64ic_business_64ic_business_partnership_64ic_business_partnership_white_64ic_business_64ic_calculator_64ic_calendar_64ic_car_rent_64ic_card_renewal_64ic_chat_64ic_chat_bubbles_64ic_chat_bubbles_64ic_chat_white_64ic_checklist_64ic_checkmark_64ic_checkmark_white_64ic_clock_64ic_clock_white_64ic_cloud_media_64ic_cluster_64ic_cluster_white_64ic_code_base_optimization_64ic_coding_64ic_coding_white_64ic_commenting_widget_64ic_commenting_widget_64ic_containers_64ic_containers_white_64ic_continious_64ic_continious_delivery_64ic_continious_delivery_white_64ic_continious_release_64ic_continious_release_white_64ic_continious_white_64ic_cost_saving_64ic_cost_saving_white_64ic_cpu_load_64ic_credit_card_64ic_crossplatform_app_development_64ic_crossplatform_app_development_white_64ic_custom_crm_64ic_custom_crm_64ic_independence_consulring_64ic_database_calls_64ic_database_calls_white_64ic_dedicated_teams_64ic_dedicated_teams_64ic_desktop_application_user_64ic_desktop_application_user_64ic_desktop_code_64ic_desktop_code_white_64ic_developer_64ic_developer_white_64ic_development_64ic_devops_64ic_documents_64ic_documents_graph_64ic_documents_graph_white_64ic_documents_white_64ic_download_presentation_64ic_education_64ic_email_open_64ic_email_open_white_64ic_environment_healthcheckic_euro_64ic_euro_white_64ic_failure_solved_64ic_globe_outlines_64ic_good_quality_64ic_high_load_websites_64ic_high_load_websites_white_64ic_hotel_booking_64ic_inability_64ic_inability_white_64ic_increase_64ic_increasing_team_64ic_independence_64ic_integration_64ic_it_outsourcing_64ic_it_outsourcing_64ic_knowledge_sharing_64ic_mobile_devices_64ic_laptop_user_64ic_laptop_user_64ic_launch_64ic_launch_white_64ic_learning_64ic_learning_two_white_64ic_lighthouse_64ic_link_64ic_load_balancer_64ic_load_balancer_64ic_load_card_64ic_lock_64ic_lock_white_64ic_low_cost_64ic_low_load_websites_64ic_maintenance_tools_64ic_maintenance_tools_white_64ic_media_player_64ic_messaging_platforms_64ic_microservice_architecture_64ic_microservices_64ic_microservices_64ic_mobile_app_64ic_mobile_content_64ic_mobile_development_64ic_mobile_development_white_64ic_mobile_devices_64ic_mobile_devices_white_64ic_mobile_payments_64ic_mobile_social_media_applications_64ic_mobile_workflows_64ic_money_transfers_64ic_multimedia_sharing_64ic_multimedia_sharing_white_64ic_my_garage_64ic_no_access_64ic_no_access_white_64ic_no_oldschool_64ic_online_marketplaces_64ic_online_trading_64ic_pair_device_64ic_parallels_64ic_parallels_white_64ic_passcode_64ic_performance_64ic_performance_issues_64ic_performance_issues_white_64ic_performance_white_64ic_plane_64ic_plane_white_64ic_plus_64ic_pricetags_64ic_product_64ic_product_search_64ic_product_white_64ic_productivity_tools_64ic_productivity_tools_64ic_project_delivery_64ic_project_delivery_white_64ic_project_management_64ic_project_management_collaboration_64ic_project_management_team_64ic_project_risks_reduced_64ic_quality_mark_64ic_quality_mark_white_64ic_question_64ic_react_native_64ic_response_time_64ic_response_time_white_64ic_rest_api_64ic_retail_64ic_transparency_consulting_64ic_scale_up_64ic_scale_up_white_64ic_self_healing_64ic_self_healing_64 copyic_send_money_64ic_server_64ic_server_white_64ic_shopping_64ic_sleep_mode_64ic_small_is_beautiful_64ic_smaller_price_64ic_social_benefits_64ic_social_connections_64ic_socket_64ic_spare_parts_for_cars_64ic_spare_parts_for_cars_white_64ic_speedometer_64ic_performance_consulting_64ic_speedometer_white_64ic_startup_64ic_target_64ic_team_64ic_testing_64ic_testing_checklist_64ic_testing_checklist_64ic_testing_white_64ic_three_times_faster_64ic_touch_64ic_touch_id_64ic_touch_white_64ic_transparency_64ic_ui_design_desktop_64ic_ui_design_mobile_64ic_ui_design_mobile_white_64ic_umbrella_64ic_umbrella_white_64ic_up_and_down_scaling_64ic_up_and_down_scaling_64ic_users_64ic_users_white_64ic_ux_design_64ic_ux_design_desktop_64ic_ux_design_white_64ic_vehicle_64ic_web_based_search_64ic_web_based_search_white_64ic_web_browser_code_64ic_web_browser_developer_mode_64ic_web_browser_user_64ic_web_development_64ic_web_development_white_64ic_web_portals_64ic_web_portals_64ic_web_user_64ic_web_user_white64ic_workflow_64ic_workflow_steps_64ic_workflow_steps_white_64ic_workflow_white_64ic_working_environment_64

Referenz: Betreiber von Diagnoseplattformen, Anbieter von „Radiologie as a Service“

Micro-Service-Architektur für neue Anwendung auf AngularJS realisiert

Einleitung

Unser Kunde ist ein innovatives Unternehmen mit Sitz in Berlin, das sich auf Radiologietechnologien für den stationären und ambulanten Sektor spezialisiert hat.

Unser Kunde wächst rasant und agiert bereits in mehreren Großstädten Deutschlands. In Zukunft plant das Unternehmen, neue Büros in verschiedenen Ländern Europas und weltweit zu eröffnen. Ein Teil seines Angebots ist eine Webanwendung für das Operations-Management des administrativen und medizinischen Personals sowie für das Handling von Kundeninteraktionen.

Projektumfang

Die fortlaufende Beschleunigung des Geschäfts zwang den Kunden, Erweiterungen der Anwendung zu realisieren. Sie wies einige ernsthafte Mängel auf, war nicht stabil und konnte die steigenden Bedürfnisse sowie neue technische Anforderungen nicht erfüllen. Daher war die Anwendung nicht skalierbar und aufgrund der Tatsache, dass sie von einem Dritten entwickelt worden war, konnte die Funktionalität nicht einfach erweitert werden.

Das Unternehmen stand vor einigen ernst zu nehmenden Herausforderungen, darunter:
Eine wachsende Zahl von Performance-Problemen, die nicht behoben werden konnten
Unfähigkeit, die Funktionalität des Systems zu erweitern
Kein Zugriff auf die einzelnen Bestandteile der Anwendung
In dieser Situation suchte das Unternehmen einen geeigneten Softwareentwicklungspartner, um das Projekt weiterhin zu unterstützen und eine völlig neue Web-Lösung zu entwickeln.

Projektziele

Für das Projekt wurden folgende Vorgaben und Ziele festgelegt:

100% scalable application
available 24/7 anywhere in the world
with a fresh and intuitive UI
built on easily customizable business rules based on BPM technology

Warum K&C?

K&C wurde zur ersten Diskussion hinsichtlich der Architektur eingeladen, da wir über tief greifende Technologiekompetenz (Java, Spring Boot, Axon Framework, Kafka, Consul) verfügten und eine äußerst wettbewerbsfähige Preisgestaltung vorgelegt haben. K&C war auch aufgrund der umfangreichen Erfahrung im Umgang mit vert.x- und BPM-Technologien, welche beide zu den Kundenanforderungen passten, der geeignete Partner.

K&C wurde ausgewählt, um das Projekt voranzubringen und sowohl Beratungs- als auch Entwicklungsdienstleistungen zur Verfügung zu stellen.

Lösung

Neue Anwendungs-Features

Als Ergebnis einer intensiven Analyse der Kundenbedürfnisse und der technischen Anforderungen wurde die Entscheidung getroffen, eine neue Anwendung mit folgenden Merkmalen aufzubauen:
Micro-Services-Architektur
REST API, die von jedem Client verwertet werden kann
Konfigurierbare Business-Rules
Einfacher Client für REST API

Front-End-Lösung

K&C arbeitet an der vollständigen Erneuerung der Benutzeroberfläche, gestaltet sie intuitiver und zugänglicher und übernimmt den Aufbau neuer wichtiger Features wie Terminvermittlung, Auftragsmanagement etc.

Um Hochleistungsstandards für das Projekt zu erreichen, wurde eine komplexe Front-End-Architektur entwickelt. Sie kombiniert die Einfachheit der Angular-Entwicklung mit AMD-Funktionalität und hat dazu beigetragen, extrem hohe Rendering-Geschwindigkeiten und eine hervorragende Implementierungszeit mit minimalem Einsatz von Ressourcen zu erzielen.

Die neue Anwendung unterstützt alle globalen Architekturziele vollständig, folgt der gleichen Bounded-Context-Trennung und erfüllt weitere Anforderungen. Dies ermöglicht eine solide parallele Entwicklung von spezifischen Features.

Erfolge der Lösung:

Hervorragende Performance, welche durch die vollständige Inbetriebnahme des AMD-Pattern erreicht wird
Geeignete Codierungsstandards, Nutzung des ES2015-Sprachlevels
Hohe Auslieferungs-Performance und Qualität

FE-Lösungs-Technologie-Stack:

Angular JS
SystemJS
JSPM
Jasmine

Back-End-Lösung

Die neue Applikation wird als eine Suite von kleinen und unabhängigen Diensten entwickelt, bei denen jeder Service eine Reihe von spezifischen Funktionen erfüllt und unabhängig von den anderen mit eigener JVM betrieben wird. Sie wird eine Reihe verschiedener Plattformen und Geräte unterstützen. Gleichzeitig besteht keine langfristige Bindung hinsichtlich eines bestimmten Technologie-Stacks.

Das Konzept der Micro-Services-Architektur für die neue Web-Anwendung wurde aus einer Reihe von Gründen angenommen:

  • Höhere Skalierbarkeit, welche eine Organisation des Entwicklungsprozesses um mehrere unabhängige Teams herum ermöglichts

  • Unabhängiges Deployment der einzelnen Dienste, was die Bereitstellung neuer Versionen vereinfacht

  • Die IDE ist schneller und steigert die Produktivität der Entwickler

  • Isolierte Bestandteile erhöhen die Sicherheit

  • Keine langfristige Festlegung auf eine einzelne Technologie
.

Infrastruktur-Lösung

Um einer hohen Skalierbarkeit der gewählten Anwendungs-Architektur gerecht zu werden, entwickelt K&C eine entsprechend skalierbare Architektur für die Infrastruktur, die sich auf das Konzept von Containern konzentriert.

Die Hauptziele, welche mit Technologien wie Docker und Kubernetes erreicht werden sollen, sind:
DevOps-Ansatz für das Anwendungs-Deployment
optimale Nutzung der zugrunde liegenden Rechenressourcen
automatisierte Replikation von Infrastrukturdiensten

Ergebnisse

Die Microservices-Architektur wurde als die Lösung identifiziert, die die Kundenanforderungen am besten erfüllt. Sie bietet eine Anwendung mit guter Integrationsumgebung und Deployment-Infrastruktur, die einfach zu betreiben und zu verstehen ist.

Als Ergebnis des Projekts wird unser Kunde eine eigene Applikation erhalten, die von seinen In-House-Entwicklern unterstützt und erweitert wird. Das Unternehmen plant, diese Lösung in allen Büros und in allen Ländern, in denen es vertreten ist, umzusetzen.

Sprechen Sie uns an

Wir bieten Weblösungen, die Ihr Unternehmen voranbringen und für die Zukunft fit machen. Nehmen Sie noch heute mit uns Kontakt auf und lassen Sie uns sprechen.

Bis zu 3000 Zeichen
Datei anhängen (bis zu 3 MB)
Oops! Something went wrong, please try again later

Erfahren Sie mehr über unsere Dienstleistungen und Projekte.

mehr