Agiliway https://agiliway.com Mon, 02 Dec 2019 08:55:40 +0000 en hourly 1 Connectivity Mobile Application: iOS App For New Car Owners https://agiliway.com/connectivity-mobile-application-ios-app-for-new-car-owners/ Fri, 29 Nov 2019 12:29:29 +0000 https://agiliway.com/?p=4270 Read more »]]>  

Mobile development and connectivity have gained such wide popularity in the modern world due to the rising influence of mobile connection and communication services as a technology of information collection and overall distribution.

Consequently, mobile application services are seen as a real-life enterprising strategy, a connection of which to a range of relevant back-end platforms and alike, allows developing highly scalable and feasible iOS apps. The application discussed below is one of the brightest examples of the case.

SMART APP TO TAKE OVERALL CONTROL OF YOUR CAR

A global full-service agency and automotive company started their cooperation on a coherent and clearly defined platform a few years ago, and, since then, have made a great difference to the everchanging world environments. Their core mission has been to make their automobile applications widely-used by both the car owners as well as the cars prospective buyers. 

To that end, they have developed two apps, accordingly. In order to stick to the agency-automotive company key performance stages (sketch, test, learn, redo), they practice grouping multifunctional teams to make every stage maximally effective and feasible in further project upgrading, promotion and release processes; to ensure the app is running without a glitch.

Car manufacturer’s project can boast about scalable connectivity of the relevant data with the car itself. A mobile app for car owners provides every owner with all the possible range of information concerning the very car service, statistics details (through relevant excel tables), roadmap visualization, etc.

What is more, a Timeline, Push messages and Driving journal features have been created to keep track of the car’s latest events along with multiple filters and modes a car owner would like either to add or correct. The application’s connectivity is also about distance covered, fuel consumption, the nearest gas station location, etc.

The other application reveals another side to mobile development and connectivity issue by presenting a prospective buyer with a possibility to ‘construct’ a car of their dream. A ‘car building’ or ‘configuration’ service allows choosing your car interior and exterior details on the site as well as contacting your car dealer directly. This mobile application is called to lead the customer all the way to a final automobile purchase making.

VALUE DELIVERED

We started testing the apps mentioned almost a year ago. Our team has been handling a project testing stage to discover and eliminate all the possible app bugs to ensure the mobile applications run smoothly. The testing provided has been a manual one with an automatization process in a close perspective.

Also, we used to combine both real devices and simulators as mobile testing practices to ensure that the mobile applications under discussion perform well on different iOS versions (from 5XS to the latest one). Black-box testing is the one we used throughout the applications testing process. Functional, non-functional and regression testing modes were applied to reach the most accurate outcomes possible.  

The applications discussed are true examples, which vividly demonstrate the scope of mobile development and connectivity issues in modern environments. The service provided to car users with the given iOS applications is highly feasible and scalable as well as of good use for both the auto owners and prospective customers.  

]]>
Bringing Chaos to Order with CiviMobile 4.2 new functionality https://agiliway.com/bringing-chaos-to-order-with-civimobile-4-2-new-functionality/ Tue, 19 Nov 2019 11:26:07 +0000 https://agiliway.com/?p=4190 Read more »]]> This week we welcome new release of CiviMobile that arrives with few tricks aimed at raking through the growing data, dealing with inconsistencies and scaling up the application. 

CiviMobile has long as opened the possibility for nonprofit organizations to keep growing its network of contacts when working outside the office. Time has come to make use of our new CiviMobile functionality and get things organized by creating Groups and assigning Tags. 

Whatever the niche of social impact the nonprofit organization chooses – political or lobbying activities, assisting poor communities, protecting the wildlife or contributing to the development of young people – it heavily relies on fundraisers, donors, volunteers, subcontractors, members, employees to function and achieve social impact. As the organization evolves, the number of its constituents goes up, making it quite challenging to keep track and manage the contacts.  

By creating groups and applying tags CiviMobile users can: 

  • group contacts according to their affiliation or other organization’s segmentation needs; 
  • easily identify contacts as pertaining to certain groups; 
  • set up access rights, send emails or invitations to groups; 
  • view the list of the contact current and past groups; 
  • view the smart groups where the contact is automatically added based on certain criteria; 
  • add tags to specific types of contacts based on their common characteristics; 
  • search for contacts using tags 

