CSE460 - Unit 6
Service-Oriented Programming
Automatic discovering and binding is provided by which programming paradigm?
Service-Oriented Microservice
Decoupling the client and service dependency are characteristics of which software architectures?
Makes it very difficult to scale
How can horizontal partitioning act as a drawback for a software monolith?
Providing service to increased number of customers Providing scalability of services to support demand
How does microarchitecture implementation help a web-based video streaming service provider?
Makes application language independent Allows use of web protocols to make the interface universally accessible
How does the use of web services help the service providers in application development?
Count the number of { } or ( ) pairs including the outer object
How many objects are present in a given JSON structure?
Scalability Fault Tolerance Performance
Improvements in which software attributes were the reason behind why Netflix switched to a microservice-based system?
JSON is called JavaScript Object Notation JSON is a light-weight data exchange format JSON is often used in RESTful web APIs
In JSON processing, which statements are true about JSON processing?
Multiple values are separated by commas Strings are among supported data types Data is represented as key:value pairs
In JSON processing, which statements are true about the JSON language?
Event Bus Microservices API Gateways
In a generic microservice architecture, what are considered as key components?
Partitioning based on computational concerns
In a software monolith, what does horizontal partitioning of modules refer to?
Microservices are smaller in focus size Microservices are self-sufficient Microservices manage their own resources
In comparison to conventional service-oriented architecture, which options indicate the main characteristic of microservice architecture?
WebGet WebInvoke
In design and implementation of RESTful web services, which types of operation contract definitions are used?
Implementing web service methods Defining web service interfaces Defining data contracts if needed
In design and implementation of SOAP web services, which are key steps in developing SOAP web services?
Reliability
In microservice architecture, which quality factor has improved due to the opportunity of incorporating fault tolerant mechanisms in-case of failure by each microservice?
Server Functionality
In the client-server architecture, what type of functionality does the 2nd tier handle?
Requirement Discovery Service Discovery Service Directory/Repositories Registration
In the three-party model of service-oriented software development, what are the responsibilities of service brokers?
Application Builder
In the three-party model of service-oriented software development, which role is handled by software engineers who understand the application domain?
Class Writing Class Testing Service Wrapping Service Hosting
In the three-party model of service-oriented software development, which tasks belong to the service providers?
HTTP
RESTful APIs work with which protocols without making any changes to its methods?
Database Server Functionality
Traditional client-server applications are examples of software monoliths. What does the third tier of the monolith handle?
Improving limitations in performance Limiting the design complexity Marking boundaries for each microservice
What are considered the most difficult issues and challenges to be addressed while implementing a microservice architecture?
Basket Microservice Identity Microservice Locations Microservice
What are essential microservices in the eShopping application discussed in the class?
Load Balancing Traffic Monitoring Security Requirements
What are some advantages of utilizing an API Gateway in microservice architecture?
Difficult to establish right boundaries Require more resources than monoliths Performance Issues Deployment Complexity
What are some challenges with microservices?
Adding clients from different platforms Addressing issues in modifiability
What are some potential challenges for the AIB Service-Oriented monolith design shown throughout the class?
Autonomous Services Dynamic Re-Composition Remote Invocation and Binding
What are some specifications added by the service-oriented computing paradigm?
SQL Oracle
What are some valid database technologies discussed in the class?
Use of cache memory for faster responses to API calls Exposes different implementations of same API for different platform
What are the advantages of using an API Gateway in a microservice architecture?
Types Binding Service portType Message
What are the key components of a WSDL document?
int piValue() int sum(int a, int b) int absValue(int a)
What are the math functionalities provided by the Math SOAP web service presented in class?
JSON and XML
What are the most commonly used data types in Service-Oriented Computing?
Agility Scalability
What are the most compelling factors for increasing microservice use by organizations according to LightStep?
Database Access Logic Application Integration Logic Presentation Components
What are the most important components included in the eShopping application discussed in class providing logical segregation of functionality development?
Modifiability Availability Reliability
What are the quality factors enhanced by microservice computing approaches?
Web Server | API Path | Parameters
What are the three key parts of a RESTful API call?
WebGet WebInvoke
What are valid operation contract definitions in REST?
User Defined Data Types [DataContract] Method Definitions [OperationContract] Interfaces [ServiceContract]
What can be part of the code included in an IService.cs file in C#?
Services maintaining their own data Developers developing and deploying services independently Services able to shutdown without impacting other services
What characterizes a service as a microservice?
Netflix Comcast Cable Amazon Uber
What companies demonstrated successful usage of microservice in the industry?
Enterprise Communication Bus (ECB)
What component can help decouple the client-side and server-side technology?
Uses a proxy object to call a web service
What does the code snippet do? int result = mathClient.absValue(-10);
Technology Independence Language Independence Platform Independence
What enables web services to be loosely coupled to the client application
Functionality needed to process a text document
What factors determine whether JSON can be used for a particular software project?
protocolMapping endpointBehaviors
What fields in the Web.config file need modifications to provide HTTP access?
Each service manages its own data Each service focuses on one major functionality Independent development of services from each other
What indicates the characteristic of services in vertical partitioning towards microservices?
Difficult to scale
What is a specific disadvantage of horizontal partitioning in software monoliths?
HTTP Client Objects
What is a valid alternative for HTTP web request objects used to demonstrate the use of REST API URLs?
No parameter is required
What is a valid parameter choice for a URL containing the int piValue() API method?
Separate management of each microservice
What is one of the reasons for better availability in microservice architecture?
Deploying the web service on a server
What is similar to the built-in internet information services (IIS) server in Visual Studio for testing purposes?
Console.WriteLine(p.address.zipcode);
What is the correct method to print the value of a variable provided by a JSON object on the Console output if object 'p' points to the JSON structure and C# is the programming language?
Integer
What is the return type of the int sum(int a, int b) method in the Math RESTful web service?
Modifiability is challenging
What is the specific disadvantage of applying one technology stack in a software monolith?
REST uses HTTP methods for communication
What is true about RESTful web services?
.NET and Visual Studio (C#)
What pair of framework and development platform was chosen to demonstrate the use of RESTful web services in this class?
Header file (Interface)
What role does the IService.cs play in C# analogous to developing in C/C++
Proxy Objects
What runs on top of the SOAP web service?
It is distributed across a network It uses web communication protocols Functionalities are grouped into services
What statements are true about service-oriented programming?
Cloud-Based Deployment
What technique helps improve the availability and scalability in a microservice architecture?
RESTful
What type of web services utilize URLs or URIs?
Devices with different capabilities accessing the same API interface
What was a major issue of the first iteration of the Netflix microservice transformation?
Scalability Performance
What were key considerations for Amazon to adopt microservice architecture?
Data Maintenance Spaghetti Codes at different layers Scalability
What were the major issues which the Netflix monolith architecture faced?
Replacing a broken service with an alternative service using APIs at runtime
When implemented, what can be considered dynamic binding in an application employing Service-Oriented Computing methodology?
Search Engines E-Trading Video Streaming
Which applications are suitable candidates for microservice architecture implementations considering the benefits?
HTTP
Which communication protocol should the API Gateway implement to provide ease of integration of different device platforms?
API Gateways
Which component of a microservice is essential, but optional?
Event Bus
Which component of the microservice architecture enables asynchronous communication amongst different microservices?
Utilizing shared memory at runtime for communication between objects Utilizing data abstraction in objects Utilizing encapsulation methods in objects
Which of the following can be considered as key characteristics of an object-oriented computing approach?
One Build and Deployment Unit Horizontal Partitioning
Which of the following characterizes a software monolith?
Service-Oriented Programming
Which programming approach has functionalities grouped into services and exposed as web accessible methods (APIs)?
Encapsulation Dynamic/Lazy-Binding Abstract Data Types
Which specifications are added by the Object-Oriented Programming Paradigm?
Parallel Processing
Which specifications are added by the multi-threading programming paradigm?
Strings " " Booleans Numbers null JSON Objects ( ) Arrays [ ]
Which structures do JSON utilize?
Microservice
Which type of software architecture has vertical boundaries between services?
Using different programming languages
While developing a client application using an OOC approach, which of the following factors should be carefully considered?
Boolean (T/F)
While developing a method called isPresent() which checks the availability of a particular method in a Web service, which of the following the most suitable return type?
Standardized Development High Security
Why is SOAP a better fit for developing financial applications?
Provides the necessary frameworks for SOAP to function
Why is it important to select WCF service option while creating a project in Visual Studio to utilize a Math SOAP web service?