Intro

¡Supera tus tareas y exámenes ahora con Quizwiz!

Important to component design is the Design Thinking methodology, which entails five steps:

Empathize: Understand your users. Define: Determine and describe your users' needs. Ideate: Come up with alternatives. Prototype: Create solutions. Test: Test solutions and pick the best ones.

Information

is derived from data

Mainframe:

A multi-user computer used for bulk data processing. While an older technology, mainframes are still widely used in such applications as: -Banking and financial transactions -Government and census processing -Healthcare and insurance claims processing o Mainframe performance is measured in MIPS, or million instructions per second, whereas servers are measured in FLOPS, or floating-point operations per second.

Minicomputer:

A multi-user computer, aka mid-range computer or simply a server, which is a computer that provide functionality for other devices, which are called clients. Servers are generally one of four (4) types: Application: Runs software applications; CPU & RAM-intensive. File: Stores files; not CPU & RAM-intensive but uses clustered storage (RAID). Database: Store databases & runs database management system software. Web: Runs websites.

structured data?

§ Data can be structured, semi-structured, and unstructured. · Structured: Data arranged in tabular format; i.e. rows and columns. · Semi-structured: Data that isn't organized into a tabular format, but still has tags or other identifiers that describe what the data is; e.g. forms. · Unstructured: Data that has no description of what the data is or how it's organized; e.g. books.

Business Intelligence (BI) systems

are information systems that process operational, social, and other data to identify patterns, relationships, and trends for use by business professionals and other knowledge workers.

Local Area Networks (LAN)

are networks that cover a house or a building, typically employing the Internet Protocol (IP) using IP private addresses to communicate with other devices on the same local network using wired and/or wireless connections.

Wide Area Networks (WAN)

are networks that extend beyond a single building or site. They can include campus area networks and metropolitan area networks.

SQL statements

are queries comprised of clauses, predicates, expressions, operators, and insignificant whitespace.

data model:entity

is a thing stored in a database. For the most part, entities in a data model are roughly analogous to tables. Entities have attributes, which describe the characteristics of an entity, and identifiers, which is an attribute or group of attributes with a value associated with one and only one entity instance. An identifier is also known as a key.

Information Technology (IT)

is the study or use of computer and telecommunication systems for storing, retrieving, and sending information.

Supercomputer:

A computer noted for its high level of performance, usually relying on parallel processing.

Binary

Eight (8) bits grouped together are a byte or B

· Frequencies & Capacities Computers execute the machine cycle billions of times per second.

-A hertz is one cycle per second. -Computer science uses the International System of Units to describe frequencies and capacities. -Metric prefixes are common for frequencies; e.g. kilo, mega, giga, etc. -While metric prefixes are also commonly used to describe capacities, capacities are more accurately described using IEC prefixes, etc.; e.g. kibi, mebi, gibi

· What is "the cloud?"

-According to cloud providers, it's the "the on-demand delivery of compute power, database, storage, applications, and other IT resources via the internet with pay-as-you-go pricing." -Ultimately, it's data centers connected by the internet or wide area networks.

Whitespace:

-Added for human readability but ignored by the DBMS when running a SQL query. -SQL is case-insensitive, which means "SELECT" and "select" have same meaning in SQL statements. However, when working on this assignment, values & conditions are case-sensitive.

Why binary?

-Because a computer's Central Processing Unit (CPU) has trillions of transistors, which are really just switches. Thus, each transistor conveys a state, or a condition that something is in at a particular time, e.g. off or on, 0 or 1. -A byte can represent any number from 0 to 255.

Databases, data containers and data management systems.

-Databases hold structured data. -Data containers can hold semi-structured and unstructured data. A data container has two different connotations: · A data application that includes all the necessary dependencies, libraries, binaries, and configuration files packaged together so that they can be transported from one computing environment to another; e.g. Docker. A platform like Docker lets one package and share applications in a virtual container that can run on any typical operating system found in the business environment, e.g., Windows, Linux and macOS, whether it's on premises or in the cloud. The advantage of using data containers is that the same data can be shared with multiple users using multiple applications. The data in a data container is stateless, therefore it remains the same no matter how many times it's shared. · A data container can also be a form of cloud storage that is useful for such things as data lakes. For example, in Microsoft's cloud platform, Azure, data storage is done using "blobs," (no, I didn't make that up!) that contain logical groupings called... you guessed it... containers. In Amazon Web Service (AWS), those containers are called S3 "buckets." Buckets and blobs are limitless in size, and you can store any kind of data.