Groups are created and tags distributed according to specific segmentation needs. For example, when organization’s constituents are grouped in your contact list by their roles (fundraisers, donors, volunteers, subcontractors, etc.) you could use tags to identify their interests, location or event where you met, etc. This way Groups and Tags functionality ensures contacts do not get disorganized, while the database searching gets more user-friendly. 

New release also marked an advance with a custom fields functionality and an app localization project.  As a result, CiviMobile now supports date and currency type custom fields in addition to previously configured data types. This helps to format the data appropriately and display all the required information.   

What’s more, CiviMobile 4.2 app offers a picklist of 8 languages to bridge the linguistic divide between the app and CiviCRM users who realize the benefits of having access to CiviCRM data when doing both office and field work. The app is now available for English, German, French, Italian, Dutch, Hungarian, Ukrainian and Polish speakers. 

Stay with us and follow Agiliway progress with CiviMobile functionality. For detailed information visit civimobile.org and learn more about CiviMobile features, installation process and latest updates. 

]]>
Welcome a New Socially Oriented Project: A Key to Your Overall Safety Comfort https://agiliway.com/new-socially-oriented-project/ Mon, 18 Nov 2019 17:49:00 +0000 https://agiliway.com/?p=4178 Read more »]]>

The modern world fascinates us with a vast range of possibilities, new gadgets and creative ideas. However, along with a bright and highly positive business perspective, we are frequently finding ourselves in a state of fear and alert while heading somewhere alone.

In order not to have this uncomfortable and sometimes a real health threatening state of mind chasing us everywhere and every time, the socially oriented application has been developed.

What are the core principles of the app? It is a socially oriented project, the main purpose of which is to help people by ensuring their walk is completed successfully. In other words, if a person is travelling or moving in a dangerous, place or in case of any trouble, they can always let the others know their precise location with the application activated.  

PROJECT REQUIREMENTS

The client was quite specific about the project requirements. He clearly structured his final version project vision for the three user modes: a new user, user’s upcoming app usage and a user who is permanently using the app; along with a so-called ‘receiver’ of a social notification. The initial instructions were the following:

User’s 1st use:  User is starting the App.  On verifying the mobile phone number, the User can de-/activate social alert (default: off, when active Users within 2 Meters will get notified). User can change settings and/or start the service.

User’s upcoming app usage:  User is starting the App.  User can change settings and/or start the service.

User is using the app: User selects contact(s). User defines the counter/seconds (30 seconds, 60 seconds, 2 min, 5 min). User is running the app and enters a 4-digit pin (this pin is needed to stop the app from running, to prevent misuse, etc.).

Requirements for the project User as a Receiver of social service activation (social-notify):

  • Notwithstanding whether the app is active or not, the User is receiving an in-app-message, when other person’s alert within 200 meters is activated.
  • User is getting a notification:Please help here: [live-location]”

Consequently, due to such a detailed and in-depth project description, we went headlong into the app development and implementation process.

 

SOLUTION PROVIDED

While embarking on the project, our team aimed at meeting all the client’s requirements, reaching highly accurate outcomes as well as extracting great value from the app usage. We managed to regulate time duration and contact list changes, ‘social notify’ and social alert’ functions setting peculiarities, etc.

Consequently, the following platforms and applications were used in the course of this socially oriented application development:

  • a specific platform Twilio was used for a mobile phone verification process;
  • iOS app., which also supports iOS13(the latest version), was implemented;
  • AWS, as a server, was commonly used by the application;   
  • Apple Map was used for a location showing (to visualize a roadmap).

What is more, an administrative board for managing users was created on the basis of our own backend development – Node.js technology – as an open code platform for JavaScript.

VALUE DELIVERED

The core flow of the application includes the following actions: the user starts the timer when they begin their walk and stops on reaching a destination point; if the timer is timed out, a special in-app message with the map and exact place of ‘victim’s’ real-time location will be sent to friends or other application’s social users nearby so that other people would know that something has happened to their friend.

