Application Integration on Amazon Web Services* (AWS): Steps, Roles, Techs
Having 33 years in IT and 9 years of experience in AWS consulting and related services, ScienceSoft advises on and carries out AWS-based app integration.
Application Integration on AWS: The Essence
Application integration on AWS is enabled via point-to-point API communication or via message- or event-driven communication, leveraging respective AWS services.
The core AWS services used for integration include Amazon Simple Notification Service (SNS), Amazon Simple Queue Services (SQS), Amazon API Gateway, AWS EventBridge, etc.
A typical AWS-based integration process consists of analyzing the to-be-integrated applications, designing the integrated system, implementing and testing the integration. It can be carried out by a team of a project manager, a business analyst, an AWS solution architect, developer(s), QA engineer(s), and a DevOps engineer.
In software development since 1989, ScienceSoft helps build reliable, secure and convenient AWS-based integrations between custom and/or commercial systems.
Steps of Application Integration on AWS
The stages and timelines of an AWS-based application integration project can vary depending on the number of applications under integration and their complexity, the chosen integration approach and architecture, required changes in legacy software, and more. Below are described the typical steps we at ScienceSoft take to perform application integration on AWS.
Analyzing the to-be-integrated applications
- Describing key architecture characteristics (modular architecture, APIs, etc.) and constraints (rigid architecture, lack of up-to-date documentation, etc.) of software to be integrated.
- Estimating the required investments and value that AWS-based application integration can bring considering your integration goals and scope, the specifics of the apps to be integrated and the existing IT environment.
- Defining business metrics to measure AWS-based integration success (e.g., improved order processing or delivery time, reduced transaction errors, optimized spending on storage, compute and app maintenance).
Designing the integrated system and points of integration
- Identifying APIs and build a repository of the available APIs.
- Mapping out business workflows driven by the to be integrated apps and identifying their integration points.
- Designing the architecture of the integrated system:
- Mapping data flows between the apps to be integrated.
- (if required) Planning data transformations into a different format.
- Planning security measures for data, its location, and its transmitting processes.
- Defining the required performance of the future integrated solution.
- Choosing the integration approach (API-based, event/message-based, etc.), choosing the AWS services to use, and deciding what parts of the integrated system they will replace.
- (optional) Planning a pilot project to prove the effectiveness of the chosen AWS integration services.
- (if required) Planning code adjustments in the applications under integration.
Note: App modernization may take from 2-3 weeks to 2-3 months.
Implementing and testing the integration
- Implementing the required code-level changes to the applications under integration.
- Connecting applications:
- Option 1: Point-to-point communication via APIs
Amazon API Gateway, AWS AppSync, Amazon AppFlow (no-code API integration)
Designing APIs (if required).
- Publishing APIs (making them visible and available for each other) and describing the necessary API details, including the operations the API contains and their parameters.
- Preparing API documentation for external developers that may use your APIs.
- Configuring the integration (setting up limits for the number of calls the integrated applications can receive from each other, tuning authentication mechanisms for application APIs, enabling API usage monitoring and analytics, etc.).
- Option 2. Communication via queued messages or events in a non-blocking mode
Amazon Simple Notification Service (SNS), Amazon Simple Queue Service (SQS), Amazon MQ, Amazon EventBridge, Amazon Managed Streaming for Apache Kafka (Amazon MSK), Amazon Kinesis
Selecting or building adapters for applications to communicate with the mediator (one or several AWS services).
- Defining rules for message/event routing, message modification, aggregation to make sure the messages are sent to the intended receiver in the right format and sequence.
- Option 3. Integration via building new business workflows
AWS Step Functions
Sequencing applications and AWS services into one integrated solution using a simple drag-and-drop interface.
- Option 1: Point-to-point communication via APIs
- Setting up the log messages/events to monitor the performance of the integrated solution (using Amazon CloudWatch, AWS X-Ray, or any other preferred observability solution).
- Testing the integration, including:
- All uni-, bidirectional, and asynchronous (orchestration) queries between the connected applications to ensure the completeness of distributed transactions and data consistency.
- Failover and recovery mechanisms so that no issues can spread over and disrupt the work of the integrated apps.
- The performance, scalability, and security of the integrated solution.
- Tracking the value of the integration project based on the defined business goals for application integration.
AWS App Integration: Success Story by ScienceSoft
Application Integration to Drive Digital Transformation in the Healthcare Business
ScienceSoft automated paper-based document management, order and warehouse management workflows with custom software solutions. The delivered solutions have largely catalyzed customer experience optimization.
ScienceSoft’s Offering in AWS-based Application Integration
AWS-based application integration consulting
- Business and technical requirements for the integrated system.
- The Integration architecture design.
- Planning required modifications of the integrated applications.
- Helping comply with the regulations, including HIPAA, HITECH, SOC2, SOC3, and more.
- A detailed AWS-based app integration project roadmap.
AWS-based application integration implementation
- Requirements analysis.
- Application and infrastructure analysis.
- The integration architecture design.
- Modernization (re-engineering, re-architecting) of applications (if required).
- Integration solution development, implementation and testing.
- After-launch support, user and admin training.
- Continuous management and evolution of the AWS-based integrated system (on demand).
ScienceSoft as a Reliable Partner in AWS-based App Integration
We wanted our product to integrate with various ticketing software to collect support tickets, analyze them with AI, and organize the elicited data into charts and visuals.
ScienceSoft’s team undertook the development of our product from scratch and showed deep expertise in the .Net environment and AWS and Azure services.
Bob Penland, Managing Partner, ServicePulse
- In IT since 1989.
- AWS Select-tier Consulting Partner. Additional AWS discounts and priority access to AWS technologies and services.
- 2 days – 2 weeks to start a new project.
- Integration and database architects with 7-20 years of experience.
- Over 10 years of experience in cloud development and migration.
- 9 years in applying DevOps practices.
- 19 years in cybersecurity. All-level security configuration and monitoring (infrastructure, application logic, security testing, compliance).
- Expertise in 30 industries.
- ISO 9001 certified quality management, ISO 27001 certified information security management, ISO 13486 certified quality management for medical devices and Software as a Medical Device, and more.
- Compliance with HIPAA, GAMP, PCI DSS, and more.
- ScienceSoft USA Corporation is listed among The Americas’ Fastest-Growing Companies 2022 by Financial Times.
- Plans the AWS-based app integration project, assigns integration project responsibilities and tasks to the team, and controls the tasks’ execution.
- Makes sure the integration project is implemented on time and budget and in compliance with the set quality metrics.
- Reports on the AWS-based integration project progress to the key stakeholders.
- Elicits, prioritizes, and documents the requirements for the AWS-based integrated system.
AWS Solution Architect
- Designs the integration architecture to meet the business and technology requirements.
- (if required) Develops the architecture transformation and modernization roadmap for the to be integrated apps.
- Designs frameworks and processes to support API development and management.
- Defines AWS services to employ.
- Configures integrations (e.g., in case of Amazon AppFlow, AWS Step Functions), builds custom integration code and APIs.
- Plans, configures, and optimizes the AWS-based integration solution infrastructure.
- Automates development and release processes by introducing a CI/CD pipeline.
- Monitors the integrated system security, performance, and availability, etc.
- Designs and implements a test strategy, a test plan, and test cases for the AWS-based integration solution and the integrated system to assure that the functional, performance, security, and compliance requirements are met.
- Conducts manual and automated testing.
- Tracks test results and reports bugs.
The entire AWS-based integration project is in-house
- Full control over the AWS integration project progress.
- Easy team communication.
- Need to hire specific resources with experience in AWS services, modern integration patterns, legacy app modernization.
- All hiring and managerial efforts are on your side.
The AWS-based integration project is outsourced
- A vendor assumes full responsibility for the team assembly and management and the quality of the AWS integration project delivery.
- Established frameworks for AWS-based app integration.
- If your vendor is an official AWS Network Partner, you get access to additional AWS discounts and priority access to AWS technologies and services.
- High vendor risks.
A mix of in-house team and outsourced consultancy for AWS-based integration
- In-house team has a deep understanding of internal business processes and the software environment.
- Outsourced consultancy provides expert guidance for the most challenging integration activities, shares specific AWS knowledge, trains your team to maintain the integrated solution efficiently.
- In case an outsourced consultancy is an official AWS partner, they can bring additional AWS discounts.
- Risks of consultancy vendor selection.
- Requires time and experience to establish smooth collaboration and communication between the in-house and consultancy teams.
- Partial or total project team coordination, quality control and risk management are required from your side.
Benefits of Application Integration with ScienceSoft
ScienceSoft introduces data governance rules, error message management, message completeness verification, roll-back of distributed transactions to ensure consistent and comprehensive data across the integrated system.
Advanced integration security
ScienceSoft uses sophisticated access control rules, industry-proven protocols for authentication and authorization, “safer” outbound connections, and more.
System performance management
ScienceSoft pays special attention to planning system capacity and middleware, designs scalable architecture, introduces priority queues, effectively uses timeouts and sync calls, logging and caching, conducts load and performance testing, network latency problem assessment.
Optimal integration journey
ScienceSoft starts with a feasibility study of its technical, economic and operational aspects of your integration initiative. Our consultants with 7-20 years of experience in the field investigate whether the project is worth your time and money and which integration scenario will bring max benefit.
Basic integration cost factors
- The chosen integration approach (point-to-point, mediated integration, workflow-based integration).
- The number of integrated apps.
- The complexity of the new integrated workflow (whether it can be created codeless, with minimal code adjustments, or by writing custom code).
- The availability of ready APIs and connectors.
- Efforts for testing the co-coordination and data consistency between the integrated systems.
Costs of AWS services
The cost of some AWS services will depend on:
- Number of operations for a certain period (messages, events, delivery attempts, management calls, etc.).
- Message size.
- Using specific features (message transactions, de-duplications, etc.)
Best practice: Being an official AWS Partner Network (APN) member, ScienceSoft helps customers reduce app migration costs by offering additional discounts on Amazon’s behalf.
- Downtimes/interruptions caused by integration ramp-up.
- Business user training.
AWS Simple Notification Service (SNS)
High-throughput, push-based, many-to-many messaging between serverless functions, queues, and distributed systems.
- Strategies for reliable message delivery, e.g., dead-letter queues (messages that can't be delivered due to client/server errors will be saved for reprocessing or further analysis).
- Automated scalability up to millions of messages per second.
- FIFO (First-In-First-Out) topics enable message processing in a strict order and with no duplications.
- Message filtering and fanout.
- First 1 mln Amazon SNS requests per month are free, $0.50 per 1 mln requests thereafter.
- Published API requests are ~ $0.3 – 0.5 per 1 mln requests and ~ $0.02 – 0.03 per 1 GB of payload data.
- Subscription messages are ~ $0.01 – 0.02 per 1 mln messages and ~ $0.001 – 0.002 per 1 GB of payload data.
- Topic owner and subscription owner API requests are charged as Standard API requests.
AWS Simple Queue Service (SQS)
Sending, storing and receiving messages between software components at any volume, without requiring other services to be available.
- Standard message queues for maximum throughput, best-effort ordering, and at-least-once delivery.
- FIFO (First-In-First-Out) message queues to guarantee that messages are processed exactly once, in the exact order that they are sent.
- Automated scaling via increase in the number of listeners/consumers, the number of threads per client or combined, via action batching.
- Server-side encryption (SSE) can be used to encrypt each message body for sensitive data exchange.
1 mln Amazon SQS requests for free each month.
~ $0.40 per 1 mln requests if the number of requests doesn’t exceed 100 bln/month.
~$ 0.50 per 1 mln requests.
AWS API Gateway
Building and operating APIs.
- Dashboards to visually monitor calls to the services.
- Integration with Amazon CloudWatch to track metrics such as API calls, latency, and error rates.
- Throttling and cashing.
- Fine-grained API access permissions.
- API keys to control access for third-party developers.
- Custom plans that set throttling and request quota limits for each API key.
- Multiple release stages for each API version (alpha, beta, production). Each API stage can be configured to interact with different back-end endpoints.
- Running multiple API versions simultaneously allows applications to call previous API versions even after the latest versions are published.
1 mln HTTP API calls, 1 mln REST API calls, 1 mln messages, and 750,000 connection minutes per month for free for up to 12 months. If you exceed this number of calls per month, you will be charged according to API Gateway usage rates.
A global IT services company headquartered in McKinney, Texas, ScienceSoft provides end-to-end application integration services.
- 9 years of experience with AWS-based infrastructures.
- The status of Amazon Web Services Select-Tier Services Partner.
- AWS Certified Solution Architects, AWS Certified SysOps Administrators, etc., on board.
As the holder of ISO 9001 and ISO 27001 certifications, we rely on mature quality management and guarantee that the cooperation with us doesn’t pose any risks to our customers’ data security.
More from ScienceSoft
*AWS, Amazon Web Services and other AWS Marks are trademarks of Amazon.com, Inc. or its affiliates in the United States and/or other countries.