An IS is composed of five (5) components:

1) Hardware, 2) Software, 3) Data, 4) Procedures, and 5) People

Analog computers

1) operate on a continuum of values, 2) the quantities of interest are represented by physical parameters, and 3) they are designed to solve one problem.

Hardware development entails: Proof of Concept:

A model with some or complete functionality may be built to determine the feasibility of developing the product per the requirements. There may be individual POCs to address specific feature functionality. Lessons learned from the POC build(s) are rolled into the next step, which is Design.

database?

A database is an organized collection of structured data that is self-describing. o What is structured data?

self-describing?

A database is self-describing because it contains data about the data stored in the database. Data about data is called metadata. Metadata tells us what kind of data is stored in each record for a particular field.

Microcomputer:

A small-scale computer that typically has a single-chip microprocessor that's intended to be used by one person, aka a personal computer or PC. Examples include: Desktops Laptops Tablets Smartphones

In order to obtain good information, data needs to be:

Accurate. Timely. Relevant. Just sufficient. Worth its cost.

· Advantages of The Cloud

Agility: The ability to respond quickly to changes in demand. Agility in cloud computing means being able to spin up a new server in minutes. Elasticity: The ability to dynamically increase and decrease resources programmatically. Lower Cost: In cloud computing, you only pay for what you use, and because you don't own the hardware, you lower your capital expenditures and fund your IT infrastructure through operating expenditures. Not only is it a lower cost, it's also a known cost, because you know how much it will cost to spin up new server instances. Continuous Availability & Survivability: Cloud providers operate multiple data centers within a given area and operate in multiple areas within a region and in multiple regions around the world. An application can be distributed to run across multiple regions No Obsolescence: Cloud providers continuously upgrade their network and data center infrastructure. Best-of-Breed Security: Cloud providers provide robust network security. Economies of Scale: Because cloud providers buy hardware and network access in high volume, they're able to offer lower prices for use of that hardware.

Domain Name System (DNS):

An application layer protocol that operates on UDP port 53 and is used for converting domain names (part of a uniform resource locator, or URL) into IP addresses for the purposes of routing.

Expression:

An expression is a scalar values. What's that? Well, in computer programming, a scalar value or variable is a memory address paired with a symbolic name. In SQL, an expression is the value or variable to be modified or searched for.

ACID stands for:

Atomicity: Atomicity is another way of saying "all or nothing." What that means is a database may have several actions per transaction, like an update in one table and a delete in another. Atomicity requires that all the actions occur per transaction, or none of them do. Consistency: Consistency means a transaction will change the database from one consistent state to another consistent state. Thus, if a transaction violates the database consistency rules, the entire transaction will be rolled back. Isolation: Isolation tells us that during concurrent transactions, the changes made aren't "visible" to the other transactions until the transactions are complete. Durability: Durability means a committed transaction will never be lost, even when an abnormal termination occurs.

After unit testing, integration testing occurs. There are four approaches to integration testing:

Big Bang: Involves coupling all software modules or system components together at the same time and then testing. It's useful because the entire system is tested at once, but good luck trying to isolate the source of bugs, so it's best to use this approach when testing small systems. Risky-Hardest: An incremental testing approach that involves testing the riskiest and hardest modules or components first. The advantage of this approach is that by devoting the most testing time to the riskiest or hardest component, you're more likely to identify showstoppers early, but you have to correctly identify which module or component is, in fact, the riskiest or hardest to gain the benefit of this approach. Bottom-Up: Lower-level modules and components are tested first, followed by higher level components that rely on the lower levels. Top-Down: Higher level modules are tested but require the use of test drivers to simulate lower levels of the software or system.

· As a Service

Cloud computing allows customers to purchase just what they need in terms of service layers, which include: § Hardware: This includes the physical computers and network equipment necessary to connect to the internet and the virtualization needed to run a virtual server instance. § Operating System: This includes the software that controls the basic functions of the computer; it manages hardware and software resources, and it provides common services for computer programs. § Middleware: This includes such things as web server software and database management system software. § Application: Software that performs specific tasks unrelated to the actual operation of the computer itself that the end user interacts with.

There are three primary BI activities:

Data acquisition is the process of obtaining, cleaning, organizing, relating and cataloging source data. BI analysis is the process of creating business intelligence; the three fundamental categories of BI analysis are 1) reporting, 2) data mining and 3) Big Data. Publish results is the process of delivering business intelligence, either through push publishing, which is sent without request, or pull publishing, which explicitly requires a user request.