The overall value of the project is huge as it adds to our everyday safety greatly. There is hardly anything more important and essential than a feeling of ongoing care and support wherever you go and whatever you do.

 

]]>
The DevOps Toolkit: Key Categories And Best Practices https://agiliway.com/the-devops-toolkit/ Mon, 11 Nov 2019 11:47:26 +0000 https://agiliway.com/?p=4167 Read more »]]>

“The most powerful tool we have as developers is automation.” – Scott Hanselman 

A DevOps engineer is a relatively new IT position the urgent need for has been critically perceived. The DevOps is about breaking barriers and is ultimately making the overall project cycle perform well and rank high. 

DevOps (an acronym for development and operations) is a software development methodology focused on extremely active interaction and integration in one team of programmers, testers and admins who synchronously serve a common service/product. The main goal of this is to create a single cycle of the interdependence of software development, operation and deployment, in order to ultimately help organizations (services, start-ups) create and update their software products and services that are operated in real time or in production faster and more painlessly. 

Due to a wide scope and multilateral DevOps activity, there exists a variety of special tools to be used in myriad ways to cater to individual business needs and demands. In pursuit of maximum accuracy, value and effectiveness, the tools mentioned are going to be categorized and briefly characterized below. 

COLLABORATION TOOLS (JIRA, ASANA, SLACK, TRELLO, etc.)

This group of tools provides highly effective mutual cooperation by making the very process seamless and transparent. Collaboration tools serve the best options for making the whole process structured, easy to track and coordinate. 

CONTINUOUS INTEGRATION TOOLS (JENKINS, BAMBOO, TEAMCITY, BUILDMASTR, etc.)

The tools of this group are all about cloud security together with a compliance solution. They appear to be highly complex and versatile with a good portion of planning needed. However, building a profound CI-CD pipeline allows extracting great value and reaching more accurate outcomes as well as enhancing the quality of the applications under development. 

BUILD TOOLS (GRADLE, MAVEN, MAKE, etc.)

Building tools are certain programs a DevOps engineer uses to automate the working app’s creation based on source code. The building process includes the code compiling and linking together with a usable form packaging provision. 

CODE HOSTING-REVIEW TOOLS (BITBUCKET, GITHUB, GITLAB, etc.)

The tools mentioned above are handling code review (analysis, audit, etc.) together with a specific code hosting provision catering to individual project needs and configuration dimensions. 

TESTING TOOLS (XRAY, PERFECTO, SELENIUM, etc.)

These tools are dealing with automated testing and are aimed at the end-to-end automation process. Best practices, solid security as well as reliability are a pledge of a high-quality integrated unit. 

MONITORING TOOLS (NAGIOS, GRAFANA, ZABBIX, SELENIUM, etc.)

A proper set of monitoring tools creates a highly successful monitoring platform, which is focused on an application performance observation. They are dealing with configuring, deploying and managing a range of services/applications. 

CONFIGURATION MANAGEMENT TOOLS (PUPPET, ANSIBLE, CHEF, etc.)

Configuration management tools are used to provision and manage data by using certain plain-text definition files; they are aimed at making changes and implementation processes much faster, predictable and scalable. 

CONTAINERIZATION TOOLS (DOCKER, KUBERNETES, AWS ECS/EKS)

At this point, we are talking about self-contained apps to be easily launched and updated by an IT team. Containerization tools handle issues of wide scalability while dealing with both large and small businesses. 

A DevOps engineer position broad popularity stems from the increasing need for the rapid and continuous development and deployment of cloud applications as part of digital transformation initiatives. These include technical issues, such as integration of legacy applications and test automation along with a wide range of tools to mainstream and facilitate development-operation processes. Successful implementation of DevOps practices can lead to improvements in overall business performance. 

]]>
RETAIL WEB PLATFORM DEVELOPMENT: E-COMMERCE EYEWEAR SOLUTION https://agiliway.com/retail-web-platform-development/ Thu, 31 Oct 2019 16:17:34 +0000 https://agiliway.com/?p=4145 Read more »]]> In the modern world, more and more people turn out to be wearing either eyeglasses or sunglasses as well as contact lenses due to a wide range of reasons. The eyewear tends to facilitate and diversify our lives in myriad ways. Subsequently, the demand is constantly increasing, and an eyewear service appears to be in a bad need for facilitation and overall optimization.

