Migrating Bioinformatics Applications to SaaS Using Amazon AppStream and Sigma Technology
By Jimmy Dahlqvist, APN Ambassador, Sr. Solutions Architect – Sigma Technology Cloud By Leszek Ucinski, Cloud Engineer – Sigma Technology Cloud By Bill Tarr, Principal Solutions Architect – AWS SaaS Factory By Babak Parvizi, Sr. Partner Solutions Architect – AWS SaaS Factory
For software providers with legacy applications, transitioning to a Software-as-a-Service (SaaS) model presents considerable advantages. These include the ability to reach new markets and industries, as well as improvements in operational efficiency and agility. For their customers, SaaS offers the benefits of simplified operations and a pay-as-you-go cost structure.
However, many existing software applications are desktop-based, and modernizing them for SaaS can be a lengthy process. This can extend to months or even years of work. Industries such as healthcare, with stringent data privacy requirements, face even greater challenges when it comes to this kind of transition. In these scenarios, compliance is not optional. Given these obstacles and customer demand for SaaS solutions, providers require efficient methods to speed up their time to market.
This blog post will demonstrate how Qlucore AB (Qlucore) collaborated with AWS Advanced Tier Partner, Sigma Technology, to harness Amazon AppStream 2.0 (AppStream 2.0) in order to migrate their bioinformatics data analysis software to a SaaS model. We will explore how Qlucore was able to migrate their application with only minimal code changes and have their customers making use of the application within just six months.
AppStream 2.0 for SaaS Migrations
AppStream 2.0 is an End-User Computing service that facilitates on-demand application streaming. It maintains user files and data between sessions. For software developers looking to move their desktop applications into a SaaS model in the cloud, AppStream 2.0 provides a solid base. This approach can shorten the time to market and does not require any application refactoring. AppStream 2.0 is also suitable for setting up multi-tenant environments and ensuring application isolation.
Qlucore faced challenges with their traditional desktop application delivery model. In order to achieve a wider reach and meet their customer expectations for cost-effectiveness, scalability, and usage-based pricing, Qlucore needed to deliver their application as a cloud-based SaaS solution. They also needed to offer a SaaS solution without making significant changes to the application code. Moreover, Qlucore is a very cost-conscious organization, so the solution had to be auto-scalable.
During the assessment phase, Sigma Technology Cloud examined the feasibility of utilizing AppStream 2.0. A Cloud Architect from Sigma Technology Cloud designed a preliminary architecture, capturing the company’s requirements for a multi-region setup. Furthermore, a Total Cost of Ownership (TCO) analysis was performed using the proposed architecture to clarify the migration and operational expenses. A detailed migration strategy with various development phases was then presented to give the company a clear understanding of the development effort, project timeline, and expected time to market.
AppStream 2.0 was identified as a safe and straightforward migration path, which would allow for the optimization of resources, while satisfying the requirements for both cost-effectiveness and time-to-market constraints. Previously, Qlucore used a perpetual license model where customers downloaded and installed the application on their local computers. However, with AppStream 2.0, they gained insights into the business case of moving to a SaaS model.
Transitioning from a perpetual license model to a SaaS delivery model – with a wide range of pricing options, including feature-based, compute size-based, and pay-per-user schemes – can present significant hurdles for companies adopting Cloud and SaaS-based models.
Solution Overview
The solution uses an AppStream 2.0 fleet deployed across three availability zones in a multi-region, multi-AZ (Availability Zone) setup providing Home Folders for data persistence. These folders, which are supported by Amazon S3 (S3), make it simple for customers to import and upload their own research data. For efficiency, customers can upload files through either the web or full Windows AppStream 2.0 clients. The content in the Home Folder will then be synchronized with a unique location in S3.
The solution ensures continuous operation of multiple AppStream 2.0 instances, using built-in auto-scaling to automatically adjust to customer activity by adding or removing instances as necessary.

Figure 1 – Overview of AppStream 2.0 architecture.
To proficiently manage customers in their new SaaS solution, Qlucore integrated its existing CRM system with Auth0 by Okta as a new external SAML 2.0 Identity Provider (IdP). Furthermore, to support different operating systems seamlessly and prevent any additional installations, Qlucore utilized the AppStream 2.0 Web Access Client. This solution also enables a user experience where the streaming session can be served under the company’s custom domain. This is accomplished by generating an AppStream 2.0 Streaming URL that is used to start an Embedded AppStream 2.0 streaming session.
Customers navigate to the company’s application portal, where they authenticate against Auth0 by Okta. Calls to the CRM system determine if the customer has either a standard or premium subscription. Finally, Streaming URLs are created by an authorized call to an Amazon API Gateway with an AWS Lambda (Lambda) function integration. The Lambda function uses the AppStream 2.0 API to create a Streaming URL that could be embedded and started directly from the company’s application portal.
Streaming Image creation process
The migration to AppStream 2.0 begins with the building of AppStream 2.0 images.