data?

Data is facts and statistics collected together for reference or analysis.

organized data?

Data that is structured is also, by default, organized. In the case of a database, data is organized by tables, which serve as the containers for data. Databases typically have more than one table, with each table being focused on a single topic. Each table organized by column as fields and by row as records, aka tuples. A field represents a single piece of information, like name or address. A record represents the related values for each field.

Hardware development entails:Support:

Documentation is created to describe the product, capabilities, and use.

Hardware development entails:Testing:

During and after the manufacturing process, components will be inspected and tested. After manufacturing, the final product undergoes integrated testing to ensure all components work together to produce the desired results according to the design parameters.

· Machine Cycle

Fetch: The first step in the cycle involves the CPU retrieving an instruction from memory. Decode: The Control Unit of the CPU decodes the instruction and determines what it means. Then it directs that the pertinent data is moved to the ALU. The fetch and decode steps combined are called the instruction time, or I-time. Execute: The ALU executes the instruction. Store (Write Back): The ALU then stores or writes back the result of the execution step back to memory. The execute and store steps combined are called the execution time, or E-time. o I-time plus E-time equals the machine cycle.

o Two common approaches to automated testing of software include:

Graphical user interface testing: Testing is done through the generation of user interface events, like keystrokes or mouse clicks, and viewing the results compared to the expected results. API-driven testing: The test framework typically bypasses the user interface and uses a programming interface to test the application.

· What is an Information System (IS)?

IS is an integrated set of components for collecting, storing, and processing data and for providing information, knowledge, and digital product.

·Computers have five (5) basic operations:

Inputting: The operation performed by the Input Unit and involves feeding instructions and data to the computer. Inputs come from various sources, including the keyboard, mouse, the computer's hard drive, memory, and data incoming from a network through a network (wired or wireless) interface card, and ultimately involves encoding data to a binary format usable by the computer. Outputting: Sending binary data via the Output Unit to some component, whether it's the computer's RAM or hard drive, or in some cases decoding it via a graphics processing unit (GPU) so that it's human-readable on a video screen, through an audio card to make it understandable on speakers, or to a printer. Storing: A process managed by the Storage Unit. Before data can be processed, it needs to be stored or held in memory. Processing: Where the so-called "thinking" is done, and it's performed by the Arithmetic and Logic Unit (ALU) on a computer's CPU. The ALU takes in inputs, does all the math, performs all the instructions given to it by the program being executed, and outputs data that is to be used by the program, a component of the computer, the user, or all of the aforementioned all at once. Controlling: Done by the Control Unit (CU). If the ALU is the brain, the CU is the rest of the central nervous system, as it directs the operation of the I/O Unit and ALU by providing timing and control signals.

· What is a Management Information System (MIS)?

MIS is a computerized information-processing system designed to support the activities of company or organizational management. In other words, MIS is IT for business.

Non-Routine Cognitive Skills: Experimentation

Making a reasoned analysis of an opportunity, envisioning potential solutions, evaluating those possibilities, and developing the most promising ones, consistent with the resources you have.

MIS is composed of three (3) components:

Management & Use: Management refers to developing, maintaining, and adapting information systems that meet the needs of the organization. Use refers to employing an information system to accomplish a job task. Information Systems: An integrated set of components for collecting, storing, and processing data and for providing information, knowledge, and digital product. Strategies: Plan(s) of action or policy designed to achieve a major or overall aim.

Processors can be classified according to feature functionality:

Multithreaded processor: A processor able run more than one thread of code at the same time. This is sometimes referred to as parallelism and is how computers multitask. Multicore processor: A processor with more than one core. A core is essentially a CPU unto itself. Modern processors are multicore and multithreaded; e.g. an Intel i9-7960XE has 16 cores and runs 32 threads. In-order/out-of-order processors: In-order processing means the processor executes each instruction in the order it was received in binary; out-of-order processing means the processor can execute instructions in a different order than what was received in binary. Being able to execute instructions non-sequentially allows the processor to handle multiple threads and therefore run multithreaded programs more quickly. Scalar/superscalar processors: A scalar processor is one that cannot execute more than one instruction in at least one of its pipeline stages, thus it cannot achieve more than one instruction per cycle. A superscalar processor, in a nutshell, can achieve more than one instruction per cycle. More instructions executed per cycle means faster execution. So, superscalar processors are super!