A client had a fundamental idea to create an e-commerce platform for offering his customers the possibility to order prescription glasses. A crucial moment was developing a web application of extended functionality to make it popular with both customer and vendor groups.

PROJECT CHALLENGES

The idea pursued was to develop a retail Web platform for ordering glasses (both Eyeglasses and Sunglasses). The core principles were as follows:

  • The application was to allow its users to configure an eyewear product with precision (lens types, radius, style diameter, sphere, etc.) and, consequently, place a relevant order
  • A project was to integrate with the inventory database as well as with the US prescription database
  • A platform designed was aimed to be used in offline stores by managers and work in offline mode for 24 hours in the stores throughout the US and Puerto Rico.

The project requirements mentioned were to cover the client’s vision for an e-commerce platform of an easy configuration and advanced scalability to cater to the needs of the customers and be vital for vendors.

PROJECT IMPLEMENTATION PROCESS

To sustain an enhanced e-commerce web platform, a complex e-commerce solution was developed to address crucial concerns as well as to implement new platform enhancements.

The project cycle aimed at developing a high-quality end-product consisted of two main stages:

Front-end development with JavaScript, Redux, React, HTML5, SCSS:

  • Implementation of a modern UI based on React consistent with the initial design specifications
  • Development of a functional and robust admin system to manage products, its categories, sales, and general stock.

 Back-end development with ASP. NET MVC 5, C#, SQL Server:  

  • Assurance of high availability even in offline mode and fault-tolerance in case of a server crash
  • Establishment of a stock API route to ensure right info about the stock based on different parameters.

Value Delivered

The given e-commerce solution can be characterized by a web app-wide functionality as well simplified and optimized way of obtaining prescription eyeglasses) by:

  • Registering a unified customer personal profile
  • Providing an opportunity for the customers to upload the individual prescription, select the needed lenses (shape, size, etc.)
  • Providing vendors with an ability to manage store inventory, optimize the sales process at store location, and improve report system for both store and corporate users.

The retail platform is a time-efficient and highly flexible as well as an efficient solution, which makes the overall process of choosing and buying an appropriate pair of eyeglasses quite an easy and quick issue to tackle.

Such e-commerce solutions are highly useful in everyday life by giving an ordinary person a possibility to live a comfortable and easy life by leveraging the newest retail web platforms advantages to the fullest.

]]>
The 14th International TYPO3 Conference: presenting collaboration platform for CIO https://agiliway.com/the-14th-international-typo3-conference/ Thu, 24 Oct 2019 13:18:24 +0000 https://agiliway.com/?p=4123 Read more »]]> This October has turned out to be quite prolific as it has been marked by our ROI4CIO project presentation made by our developer at the 14th International TYPO3 Conference 2019 in The Hague, Netherlands. This was an event long-awaited with impatience along with a portion of excitement in Agiliway. 

What is more, it is an honor for the team to be present at an event of such a wide scope. We have been working with the given platform since the first days of our existence and keep maintaining as well as powering it functionality. Due to that fact, we were looking forward to demonstrating it to the IT community and get useful feedback. ‘Experience, Discuss, Learn and Have a Good Time’ – was our lifestyle motto for those two days.

As the IT market is growing worldwide – the number of companies, their employees and their products is growing on a permanent basis. The question arises – how to choose the appropriate provider of services, software, and equipment among the wide range of offerings of the IT market? ROI4CIO service is what you need.

Firstly, it should be made clear, that ROI4CIO is a kind of an excellent collaboration B2B platform (based on TYPO3) aimed at facilitating effective interaction and communication among the participants of the IT market. It is a unique cooperation service for IT-vendors, suppliers, distributors, resellers, and buyers while being an excellent salestool for Vendors and marketplace for Users as well.

In the framework of the presentation, all the key points of the service under discussion were covered by our speaker, including the nature of the very service, its values, main features and benefits.

