Reviewer for Integrative Programming and Technology (IPT) PDF
Document Details
Uploaded by IrreplaceableSanctuary2347
Tags
Summary
This document provides an overview of Integrative Programming and Technology (IPT), focusing on the introduction to integrative programming, types of system integration (EAI, point-to-point, vertical), benefits of system integration, and roles of APIs and web services. It also covers basic definitions and concepts. It is aimed at the second-year students.
Full Transcript
Reviewer For Integrative Programming and Technology (IPT) First Sem (2nd year) departmental silos and fostering a more unified Module 1: Introduction to Integrative...
Reviewer For Integrative Programming and Technology (IPT) First Sem (2nd year) departmental silos and fostering a more unified Module 1: Introduction to Integrative view of operations. Unlike Programming vertical integration which Introduction connects systems within a Integrative programming involves blending single department, ir programming languages and tools to bridges the gap between create efficient systems that work together departments. seamlessly as modem software systems become more complex. It is crucial to Benefits of System Integration integrate technologies to enable diverse Increased Efficiency and applications to communicate and share Productivity data efficiently. Reduced Costs Improved Data Visibility and Types of System Integration Accuracy 1. Enterprise application Improved Competitive Advantage integration (EAI) - is a specific Enhanced Collaboration type of system integration that Scalability and Flexibility focuses on connecting various Better Customer Experience software applications within a Simplified IT Management single organization. It specifically targets enterprise applications Examples of System Integration used by different departments, like Inventory Management & CRM, ERP (Enterprise Resource Point-of-Sale (POS) integration Planning), and inventory Electronic Health Records (EHR) & management systems. Appointment Scheduling Systems 2. Point-to-point integration - is a type Integration of system integration where CAD & Manufacturing Execution individual systems are directly Systems (MES) Integration connected to share data or Banking Systems & Accounting functionalities they need to work Software Integration together. Unlike other methods that CRM & Marketing Automation rely on a central platform, Integration point-to-point integration establishes a dedicated link Roles of APIs and Web Services between the two systems involved, APIs and web services are integral to enabling faster data exchange and system integration, providing standardized potentially less complexity in the methods for interaction between systems initial setup. regardless of programming language or 3. Vertical integration - focuses on platform. connecting various systems within a specific department or business Terminology Definition function within an organization. It XML (eXtensible Markup aims to create a streamlined Language) workflow and improve efficiency by JSON (JavaScript Object Notation) unifying data and functionalities HTTP (HyperText Transfer within a particular area. Protocol) a. Horizontal integration - SOAP (Simple Object Access brings together Protocol) functionalities and data REST (REpresentational State from different departments Transfer) within an organization, Web applications (Web app) breaking down Reviewer For Integrative Programming and Technology (IPT) First Sem (2nd year) What is a Web Service? Parameters A web service is a way for two Body machines to communicate with each other over a network. What is Programming Language Advantages of Web Services Interoperability? Interoperability It refers to the ability of different Deployability programming languages to interact within Usability the same application or system. Reusability Cost Interoperability is the ability of different programming languages to communicate Types of Web Service Testing effectively within the same software 1. SOAP Web Services: SOAP is an environment. XML-based protocol for accessing web services. Its interface is Importance of Interoperability described in a Code Reuse: Allows existing code machine-processable format called written in one language to be used WSDL (Web Service Definition by applications in another, Language) document. reducing redundancy. 2. REST Web Services: REST is a Efficiency: Leveraging style of software architecture. The language-specific strengths can data format is described by using optimize performance, such as JSON schema notation, and it using Python for data processing requires the use of the HTTP and Java for scalability. transport protocol. Maintainability: Enables teams to maintain legacy systems while What is an API? integrating newer technologies, An API, or Application Programming avoiding complete rewrites. Interface, is a set of definitions and protocols that allow one application to What is Cross-Platform Development? communicate with another application. It refers to the practice of creating software applications that can run on Is a REST API a web service? multiple platforms or operating systems. A REST API is a standardized architecture style for creating a Why Cross-Platform Development? Web Service API. One of the Write once, run anywhere requirements to be a REST API is Cost-efficient and faster the utilization of HTTP methods to development make a request over a network. Consistent user experience REST was officially defined by a Ease of maintenance computer scientist Roy Fielding in Access to a wider range of 2000 during his Ph.D. dissertation. developers The implementation of the frontend “client” can be built completely Challenges of Cross-Platform independently from the backend Development “server.” Performance issues Debugging complexity A REST request from the client to the Limited access to native and server usually consists of the following updated features components: App store approval challenges URL Path HTTP Method Header Reviewer For Integrative Programming and Technology (IPT) First Sem (2nd year) heavyweight web service typically used in enterprise environments. 2. REST (REpresentational State Five well-known platforms Transfer) is a set of design rules to React Native - is a popular exchange data over the internet open-source framework for using simple HTTP messages. building mobile apps using REST is a lightweight alternative to JavaScript and React and is SOAP that uses HTTP requests to developed by Facebook exchange data in JSON format. PhoneGap/Cordova - is an open-source mobile development SOAP Web Services framework. It enables developers SOAP stands for Simple Object Access to use various web technologies Protocol, is a network platform used in a such as HTML, CSS, and web service to exchange or communicate JavaScript to build cross-platform data between two different machines on a mobile apps. network. It uses the XML format of data to Flutter - is an open-source UI transfer messages over the HTTP toolkit created by Google for protocol. In Web services, SOAP allows building natively compiled the user to request and interact with other applications. programming languages. In this way, it Xamarin - Owned by Microsoft, it provides a way to communicate between allows developers to use C# and applications running on different platforms the.NET framework to build (Operating system), with programming cross-platform mobile apps. languages and technologies used in web Ionic - is a framework for building service. cross-platform mobile applications using web technologies like HTML, Characteristics of SOAP CSS, and JavaScript/TypeScript. It It is an open standard protocol uses Angular as its primary used in the web service to JavaScript framework. communicate via internet It is used to broadcast a message over the network Module 2: Web Service and API It is used to call remote procedures Integration and exchange documents Introduction It can be used on any platform and Web services and APIs are components in can support multi-languages. So, it software development as they facilitate is a platform and language communication and data sharing between dependent systems efficiently and securely through It uses the XML format to send the internet using protocols like SOAP and messages over the HTTP protocol REST. APIs establish the guidelines and The structure of a SOAP message frameworks for interaction among software consists of an envelope, header, elements to enable information exchange and body element. between applications. How SOAP works Introduction to Web Services (SOAP, A SOAP client generates a request which REST) is an XML document (also known as a 1. SOAP (Simple Object Access SOAP message) and sends it to a SOAP Protocol) is a protocol that uses Server using HTTP or HTTPS protocol. XML format for exchanging data The server responds with a XML and it defines a set of rules on how document (SOAP Message) that contains to transmit and receive this XML the data requested by the client. data. SOAP is a more traditional, Reviewer For Integrative Programming and Technology (IPT) First Sem (2nd year) It is slow because it uses XML format, whereas the payload for a SOAP Message Structure simple string message is large. SOAP Envelope: At the root of the There are no security features in SOAP message is the the SOAP specification. element and it is mandatory. It There is no state reference for the consists of an optional remote object in the SOAP client. element and the mandatory element. REST Web Service SOAP Header: The Is a set of architectural guidelines for element is a child element of the building web services. It is based on a. It is optional and if client-server model, where the client exist, it must be the first child sends a request to the server and the element of Envelope and contains server responds with data or an action. application related information that Web services that follow REST is used for processing the architecture are called RESTful Web message. Services. RESTful web services are built Header Blocks: using HTTP and follow a set of element can have one or more constraints, such as being stateless and child elements and these are having a uniform interface. The most called Header blocks. They can common HTTP methods used in RESTful be SOAP defined attributes or web services are GET, POST, PUT, and application defined attributes. Few DELETE, which correspond to the CRUD examples of SOAP defined (Create, Read, Update, and Delete) attributes are encodingStyle, actor, operations. RESTful web services typically mustUnderstand and relay. return data in a format such as JSON or SOAP Body: The element XML. is a mandatory element and contains the data that is How REST Works exchanged between the SOAP The purpose of developing a RESTful web sender and receiver. service is to make the web service more Fault: The element is a effective. Roy Fielding developed it in child element of Body and is used 2000, who also developed the HTTP for reporting errors that occur while protocol. It does not depend on a specific processing the SOAP message. protocol to use, but it’s used HTTP/HTTPS This element is optional. Characteristics of REST Advantages of SOAP It is a Stateless server It is a platform-independent It supports JSON and XML operating system that can run on It is simpler than SOAP Linux, Windows and macOS. It has well-maintained SOAP uses a default protocol to documentation that reflects each send the message over a network, change in the architectures of the and all web applications support it. REST. It has an XML format that includes It is a simple approach to build the the message structure during the client and server service. message’s processing. It follows standard protocols such as HTTP, HTTPS and FTP. Disadvantages of SOAP It provides a way to connect with SOAP uses only XML format data server-side applications in web service, whereas JSON and It is based on an architectural style other lightweight formats are not for designing simple, lightweight, supported by it. Reviewer For Integrative Programming and Technology (IPT) First Sem (2nd year) and distributed web services containing compared to SOAP. new ID Examples of REST Systems are: Google Glass API, Amazon web GET 200 (OK): 200 (OK): services, Atom, Tesla Model S. List of users. Single Use user. 404 A RESTful Web Service must adhere to pagination, (Not the following key principles sorting, and Found): If Seperation of concerns between Rea d filtering to ID not client and server navigate found or Self-descriptive messages large lists invalid Stateless communication Cacheable PUT Updat 405 (Method 200 (OK) or Identification of resources e/Repl Not Allowed): 204 (No Layered Design ace Unless you Content): Manipulation of resources through want to Use 404 representations update every (Not Hypermedia as the engine of resource in Found) if ID application state (HATEOAS) the collection is not found or Constraint and the principles of REST invalid Client-server Uniform Interface PATC Partial 405 (Method 200 (OK) or Stateless Server H Updat Not Allowed): 204 (No Cacheable e/Mod Unless Content): Layered System ify modifying Use 404 the collection (Not itself Found) if ID HTTP METHOD OF REST WEB is not SERVICE found or GET invalid DELETE POST DELE Delete 405 (Method 200 (OK): PUT TE Not Allowed): 404 (Not Unless Found): If deleting the ID not SUMMARY OF HTTP METHODS entire found or collection — invalid use with caution HTTP CRUD Collection Single Metho Resource Resource d (e.g., /users) (e.g., /users/123) Advantage of REST API REST web services are fast as compared to SOAP because it has no restriction like SOAP. It POST Creat 201 Avoid consumes less bandwidth and e (Created): using resources. 'Location' POST on a It is an architectural style for header with single creating lightweight, scalable and link to resource maintainable web services. /users/{id} Reviewer For Integrative Programming and Technology (IPT) First Sem (2nd year) It is a language and platform- Usage Messages are Relies on independent web service that can wrapped in HTTP protocol be written in any programming envelopes and for language and run on Windows, sent using communication Linux and Mac. various transport between two REST web service helps the client protocols like machines machine access different formats SMTP, FTP, of data such as HTML, JSON, HTTP XML, etc. from the webserver. DIFFERENCE BETWEEN SOAP AND EXAMPLE REST WEB SERVICE CATEGO SOAP Web REST Web RY Service Service Definition Simple Object REpresentation Access Protocol al State Transfer Protocol XML-based Not a protocol; messaging an architectural protocol style for distributed hypermedia systems Performa Requires more Requires less WHAT IS XML? nce bandwidth and bandwidth and resources, resources, XML (eXtensible Markup leading to lower offering better Language) is a widely used file performance performance format to store and exchange structured data. Saving XML files Message Enforces XML Supports XML, correctly is crucial to maintain the Format JSON, etc. integrity of the data they contain. XML is a markup language that Security Defines its Inherits defines a set of rules for encoding security security like documents in a format that is both HTTPS human-readable and machine-readable. It is often used Error Does not Has built-in to structure data and enable the Handling support built-in error handling exchange of information between error handling different systems and applications. Flexibility Heavyweight Lightweight, protocol scalable, and WHAT’S THE DIFFERENCE BETWEEN requiring more maintainable JSON AND XML? coding JSON and XML are data Caching Cannot be Can be cached representations used in data cached exchange between applications. Reviewer For Integrative Programming and Technology (IPT) First Sem (2nd year) JSON is an open data interchange Flexibilit More flexible Complex and format that is readable by both y less flexible people and machines. JSON is independent of any programming Data Supports Supports all language and is a common API Types numbers, JSON types plus output in a wide variety of objects, strings, additional types applications. arrays, and like Boolean, XML is a markup language that Booleans dates, images, provides rules to define any data. It namespaces uses tags to differentiate between data attributes and the actual data. Ease of Smaller file Complex tag While both formats are used in Use size; faster data structure leads data exchange, JSON is the transmission to bulkier files newer, more flexible, and more popular option. Security Safer than XML Requires turning off DTD (Document Type Definition) to DIFFERENCE BETWEEN JSON AND mitigate potential XML security risks CATEGO JSON XML RY Stands JavaScript Extensible For Object Notation Markup Language History Released in Released in 2001 by 1998 by the XML Douglas Working Group Crockford and Chip Morningstar Structure Uses a Stores data in a map-like tree structure structure with with key-value pairs namespaces for different categories Syntax Compact and Verbose; easy to substitutes read/write characters for entity references Parsing Parsed using a Requires an standard XML parser JavaScript function Reviewer For Integrative Programming and Technology (IPT) First Sem (2nd year)