Hardware development entails:Manufacturing:

OTS components are acquired. Specialized components are manufactured. Components are then assembled into the final product.

· System Definition

Once a need for a system is identified, system definition occurs, which involves the following: -The systems scope and goals are defined. -Feasibility (cost, schedule, technical and organizational) is assessed. -The project team is formed. -The project is planned.

Project planning involves:

Personnel: Who's on the team and who's doing what. Tasks: What's being done. Schedules: When are things being done. Dependencies: What needs to be done first, second, third...

This because CPUs are either:

RISC, or Reduced Instruction Set Computer CISC, or Complex Instruction Set Computer

Non-Routine Cognitive Skills: Social Skills

Skills needed to successfully interact with those around you, particularly the ability to persuade and negotiate.

· Software

Software is the set of programs, procedures and routines associated with the operation of a computer. Basically, software is a set of instructions that tell computer hardware what to do.

Predicate:

Specifies conditions that can be evaluated as being true, false or unknown. These conditions are typically field names or attributes. They're used in conjunction with expressions.

Non-Routine Cognitive Skills: Critical Thinking

The ability to exercise careful evaluation in order to determine the authenticity, accuracy, worth, validity, or value of something.

· Non-Routine Cognitive Skills: Systems Thinking:

The ability to model the components of the system to connect the inputs and outputs among those components into a sensible whole that reflects the structure and dynamics of the phenomenon observed.

Computer Architecture: Instruction Set Architecture (ISA):

The architecture related to the computer's programming, i.e. it's the method by which a program's compiled code is executed by the processor. Common instruction set architectures are x86, x86-64, and x64.

Operator:

The arithmetic and logical glue that holds statements together.

Hardware development entails:Design:

The components are design by first committing to an architecture that enables the desired functionality, ideally while using the most cost-effective materials and manufacturing techniques. The functional block design derived from the architecture is translated into detailed component designs. Modeling may me used to verify design assumptions.

Clause:

The constituent components of statements, and include words such as SELECT, INSERT, UPDATE, WHERE, etc. They spell out what you're trying to ask.

Computer Architecture:Microarchitecture:

The hardware implementation of the instruction set architecture, i.e. it's the combination of components and circuitry that make up the processor.

Non-Routine Cognitive Skills: Life-Long Learning

The willingness to pursue knowledge beyond formal schooling.

business intelligence

These patterns, relationships, trends and predictions are referred to as business intelligence.

oClients are generally one of two (2) types:

Thick: Full OS and applications are resident on the client. Thin: Minimal OS and applications are resident on the server; uses virtualization, which the process of running a virtual instance of a computer system in a layer abstracted from the actual hardware; e.g. Citrix.

Non-Routine Cognitive Skills: Collaboration:

Two or more people working together to achieve a goal.

Data and information are not the same thing;

information only exists as a function of human perception.

data model

is a high-level abstraction showing the organization of data elements and their relationships. There are various types of data models—conceptual, logical, physical—but all take on characteristics of an entity-relationship model (ERM) or diagram (ERD).

The Internet of Things (IoT)

is a network of "things," objects which are embedded with computer controllers and sensors that communicate with other devices or systems using the internet.

Business-ready

is being technically and tactically proficient in the knowledge and skill areas that a person engaged in business is expected to know.

Computer Network

is simply two or more computers connected together in some way to allow for the communication of electronic data between them. -can be wired, meaning communication occurs through some physical medium like a cable -can be wireless, meaning communication occurs using radio waves

Non-routine cognitive skill

is the ability and capacity to carry out cognitively challenging processes and be able to use one's knowledge in a responsible way to achieve a goal.

Normalization

is the process of structuring a database to reduce data redundancy and improve data integrity.

A goal in database design is to

normalize data

Digital computers

o 1) use discrete values, 2) the quantities of interest are symbols, and 3) they can solve a multitude of problems.

International System of Units

o A multi-user computer, aka mid-range computer or simply a server, which is a computer that provide functionality for other devices, which are called clients. Servers are generally one of four (4) types: Application: Runs software applications; CPU & RAM-intensive. File: Stores files; not CPU & RAM-intensive but uses clustered storage (RAID). Database: Store databases & runs database management system software. Web: Runs websites.

· Protocols