This service is designed to support sourcing of IT products, partners, contractors and customers. ROI4CIO is used for customizing IT products for clients on a neural network basis, projects ROI, automatically calculates pricing and configuration, as well as supports sending requests to all solution suppliers; as a result, IT vendors (distributors, resellers, developers) get new clients, close deals faster, cut costs and expand partnerships. Consequently, end-users get an effective tool for quick selection of IT products depending on business objectives, business and budget of the company, the ability to qualitatively compare many competitive solutions and pre-evaluate the benefits of their implementation.

What are the main values of the project presented?  

ROI4CIO can be characterized by a number of the following advantages: 

  • Speeding up the selection of efficient IT products 
  • Using your software purchase budget as efficiently as possible 
  • Learning more about the products that sellers know 
  • Giving access to a network of a required IT solution suppliers 

Consequently, some of the key features of the collaboration platform are as follows: 

  • Access to the vendors’, suppliers’ and users’ catalogs 
  • Sending requests 
  • Price calculator, etc. 

Presently, the IT world is in for the ROI4CIO service booming period. We are on our way to the project improvement while providing it with even more functions and wider geographical area coverage. What is more, we strongly believe in unconditional advantages of ROI4CIO for the IT community all over the world.

]]>
GDPR Compliance Implementation: best practices https://agiliway.com/gdpr-compliance-implementation-best-practices/ Thu, 17 Oct 2019 15:04:03 +0000 https://agiliway.com/?p=4114 Read more »]]>

In the new digital age we face unprecedented times of wide opportunities. Internet is just about everywhere and can be connected to just about any device generating diverse forms of data circulation, exchange and accumulation. One can easily pay the bills, share documents, make a purchase and handle multiple daily tasks without passing the front door of their homes. This is how modern technology makes our lives more convenient. Yet it comes at a price. The price is our privacy.  As personal data are shared online, the predators feed on security flaws. The companies get infiltrated, while identities, funds, intellectual property stolen. 

GDPR Compliance Obligations

The General Data Protection Regulation (“GDPR”) was enacted to close the loopholes in data privacy protection an outdated Data Protection Directive could no longer tighten. The GDPR imposes obligations on companies from 28 countries of the EU and regulates the way they manipulate data on the EU territory. Whether it’s storing, collecting or transferring data, GDPR requires that businesses exercise due diligence and comply with pre-determined data protection principles and conditions for data processing.   

As the GDPR directive proclaims, any information related to a person (name, photo, email address, bank details, location details, medical information, or even computer IP address, and updates on social networking websites) shall be reckoned as personal data and its secure processing must be warranted. 

Effective execution of personal data protection strategies is supported by corresponding GDPR principles enacting certain restrictions and requirements. The principles lay out responsibilities for companies to ensure: 

  1. The subject gave an explicit legal consent for collecting and processing personal data for no other purposes but the legitimate ones. 
  2. The subject is privy to all processing activities with their personal data.
  3. Only necessary data required for specified and explicit purposes is collected. 
  4. Data is accurate and updated.
  5. Data is properly destroyed or deleted when no longer needed.
  6. Data is protected against unauthorized or unlawful processing, loss, damage or destruction. 

GDPR Compliance Implementation Steps

With quite unlimited guidance that our experience of past projects provided, Agiliway had long as developed certain strategies and daily operations ensuring personal data protection of its customers. The strategies have worked well for some time already. Reviewing and updating Agiliway privacy policy in compliance with data protection legislation enforced by GDPR meant further reinforcing the existing strategies. To stay within the GDPR we took special care to revisit data processing operations in the following areas:

Access control of data processing premises

To prevent unauthorized access to the premises where data is processed Agiliway has implemented specified protective measures: 

  • Entrance to the office building is allowed only with a personal smart card granting access to corresponding sections of the office, while keys from project rooms are obtained by employees upon fingerprint authentication. Access to the server room is restricted to authorized employees only. 
  • Personalized smart card and the fingerprint record is removed when an employee leaves the company.
  • The office is locked during night hours and connected to centralized police monitoring system.  Security guards are present on the territory 24/7. Corridors, stairs, entrance, parking lots are equipped with a video surveillance system.
  • Visitors are not permitted without the prior approval of management or HR and unless accompanied by an employee. Guests have no access to the corporate network.