Figure 2 – Identity architecture using OKTA.
The company’s application supports both Windows and iOS operating systems and uses OpenGL. For the described solution, the underlying AppStream 2.0 image is a Windows Server 2019 instance that has been optimized for AppStream 2.0 Graphics Design instances. This application can visualize real-time data rapidly and easily, so the Graphics Design instance was the choice of a Standard Tier subscription (see the SaaS Lens for the Well-Architected Framework for more details). The additional Premium Tier was comprised of instances with a higher CPU and memory capacity to offer more support for the users’ application, which in turn made shorter job runtime times. The company manually prepared the images.
Since there aren’t many application updates, images were made in the AppStream 2.0 console using the AppStream 2.0 Image Builder. The application itself was installed from the source on the Windows image. Some additional configuration was completed, which included defining the Home Folder as a destination for application results.
Managing files in the Home Folder
AppStream 2.0 provides all of the necessary functionality to offer persistent storage of user data. The Home Folder is backed by an S3 Bucket, created and managed by the AppStream 2.0 service. At startup, each AppStream 2.0 user is assigned a hashed user ID, which in turn is prefixed to a folder in the S3 bucket attached to the AppStream 2.0 service. For file persistence, all applications must be properly configured to use the exact path (D:PhotonUserMy FilesHome Folder) of the destination folder.
The file manager component enables users to modify and download data by identifying the correct ‘folder’ in the S3 bucket. The folder name follows this format: appstream2-36fb080bb8-${AWS::Region}-${AWS::AccountId}. For instance, a user with an ID (from the customer’s CRM) of: 123abcd would be hashed to: asd87guiads. That hashed value will become the user’s ‘folder’ name. Therefore, whenever logged-in users make requests, the corresponding Lambda function will return a Presigned URL for a certain path, i.e., appstream2-36fb080bb8-eu-west-1-12345678910/asd87guiads/.

Figure 3 – Using S3 presigned URLs and extracting metadata.
In the described solution, the AppStream 2.0 sessions were displayed to users in a Stream View of type App (rather than Desktop, which provides a full Windows experience). This means the built-in AppStream 2.0 toolbar was available to them. Amongst other functions, this toolbar enables uploads and downloads of files, but this feature can be disabled by a setting in the AppStream 2.0 stack configuration.
The uploading and downloading functionality was moved to the external, web-client-based site of the hosting website. The advantages here are that the uploads are quicker and can be completed outside AppStream 2.0 without having an ongoing AppStream 2.0 session. On the other hand, uploads and changes made to files in the custom file manager, while also having an ongoing session, would not be synchronized until a new session was started.
Conclusion
By adopting AppStream 2.0, the application successfully transitioned to a SaaS delivery model in under six months. If the company had chosen to refactor the application into containers and other technologies for cloud deployment, the process could have taken several years. The use of AppStream 2.0 as a strategic choice significantly reduced the time to market. This enabled the company to experiment with, and refine, their SaaS business model efficiently.
If you would like to learn more about using AppStream 2.0 for SaaS migrations, please contact Sigma Technology Cloud, and check out the AppStream 2.0 guide – Software vendors: Deliver your applications to any user device.
About Qlucore AB
Qlucore is a leading provider of next-generation and intuitive bioinformatics software for research, as well as precision and companion diagnostics. Qlucore’s focus is to simplify the analysis of the massive volumes of complex data generated by developments in genomics and proteomics. The company provides powerful visualization-based bioinformatics data analysis tools for research and precision diagnosis.
Qlucore Omics Explorer software is user-friendly bioinformatics software useful for the life science, plant, and biotech industries, as well as for academia. Moreover, Qlucore Diagnostics and Qlucore Insights are software platforms with built-in AI-based machine learning for multi-omics companion and precision diagnostics. Qlucore was established in 2007 in Lund, Sweden and has customers in approximately 25 countries around the world, with sales offices in Europe and North America, and distribution in several countries in Asia. Qlucore is listed on the Nasdaq First North Growth market.
Sigma Technology Cloud – Partner Spotlight
Sigma Technology Cloud is a cloud services provider founded in 2021. They provide cloud solutions and consulting services to organizations of all sizes in the Nordic region. The company takes advantage of its industry expertise and its state-of-the-art technology to offer exceptional cloud services tailored to its clients’ needs.
Contact Sigma Technology | Partner Overview