o A protocol is a set of rules, procedures, or agreed upon conventions for transmitting data. Protocols are often associated with ports. o Ports are communication endpoints, of which there are 65,536, ranging from ports numbered 0 to 65535, and it's always associated with the IP address and the transmission protocol used for communication. o Hypertext Transfer Protocol (HTTP): An application layer protocol that operates on TCP port 80 and is used to send and receive web traffic. Being phased out. o Hypertext Transfer Protocol Secure (HTTPS): An application layer protocol that operates on TCP port 443 and uses transport layer security (TLS) to encrypt data in flight to send and receive web traffic. Replacing HTTP.

· Implementation - Conversion

o After testing is completed, conversion to the new system takes place. There are four methods for conversion: Pilot: Implement entire system in limited portion of business. The advantage of this method is it limits exposure to business if system fails. Phased: System is installed in phases or modules. The advantage of the phased approach is testing is done along the way as each new component is added, so risk is reduced. However, it is by far the lengthiest approach. Parallel: Complete new and old systems run simultaneously. This is arguably the safest approach as issues with the new system have little effect on the organization, but it's the costliest approach as it requires duplication. Plunge: Doing a direct cutover. Taking the plunge is pretty much a sure-fire way of getting fired if you're the one who made the decision and it doesn't go well. The plunge method is by far the riskiest conversion method. That's not to say businesses don't use direct cutover, but it's best to employ the method with systems that aren't mission-critical.

Application

o Application software performs specific tasks unrelated to the actual operation of the computer itself.

Operating System Components

o Bootloader: Software responsible for booting (starting) a computer; it's the first program that launches when starting a computer. o Kernel: The basic level or core of an operating system, responsible for resource allocation, file management and security; it's the first part of the operating system loaded and it remains resident in memory as long as the computer is powered on. The kernel handles the rest of the startup process, including memory management, detecting peripherals and loading their drivers, and processing input/output requests from other software started at bootup. o Device driver: Software code that interacts with hardware, allowing communication to and from the hardware through the system bus and device interfaces. The purpose of the driver is to translate operating system function calls into device-specific calls. o Application programming interface (API): Software code that allows two programs, like an operating system or application, to talk to each other. o File system: Controls how data is stored and retrieved. o User interface: Two types: -Command line interface (CLI): A text-based interface that allows users to type commands directly into the system in real time. Another term for the CLI is the so-called "green screen." -Graphical user interface (GUI): A graphic- and audio-based interface that allows users to click on icons in order to interact with the computer.

· Database Applications