Access control of data processing systems

To ensure that data processing systems are not tampered with by third parties Agiliway has introduced the following protective measures:

  • Access to project data is granted by management (CTO, COO, SysAdmin (network logs only)) and contingent on an employee’s role and position level.
  • Internal systems (CRM, HR, accounting, project tracking, etc.) and client project folders are protected by the company password policy.  
  • Configured router firewall controls incoming traffic.  
  • Data processing is not outsourced to third party providers.

Data access control

Only data that is entitled to accessing can be collected and processed by Agiliway team in accordance with access rights granted by the data subjects. Personal data cannot be read, stored, copied, modified, transferred, deleted or shared with third parties without proper authorization. It’s accomplished by:  

  • obtaining customer’s consent on data processing under the GDPR;
  • signing NDA with every new employee before granting access to data;
  • updating the access permission once an employee changes position, role or leaves the company;
  • following Dismissal procedure which includes locking all accesses, returning documents/materials, reassigning active tasks, returning computer and other devices, disabling corporate emails, blocking; personal smart-key and removing fingerprints from the database, etc. 
  • re-formatting data carriers no longer in use and destroying all unneeded documents with shredder machines; 
  • encrypting hard-drives on all laptops to protect information;
  • access to documents is closed as soon as the project or support/warranty period ends.

Separation control of data processing for different purposes

Personal data collected from different customers and for different purposes are processed separately, which is ensured by the following actions: 

  • Access permission control is implemented to assign roles with access to the defined set of information.
  • Data is stored in different areas. Normally, we do not transfer data from client servers, access is provided by the client to only those employees who are assigned to the project. 
  • Production deployment is performed by the client’s in-house IT department unless the support of our DevOps have been solicited. 

Data transmission control

Under provisions in GDPR the controller or processor may only transmit personal data if appropriate safeguards have been offered. Agiliway warrants data protection during transborder data flows by:

  • signing with the data subject a Personal Data Transfer Contractual Clauses to define conditions and obligations under which the data processor undertakes data processing operations;
  • accessing and/or processing data on clients’ servers or document storage. Otherwise VPN and secure protocols SSL are used to download documents which contain personal data;
  • transferring only electronic data by using secure connection VPN, SSL;
  • appointing a data protection officer who monitors that the company remains compliant with GDPR.

Data availability control

Agiliway implements specific measures to ensure personal data are protected from accidental destruction or loss. The measures in place include:

  • protecting data centers from service outages (uninterruptible power supply, air-conditioned server rooms, smoke detection system);
  • auto start of new server/database from defined backup;
  • using AWS, Azure cloud services with servers located in EU for hosting clients’ data and storing backups; 
  • encrypting data backups. 

The moment GDPR came into effect, Agiliway reviewed its business processes to be compliant with personal data processing regulation and introduced necessary changes to stay vigilant against data breaches. By implementing appropriate technical and organizational measures, educating employees, updating contracts and securing environment, we assure our customers no malicious intent goes unnoticed. 

]]>
Building AI-Powered Healthcare Application for Diagnostic Imaging Industry https://agiliway.com/building-ai-powered-healthcare-application-for-diagnostic-imaging-industry/ Thu, 10 Oct 2019 13:41:07 +0000 https://agiliway.com/?p=4095 Read more »]]> What started in distant corners of human imagination caught on like wildfire drastically reshaping today’s reality. Think of self-driving cars, cybernetic limbs, smart personal assistants, AI-powered customer assistants, autonomous drones, smart home devices etc. As AI technology gets more adaptable, the public attention it generates and the media coverage it gets is only beaten by the healthcare news headlines  reporting huge death rates. AI technology has been summoned up to stem the tide. 

Our team joined forces with our client who pursued a lofty goal to apply machine learning algorithms, utilize AI technology for big data analysis and develop an image-based deep learning system aimed at estimating the risk of breast cancer and diagnosing oncology at the earliest stage 

