Full Transcript

**IT332 -- Integrative Programming and Technologies** 1. **Integration of Software** refers to techniques for combining existing software components to form a complete system. 2. **Integrative programming** deals with integration approaches and techniques that connect different component...

**IT332 -- Integrative Programming and Technologies** 1. **Integration of Software** refers to techniques for combining existing software components to form a complete system. 2. **Integrative programming** deals with integration approaches and techniques that connect different components of IT infrastructure- people, applications, platforms, and databases to enable a secure, intra and inter-application collaboration. 3. **Application integration** assists in the unlimited sharing of data and business processes among any connected applications or data sources without making major changes to the applications or data structures. 4. **System Integration**- Given two or more systems, subsystems, or components, each of which function properly (satisfying their requirement within their environment). 5. **Functional Integration** is an inter-system communication where the integrated system should provide the new functionality or use the new technology while preserving the original system functionality. 6. **Incremental Engineering** is where a software system can be developed and delivered using available technologies and with less functionality than it is intended to finally provide. New technologies and or more functions then can be integrated into the system. 7. The **integration model** defines how applications will be integrated by defining the nature of and mechanisms for integration. 8. **The presentation integration model** allows the integration of new software through the existing presentations of the legacy software. 9. **The data integration model** allows the integration of software through access to the data that is created, managed, and stored by the software typically for the purposes of reusing or synchronizing data across applications. 10. **Heterogenous** -- each application implements its own data model. Concepts may be shared, but representation mismatches are to be expected. Mappings and transformations are required. 11. **File Transfer** - One application writes a file that another later reads. The applications need to agree on the filename and location, the format of the file, the timing of when it will be written and read, and who will delete the file. 12. **A Shared Database** is an Integration method where there is no duplicate data storage, no data must be transferred from one application to the other. 13. **Remote Procedure Invocation** - One application exposes some of its functionality so that it can be accessed remotely by other applications as a remote procedure. The communication occurs in real-time and synchronously. 14. **Middleware** is a software programming running at the top of the operating system and below the applications. It connects applications or software components. 15. **Based on the diagram below, the example is this,** A food delivery application. When a customer places an order, the order details are sent as a message to a messaging system. This message is then received by various components of the system, such as the inventory management system, payment gateway, and delivery tracking system. Each component processes the message independently, updating its own state accordingly. Diagram of a diagram of a channel Description automatically generated 16. **Shared Database -** A single physical data base can be shared by different applications running on different platforms. This method integrates applications by having them store their data in a single shared database. ![](media/image2.png) 17. **File Transfer** -- One of the possible solutions to allow these applications to be integrated is allowing each application produce files containing information that other applications need to consume. A diagram of a diagram Description automatically generated 18. In network programming**, Internet Protocol** is designed to allow multiple routes between any two points and to route packets of data around damaged routers. 19. **Transmission Control Protocol** is the backbone of HTTP/HTTPS protocol used to load web pages. 20. **Window** is a field in TCP Packet Structure that refers to the amount of data that a sender can transmit before requiring an acknowledgment from the receiver. 21. **Time-to-Live** - Maintains a counter that gradually decrements down to zero, at which point the datagram is discarded. 22. **Header Checksum** - Helps ensure IP header integrity. 23. **XML** is used in many aspects of web development and is often used to separate data from presentation. 24. **XML** was designed to carry data, focusing on what data is. 25. **HTML** was designed to display data, focusing on how data looks. 26. **XML Syntax Rules:** - XML Documents must have a Root Element - XML prolog is optional - All XML Tags should have a Closing Tag - XML Tags are Case-Sensitive - XML Elements must be properly nested - XML Attribute Values must be quoted - XML cannot contain white spaces 27. Naming examples in XML - \ - \ - \ - \ 28. **DTD** can be added in XML by separate documents, or they can be built into an XML document using a special element named. 29. **XML element** is everything from the element's start tag to the element's end tag. An element can contain text, attributes, or a combination of both. 30. **XML Schemas (XSD)** - used in most Web applications as a replacement for DTDs, for such reasons as XML Schemas are extensible to future additions, are richer and more powerful than DTDs, XML Schemas are written in XML and support data types and namespaces. 31. **XML validator** is used to syntax-check your XML. The errors in XML documents will stop your XML applications, unlike HTML browsers. 32. XML document with correct syntax is called \"Well Formed\", and an XML document validated against a DTD is \"Well Formed\" and \"Valid\". 33. XSD attributes - Simple elements cannot have attributes - If an element has attributes, it is considered to be of a complex type. - The attribute itself is always declared as a simple type. - Example of an XSD Attribute: \ 34. XSD complex elements can contain only other elements, text, and both elements and text. 35. The syntax if the child elements can appear in any order, and that each child element must occur only once - \ 36. The syntax in specifying that either one child element or another can occur - \ 37. **HTML DOM** defines a standard way for accessing and manipulating HTML documents. All HTML elements can be accessed through the HTML DOM. 38. The XMLHttpRequest object can be used to request data from a web server where you can update a web page by reloading the page. 39. **Parsed Character Data (\#PCDATA)** is a string data type. 40. Design Pattern also called **micro-architecture** 41. All are Gang of Four (GoF) Design Patterns book describes 23 patterns arranged into three groups that classify how the patterns are used. - Structural Patterns - Creational Patterns - Behavioral Patterns 42. **API** are sets of requirements that govern how one application can talk to another. 43. An **abstract class** is a class that contains one or more abstract methods. 44. In abstract method and classes for inheritance: - Includes the method name, the list of arguments, and the return type, without implementing the method\'s body. - Can use the abstract keyword to declare an abstract method. - Must declare with a class-modifier abstract and provide a template for further development. 45. In versioning and version control: - Version control enables multiple people to simultaneously work on a single project - The team can roll back to a previous version, reproduce, and understand a bug report on a past version - It uses a repository, which refers to a database of changes, and a working copy, called checkout where you do your work 46. A feature offered by the firebase: - Authentication - Realtime Database - Crashlytics 47. **Firebase Cloud Messaging** is a service that lets businesses send messages to their users\' devices, even if they\'re not using the app. 48. **Firebase Crashlytics** is a service that helps organizations track and fix crashes in their app. 49. **Firebase Performance** Monitoring provides insights into the performance of their app. 50. **Firebase Test Lab** is a cloud-based service that lets developers test their apps on a variety of devices and configurations.

Use Quizgecko on...
Browser
Browser