Notes from Jul Flashcards
Describe interoperability in the context of application systems.
Interoperability refers to the ability of two application systems to exchange information with each other and utilize the exchanged information.
What is the difference between interoperability and application integration?
Interoperability focuses on exchanging information, while application integration emphasizes combining information.
Define Information Oriented approach to application integration.
Information Oriented approach involves the exchange of simple information, often using databases or data-producing APIs.
How does the Business Process-Oriented approach to application integration work?
Business Process-Oriented approach focuses on creating a single model that spans multiple applications and data stores to control how systems and humans interact.
Describe the Service-Oriented approach to application integration.
Service-Oriented approach, similar to Business Process-Oriented, provides services instead of just information, emphasizing loose coupling.
What is the main focus of Portal-Oriented approach to application integration?
Portal-Oriented approach aims to provide a single view of multiple systems by integrating at the UI level, typically through a web browser.
Explain the concept of Electronic Data Interchange (EDI) in system integration.
EDI was developed to enable seamless document exchange between companies, with specific and well-defined formats for the exchanged documents.
Describe Remote Procedure Calls (RPC) in the context of system integration.
RPC allows distributed systems to integrate by remotely executing procedures/subroutines as if they were part of one system, but implementation can be language-dependent.
What is the purpose of Common Object Request Broker Architecture (CORBA) in system integration?
CORBA aims to provide a language and OS-agnostic way for different systems to interact, similar to RPC but with more flexibility.
Explain the significance of Simple Object Access Protocol (SOAP) in web services.
SOAP allows remote requests to external services, independent of programming models, and can be implemented over various protocols like HTTP or SMTP.
Describe the concept of Representational State Transfer (REST) in integration.
REST is an architectural style focusing on resources rather than actions, allowing clients to interact with server resources without specifying the data transfer format.
What is GraphQL and how does it simplify API querying?
GraphQL is a query language for APIs that is strongly typed, enabling early error detection and providing a single entry point for querying various resources.
Describe the function of an application server in 3-/multi-tier architectures.
An application server is a dedicated software component that provides application (business) logic, enabling the separation of this logic from UI functionality, data delivery, and data management.
What are the basic functions of an application server in large-scale deployments?
In large-scale deployments, application servers allow for the distribution of client requests across multiple instances (clusters) for load balancing.
Define REST API and discuss its strengths and weaknesses.
REST API, or REpresentation State Transfer, is a software architectural style used for web APIs. It is easy to integrate, scalable, and efficient but lacks security and the ability to maintain state.
Explain SOAP API and its strengths and weaknesses.
SOAP API, or Simple Object Access Protocol, is a message specification for exchanging information between systems. It is dependable, standardized, and has built-in error handling but can make API evolution slower and uses XML for messages.
Describe GraphQL and its primary functions.
GraphQL is a query language that allows developers to construct requests to pull data from multiple sources in one API call. Its primary functions include Query to read, Mutation to write, and Subscription to observe events.
What is HL7 V2 and its main use case?
HL7 V2 is the most common communication standard in Hospital Information Systems for transferring messages related to entities like patients and cases. It is used for exchanging messages between different application systems.
Explain HL7 V3 and its Clinical Document Architecture (CDA).
HL7 V3 includes the Clinical Document Architecture (CDA), an XML-based document standard for storing and exchanging clinical content like discharge letters and lab findings. It is derived from the HL7 Reference Information Model.
Define FHIR and its relation to HL7 standards.
FHIR, or Fast Healthcare Interoperability Resources, is a recent HL7 standard based on experience from other standards. It aims to improve interoperability in healthcare systems.
Describe the focus of Fast Healthcare Interoperability Resources (FHIR)
Focuses on sharing medical data and making it portable by using REST APIs and simple HTTP operations.
What is the purpose of Digital Imaging and COmmunications in Medicine (DICOM)?
To address integration requirements of the medical imaging sector and define file and message formats for medical imaging modalities.
Define Integrating the Healthcare Enterprise (IHE) and its role in interoperability
IHE is an organization aiming to improve integration of healthcare app systems by analyzing work processes, selecting standards, and offering test software for process interoperability.
How does Service-Oriented Architectures (SOA) contribute to software design?
SOA simplifies software design by decomposing complex problems, enhancing reusability of IT resources, and improving adaptability to changing business requirements.
What are the potential benefits of SOA?
Simpler software design, improved reusability, adaptability to changing business requirements, and cost savings.
Describe the steps involved in redesigning a resource for reuse
Steps include examining design assumptions, isolating textual elements, identifying general underlying problems, and deciding on re-engineering efforts based on constraints.
On what timescale should SOA objectives be considered?
Consider SOA objectives on the long term, with real-life examples requiring a minimum time investment of 4 years.
Why is service discovery little used in practice within SOA?
Service discovery is challenging due to the need for expert human intervention to determine service appropriateness, especially with the vast number of subroutines in development frameworks.
Describe the dangers of using an SOA for medical applications.
Outsourcing Decision Support (DS) to external agencies can lead to potential imperfections, inhibiting reliance on external clinical SOA services. Healthcare providers are legally responsible for overriding erroneous advice given by SOA services.
Define microservice architecture.
Microservices are small, autonomous services that work together, deployed independently, loosely coupled, and each focusing on one task.
How does microservice structure compare to monolithic architecture?
Microservices have a code base per service, better readability, easier maintenance, simple deployment with minimal downtime, support multiple programming languages, and allow scaling of bottlenecked services without scaling the entire app.
What is the role of continuous integration/deployment in microservice architecture?
Continuous integration/deployment ensures software is continuously developed and features are added, with constant integration across different environments.
Why is monitoring important in microservice architecture?
Monitoring in microservices helps detect failures quickly, auto-restore services, and prevent service failures caused by infrastructure unavailability.
How does polyglot persistence fit into microservice architecture?
Polyglot Persistence allows each service to manage its own database, whether using different instances of the same DB technology or entirely different DB systems, decentralizing logic and data storage decisions.
Describe what backing services are according to the 12-Factor App methodology.
Backing services are services consumed by the app over the network as part of normal operation, including datastores, messaging systems, and third-party services. Each distinct backing service is treated as a resource.