We will walk you through the stages of this idea development into a software solution.

Building Domain Logic

Over the past years medical imaging techniques (X-rays, MRIs, etc) have advanced in relevant representations of tissue abnormalities and are now commonly used in healthcare, creating a vast amount of data radiologists sift through daily. With a steadily increase in the amount of imaging data often being the cause of a delay in diagnosis, radiologists would look to software to improve workflows and diagnostic accuracy of medical imaging interpretation. The tech solution would also prevent the professional burnout of medical specialists who daily struggle through a maze of data.

Building a medical image interpretation system with a capability to retrieve and interpret data and identify the likelihood of breast cancer meant addressing the following issues:

  • Adapting the system for collaboration with humans 

By feeding images of mammograms to the deep-learning model, a radiologist will train the algorithm to recognize patterns in breast tissue that signal potential cancer symptoms or impending development of cancer. When a radiologist performs screening, the algorithm will detect the subtlest lesions barely visible for human eye. A doctor then will give such patients a referral for preventative treatment. 

  • Building the system for processing large volume of data 

To identify an abnormal breast tissue the deep-learning model will be able to process huge number of medical images to deduce the patterns.  

Building Application Architecture

Complex domain logic defined the required web application behavior and functions. For this reason, the healthcare solution was built as a multiple-module system, where each module, incorporated through the interface, served a separate business function.  

The machine learning project comprised three stages: 

  • Back-End development with .NET framework 

The client had his own in-house software development unit yet contacted Agiliway to empower its team by engineers proficient in .NET technology, React web framework and skilled at backend development. Agiliway took over this part of the project which involved creating the logic of the application.  

  • AI technology integration  

The machine learning system was built with Python. Due to its rich technology stack, extensive set of libraries, frameworks, and extensions that simplify the implementation of machine learning algorithms, Python proved viable for computer vision, data analysis and machine learning. 

  • Front-End development with JavaScript using React.js Redux and Webpack 

Following users’ feedback, the team utilized full stack capabilities of JavaScript to build the user interface and improve user experience.

Value Delivered

Integrated into the clinical workflow, this machine learning healthcare application assists radiologists to achieve high efficiency and productivity by:

  • automatically extracting and analyzing huge amount of data,  
  • increasing accuracy of medical imaging interpretation,
  • lowering the risks of delays in radiologist reading,
  • speeding up decision making for improved patient care.

People usually find comfort in the belief that in most cases all the deadliest forms of breast cancer can be cured once diagnosed early. Now the radiologists can further calm patients by using the AI-powered technology that knows how to reduce those “most cases” to almost non-existent. Radiologists have found a strong ally in their raging war with breast cancer.

]]>
Agiliway – Bizico Merger https://agiliway.com/agiliway-bizico-merger/ Tue, 01 Oct 2019 18:40:45 +0000 https://agiliway.com/?p=4083 Read more »]]>

October 2019 starts off with a big news splash. Agiliway team has taken the final preparations and today enters into the merger agreement with Bizico, a software development outsourcing company. The announcement signals a major change for two companies that agreed to move forward as a single, united and even more competitive service provider.

From October 1 onwards we officially work as one company with development centers in Lviv, Chernivtsi and a representative office in Austin, Texas. The decision itself took us a while. For two years the companies have been working side-by-side on multiple projects and numerous occasions what gave us an insight into the company’s tech expertise, business practices and cultural background.

Value for us

When a merger happens there are usually quite a number of challenges companies face: conflicting cultural values and beliefs that adversely affect the integration process, diverse management practices that often bring disruption; communication gap between two merging companies about the business processes might also lead to discontent and put the whole venture on hold.  Agiliway and Bizico integration process is immune to those risks since two companies share the same cultural background, business and management perspective as well as a history of successful projects.

Over two years of close cooperation we’ve aligned our core principles of work with clients while steadily growing a pipeline of new joint projects coming our way. In view of active and fruitful collaboration the decision to launch merger came as a matter of course. Agiliway – Bizico merger is expected to add stability to both parties and provide more growth opportunities for the company as a whole and for each of its team members in particular.

Value for our clients