o Database applications often look like webpages or apps like iTunes, but they're really a package of forms, reports, and queries. Let's start with queries first. Query: A query is a search based on data values provided by the user. Search, as we all recognize, is that field at the top of a webpage, or that magnifying glass icon, or even the URL bar of your web browser. Behind that magnifying glass is a bit of code that that executes a SELECT and WHERE SQL statement (if it's a relational database). Report: The result of a query is a report, which is a structured presentation of data using sorting, grouping, filtering and other operations. Form: Forms can be used to view data, insert new data, update existing data or delete existing data. An example of a form is the shopping cart page on Amazon where you enter in your shipping and billing data.

· Feasibility

o Feasibility assessment simply answers the question whether the development project can be successfully undertaken by looking at: Cost: Do we have enough money to make this? Or, can we make this and be profitable? These are the questions that are answered when determining cost feasibility. Schedule: Do we have enough time to do this with the team we have, or do we need more resources to do this within the time we've scheduled? Technical: Can we even make this? Do we have the technology? Organizational: Is this even something our organization can do or would want to do?

Organizational, aka Industrial IoT:

o IIoT architecture can be described in a four-layer model, which includes: § Content Layer: User interface devices, like a human-machine interface, computer screens and the like. § Service Layer: Applications and software to analyze data and transform it into actionable information. § Communication Layer: Communication protocols. § Device Layer: Hardware such as programmable logic controllers (PLCs), microcontrollers, remote terminal units (RTUs), sensors, and actuators.

In Design Thinking, creating solutions falls under prototyping, but there are actually three ways in which solutions are created:

o In Design Thinking, creating solutions falls under prototyping, but there are actually three ways in which solutions are created: A Minimal Viable Product (MVP) is a version of a product with just enough features to, as the name implies, stay viable. · Startups often fail because they end up launching a product no one needs · MVPs allow companies to bring a product to market to see if they're even viable A Proof of Concept (POC) is a small project used to verify technical assumptions before beginning development. · End users usually don't get to see POCs · Typically focused on a single issue A Prototype is a working model incorporating several aspects of a product. · May be used for product testing with end users

How does a computer "think?"

o Instead of base-10 numbers, e.g. 1, 2, 3..., they use base-2 or binary numbers, e.g. 0 or 1, also known as a bit, or b.

Network Providers

o Interexchange Carriers (IXC): An interexchange carrier is essentially a telecommunications company that provides connections between local exchange carriers. Examples include AT&T, Verizon, T-Mobile, and Lumen. o Local Exchange Carrier (LEC): A company that provides local telephone service, which includes data network service, or one of the nine original Regional Bell Operating Companies (RBOC), or "baby Bells." Examples include SBC and Bell Atlantic. o Competitive Local Exchange Carrier (CLEC): A company other than RBOCs, that provides local telephone serviceterm-129 in a given area. Examples include Frontier and Windstream. o IXCs provide backbone connectivity, or long-haul, high-speed, high bandwidth fiber circuits, and the LECs and CLECs provide the "local loop" or "last mile," the connection between the IXC and the customer at whatever bandwidth the customer leases.

· Applications - Native vs. Web-Based

o Native application: An application meant to be installed on a particular computer using a particular operating system. Native applications are typically written or coded in languages that are available for a given type of computer. o Porting is the process of adapting software for use in another operating system environment than what it was originally written for, thus making the software portable. o Web-based or web-native (just to confuse things) application: Applications that are written in HTML, JavaScript, or other web-native technologies. Instead of depending on a particular operating system, web-based applications rely on a web browser to provide access to the application's functionality.

· Network Hardware

o Network Interface Card (NIC): A card or onboard chipset that connects to a RJ45 jack, allowing for the connection of a network cable. Responsible for converting datalink frames into a modulated electrical or optical signal. o Wireless Interface Card (WIC): A card or onboard chipset that connects to an antenna, allowing the transmission and receiving of a Wifi radio signal. o Hub: An OSI layer 1 network device used to aggregate multiple endpoint connections into a single connection to a switch or router. o Switch: An OSI layer 2 network device meant to route traffic inside a network using MAC addresses. o Router: An OSI layer 3 network device used to route traffic outside a network using IP addresses. o Proxy Server: A device that translates traffic between networks or protocols. o Load Balancer: A device that acts as a reverse proxy and distributes traffic across a number of servers. o Multiplexer: A device meant to combine multiple analog or digital signals over a common transmission line. o Firewall: A network device used to control access into or out of a network; filters traffic based on IP address, communications port, and/or by traffic type through packet filtering. o Cable: General term referring to either a copper or fiber optic transmission line. o Repeater: A network device used to amplify an electrical, optical, or radio frequency signal. Amplifies both the signal and the associated noise. o Regenerator: A network device the recreates an electrical, optical or radio frequency signal. Repeats a signal without repeating the noise. o Network Interface Unit (NIU): The interface in which serves as a demarcation point between the LEC's equipment and the customer's equipment.

The operating system (OS)

o OS, is the software that supports the basic functions of the computer—it manages hardware and software resources, and it provides common services for computer programs.

· Cloud Models

o Public cloud simply means customers share the same physical hardware. In the public cloud, instances are running on the same pool of physical servers that every other public customer of the provider is using. That means your servers could be running on the same servers used by your most-hated competitor. o Private cloud is cloud infrastructure running on hardware dedicated to a given customer. If security and privacy are a concern, or you're philosophically opposed to having your pristine server instances running along side the unwashed masses, cloud providers are happy to lease hardware that will be dedicated to running your instances, and only your instances... but it'll cost ya. Private cloud is typically charged a fixed monthly fee, which negates the pay-for-only-what-you-use advantage of public cloud computing. o Virtual private cloud combines the pay-for-only-what-you-use advantage of public cloud computing while operating with a modicum of isolation. § Run on the same pool of servers as public cloud customers. § Using a block or private IP addresses that keeps instances logically separated from the public instances.

· Disadvantages of The Cloud

o Regulatory Requirements: Some countries require that companies operating within their national borders maintain physical control over certain kinds of data, usually for the purposes of taxation. o Security & Privacy: When you deploy to the cloud, you're essentially outsourcing your IT infrastructure, which leaves a third party in the driver's seat. While cloud providers provide best-of-breed security, customers have still been hacked. Security is a shared responsibility—something cloud providers are quick to remind customers of. o Vendor Lock-In: Moving between cloud providers isn't as easy as copying files over from one to another. If services are built in a cloud provider using their proprietary technology, those services may need to be redesigned to use non-proprietary or an equivalent proprietary technology offered by the other provider.

· Programming Languages

o Software is typically written in a high-level programming language. High-level programming languages are those that have strong abstraction from the details of the computer. Examples include Python, C# and Java. o A low-level language is one that provides little to no abstraction to the computer's instruction set architecture. They can be converted to machine code without a compiler. A compiler is simply a program that processes instructions in a high-level programming language into machine code and are ISA-specific. An example would be assembly language. o Machine code is the numerical code that represents the software instructions that are read by the CPU. o High-level languages typically fall into one or more categories, which are declarative, imperative, functional and object-oriented. o Declarative language: Code is written in such a way that it expresses the logic of the computation without describing its control flow. Control flow refers to the order in which individual statements, instructions or functions are executed; think of it as the order of operations in math. Ex: SQL, HTML. o Imperative languages: The control flow is explicitly stated via serial orders. In other words, the program's state is changed step-by-step using statements, each step depending on the previous step. Ex: C++ o In functional languages, programs and subroutines are defined as mathematical functions, and the language attempts to avoid changing state and mutable data. Mutable data simply means data that can be changed after being created. Ex: Swift (purely functional), C++ (multi-paradigm) o In object-oriented languages, programming is done using objects to represent things, and the object holds data in its attributes. In essence, you encapsulate the characteristics of an object in it, and then do things to the object. Objects can also be defined by their class. In object-oriented programming (OOP), a class is an extensible program-code template for creating objects, providing initial values of an object, and implementing behavior. Ex: Java, C++

· Central Processing Unit

o The Central Processing Unit, aka Processor or CPU, is the component of a computer system that performs the basic operations (such as processing data) of the system, that exchanges data with the system's memory or peripherals, and that manages the system's other components. o Modern processors have up to 16 cores; a core is essentially a processor. Having multiple processors allows the CPU to run multiple programs at the same time. CPUs are described by theirclock speed(or rate), which isa measure of how many clock cycles a CPU can perform in a single second and measured in Hertz.Note that clock speed does not necessarily describe how many instructions per second a CPU can do.

· Types of Operating Systems

o User: Operating systems can be classified as either being single-user or multi-user. A single-user OS is one that lacks any way of distinguishing who is using the device. Single-user OSes are rare (ok, non-existent) in personal computing today, but are used in electronic devices and appliances that don't require a user to create an account or login. o Task: Operating systems can also be single-task or multi-task. A single-task OS would typically be found on an electronic device or appliance which has a singular use, like a thermostat or smoke detector. Multi-tasking operating systems are the norm for all levels of personal computing, from smartphones to servers. o Distributed: A distributed operating system fills a unique niche in computing in that it's used to manage a group of networked computers as a single computer. This group of computers is sometimes referred to as a cluster. Why would you want to control multiple computers at the same time? Scalability and survivability—both topics we'll discuss in greater detail when we talk about cloud computing. o Embedded: Embedded operating systems are those single-user, single-task OSes that we find in appliances and electronic devices like personal digital assistants (a forerunner to the smartphone). Embedded operating systems trade capability for compactness and efficiency, allowing them to run on comparatively few resources. o Templated: A templated operating system is used most commonly in cloud computing and refers to a virtual machine image template that serves as the basis for a guest operating system.

· Systems Development Life Cycle (SDLC)

o is a five-step process that guides the ideation, development, implementation, and maintenance of a system. These steps are: System Definition Requirements Analysis Component Design Implementation System Maintenance

database management system (DBMS)

o is a program used to create and manage databases. A DBMS enables four tasks, generally: Defining data: We use the DBMS to create, modify and delete data definitions that are used to organize the database. Retrieving data: We use the DBMS to retrieve data; we can also use a database application to retrieve data (discussed later). Updating data: Of course, we can't retrieve data if we don't input data into the database, so the DBMS allows us to enter and edit data. User administration: User administration involves registering and monitoring users of the DBMS, granting permissions to users, enforcing data security, maintaining data integrity, monitoring system performance, dealing with data concurrency control, data backup and data recovery. Adatabase and a database management system are not the same thing.Don't confuse the two

Parallel processing

o is a type of computer architecture in which multiple processors simultaneously execute multiple, smaller calculations broken down from a larger, complex problem. Supercomputers are used in such applications as: -Predicting the weather -Nuclear weapon simulations -Theoretical astrophysics o Supercomputer performance is measured in exaFLOPS, or exascale floating-point operations per second. Exascale equals 1018.

Keys

o uniquely identify a record, aka tuple. Generally, keys may be primary or foreign: Primary key (PK): The unique identifier for a table. Primary keys 1) cannot repeat (must be unique to each row) and 2) cannot be null. Foreign key (FK): A foreign key in one table is the primary key in another table and is used to join tables. Example: StudID would be the PK is the table Student and an FK in the table Class.