Now that companies ceased to work in separate ways, the clients gained access to a wider range of expertise. Agiliway and Bizico no longer stand on a competitive ground but rather complementary one, where two companies pull together core competencies to attend to constantly evolving customer needs. The expertise and experience of twice as many tech-savvy team members are tapped to create the products that best satisfy customer needs.

The company will continue to operate under the name of Agiliway with a lot more diversifying services and competencies in store for its clients.

]]>
CI/СD tools: Trends and Challenges in 2019 https://agiliway.com/ci-%d1%81d-tools-trends-and-challenges-in-2019/ Thu, 26 Sep 2019 14:34:16 +0000 https://agiliway.com/?p=4044 Read more »]]>

A professional, born with a mission to streamline the smooth transition from traditional to agile software development, DevOps engineer has come a long way. The success of the mission can hardly be questioned now that efficient workflow with CI/CD tools benefit development teams and empower companies to get new software products to market faster.

Both IT and business industries have embraced DevOps as best practices that lead towards faster and more efficient software development methods. Yet with the advance of DevOps practices and a growing variety of CI/CD tools there seems to be no easy or quick way to get there in 2019. 

Mainstream Solution: Jenkins

At the outset of the profession, crossing the line towards agile methodology meant developing a solid CI/CD pipeline with Jenkins, an open-source CI/CD tool.

DevOps team seamlessly integrated a set of principles and practices into the application development processes to deliver bug-free code and facilitate rapid deployment. Known as Continuous integration (CI) and Continuous Delivery (CD), those principles and practices underlie Jenkins pipeline that embody specific steps needed to automate different stages in the software delivery process (e.g. automating infrastructure and workflows, running automated tests, initiating code build) and automatically deploy bug-free releases into the production environment. Jenkins would help DevOps teams to streamline development processes, tests, bug detection, code analysis, and project deployment with automation.

Popular Solution: Buddy, TeamCity, GitLab CI, Travis CI, Bamboo

As ever more businesses and industries are being run on software, the DevOps direction is gaining traction. It already offers the widest range of services and gradually keeps covering ever higher percentage of IT market offerings. These days all major tech providers have their eyes on DevOps technologies, deeply invested into delivering their own best CI/CD solution to ensure delivery of software to a production environment fast and without a glitch. They pull out all stops to provide full stack DevOps solution from ticketing system to writing documentation, automatic deployment, sending messages. In many aspects CI/CD tools are alike pursuing the same objective, that is seamless cooperation between Development and Operations, yet cover specific development needs and different teams. Swamped with multiple DevOps tools, some choose to incorporate GitLab CI for cloud-based environments, others migrate their infrastructure to Buddy or TeamCity cloud computing service, still others’ transformation begin with Travis CI, Bamboo, etc.

Buddy supports multiple major frameworks and cloud providers and its deployment integrations are easy to configure, while TeamCity, though high in integrations and tailored to enterprise needs, is quite complex. Travis CI is hailed for being well documented, Bamboo – for first-class integration with Jira, while GitLab CI is favored for open-source add-ons.  

Challenges

Powerful CI/CD tools improve users’ access to the latest technology and functionality that drive businesses forward and ensure high competitive edge. The approach works wonders for software end users as well. Yet with multiple CI/CD tools on the rise knowing which strategy to embrace and tool to adopt is quite a challenge for DevOps engineer.  

Still it’s not the hardest battle to win. Suppose the company already manages software development projects in software from a specific tech provider and settles on implementing DevOps practices, it starts considering CI/CD tools. The odds are the choice will fall on a web-based version control repository hosting service of the same provider. Products, when developed by the same provider, easily integrate, their data architecture are structured in similar ways which in itself makes for smooth and fast releases. In the meantime, customers usually loyal to one particular tech stack, swayed by the repute of some tech giant or rather content with certain tools of their current tech provider, embrace CI/CD model and make the transition with one particular tech providers.   

Accordingly, with every new client the DevOps engineer may need to constantly switch between stacks. That triggers a question: How to reach DevOps goal when challenges arise? Continuous self-education and flexibility seem to be solutions to challenges DevOps engineers face in 2019. 

]]>