Data management systems include:

§ Data warehouse: An organization's core analytics system that stores processed or "cleaned" data. In essence, it's all the databases used by an organization. These databases are managed by an operational data store (ODS), which is a database designed to integrate data from multiple sources. The ODS handles cleaning and normalizing data for storage in the warehouse. § Data mart: Like a data warehouse, only it's more limited in that it contains multiple databases that cover a specific subject. Why would you want to use a data mart versus a data warehouse? · You don't have to deal with irrelevant data. · Protect sensitive data to only those with a need to know. · Better performance as queries against a data mart will return results faster than those run against a data warehouse due to a smaller data set. · While a data warehouse gets its data from databases, a data mart gets its data from a data warehouse. § Data lake: The opposite of a data mart and contains the entirety of an organizations raw and processed data. A data lake captures everything. Data lakes can be used for data analysis, but it's more complex and therefore difficult because it includes not only cleaned structured data that normally populates databases, but raw structured and unstructured data, like email, documents, images, audio, and video.

o Thus, layers are packaged together "as a service" in the following ways:

§ Software as a Service (SaaS): This is a complete, turn-key solution that includes the hardware, operating system, middleware, and application. Think Salesforce.com. § Platform as a Service (PaaS): This includes hardware, software, and middleware. All you add is your application. Think AWS EC2 instance. § Infrastructure as a Service (IaaS): This includes the hardware and virtualization. You provide the operating system, middleware, and application. Think AWS, Microsoft Azure, and Google Cloud as a base offering.

· System Maintenance - Release Management

· Release management is the process of managing, planning, scheduling, and controlling a software build through different stages and environments. · A patch is a software code update that focuses on a single issue. · A service pack is a software code update that incorporates multiple patches. · A new release is a software code update that adds or changes feature functionality and may include patches. Releases may be minor or major. o A minor release, aka a point release or dot release, typically includes enhancements that don't entail significant changes to databases or underlying architecture and are released on a periodic basis. o A major release involves a significant change in the application, to include architecture, databases, and feature sets.

Hardware development entails: Analysis:

· Requirements are collected; these may come from product management when proactively developing hardware, or customers when responding to a specific customer request. Requirements are analyzed to determine if the hardware can be made using off-the-shelf (OTS) components or require the development of specialized components. Project planning occurs to determine estimated time, cost, quality, and resources needed.

· Software Licensing Types

· There are three types of software licenses: o Per-seat licensing: Grants an individual user the right to use the software. A company that orders 100 per-seat licenses for an application does so for 100 individually named users, which means if a new employee is hired and needs access to the software, a new license for that particular employee must be purchased. o Per-site licensing: Grants an unlimited number of users at a given site (location) the right to use software. In reality, the license attaches to the computer rather than the user. Variations on per-site licensing include floating licenses, device licenses, and company fixed duration licenses. In these cases, the variations apply to the number of devices at a given site (floating and device), and/or time (fixed duration). o Open-source licensing: The permission to use, study, change, and distribute software freely to anyone for any purpose.

Internet

· is a network of networks. o There is no singular internet network per se. It's just a patchwork of tier 1 provider networks peering with other tier 1 provider networks, which peer with tier 2 networks, which connect with tier 3 networks, which connect to internet service providers. These tiers are: Tier 1: A network owner that doesn't need to lease any of its network infrastructure. Tier 2: A provider that peers with other providers and owns some of their own backbone network infrastructure, but still needs to purchase IP transit facilities to reach some portion of the internet. Tier 3: A provider that doesn't own any of its own backbone; it purchases IP transit from tier 1 and 2 providers. Tier 3 providers are internet servicer providers (ISP) that typically provide consumer and small & medium sized business customers within a given domestic region access to the internet.


Conjuntos de estudio relacionados

Florida Statutes, Rules, and Regulations

View Set

Life Insurance Settlement Options

View Set

Taxes, retirement, and other insurance concepts

View Set

Chapter 10: The Psychiatric-Mental Health Nursing Process

View Set

Online Expierence Stack 1 ism 280

View Set

Texas principles of real estate - part 1

View Set