Module 3: 8, 9, 10
Setup
Preparing the data or information needed for a task. For a loop, this establishes the initial values of variables for the condition and loop work.
Distributed Computing
Processes and manages algorithms across many machines in a computing environment.
Immutability
The ability for a blockchain ledger to remain a permanent, indelible, and unalterable history of transactions.
Attributes (Columns or Fields)
The data elements associated with an entity.
Data Redundancy
The duplication of data, or the storage of the same data in multiple places.
Analysis Phase
The firm analyzes its user-end business requirements and refines project goals into defined functions and operations of the intended system. Any constraints associated with the system is identified during this phase.
Assignment
The instruction that puts a new value into a variable (location of memory).
Loop Work
The instructions you want repeated.
Feasibility
The measure of the tangible and intangible benefits of an information system.
Maintenance Phase
The organization performs changes, corrections, additions, and upgrades to ensure the system continues to meet business goals.
Implementation Phase
The organization places the system into production so users can begin to perform actual business operations with it.
Systems Development Life Cycle (SDLC)
The overall process for developing information systems, from planning and analysis through implementation and maintenance.
Data Element (Or Data Field)
The smallest or basic unit of data. Ex: Customer's Name, Address, Email, Discount Rate, Preferred Shipping Method, Product Name, Quantity Ordered)
Business Requirements
The specific business requests that the system must meet to be successful, so the analysis phase is critical because these requirements drive the entire systems development effort.
Digital Ledger
A bookkeeping list of assets (money, property, ideas), identified ownership, and transactions that record the transfer of ownership among participants.
Identity Management
A broad administrative area that deals with identifying individuals in a system (such as a country, a network, or an enterprise) and controlling their access to resources within that systems by associating user rights and restrictions with the established identity.
Structured Query Language (SQL)
A tool available for retrieving data that asks users to write lines of code to answer questions against a database.
Variable
A place to store a value and that storage location can be changes to a different value at a later time.
Algorithms
- Involve a sequence of steps or actions needed to accomplish some task. - Programming building blocks that allow computers to make decisions. - Allows a chef to prepare a meal.
Business Advantages of an Relational Database
- Reduced Data Redundancy - Increased Data Integrity - Increased Data Security
Loops
- Setup - Condition - Loop Work - Exit Strategy - After Party
Primary Reasons Projects Fail
- Unclear or Missing Business Requirements - Skipped SLDC Phases - Changing Technology - Cost of Finding Errors - Balance of the Triple Constraints
Equation
A calculation where the result is placed into a variable.
Record
A collection of related data elements.
Software Engineering
A disciplined approach for constructing information systems through the use of common methods, techniques, or tools.
Expression
A formula used to calculate a new value based on other values and operations.
Hash
A function that converts an input of letters and numbers into an encrypted output of a fixed length. The links in the blockchain that is created using an algorithm.
Data Integrity
A measure of the quality of data. Integrity Constraints - Prevent a negative markup percentage. - Prevent ordering zero pounds of raw materials from a supplier. - Prevent the creation of an order for a nonexistent customer.
Constant
A value that does not change.
Alpha Testing
Assess if the entire system meets the design requirements of the users.
Immutable
Unchangeable.
Functions (Procedures)
A named set of computer logic to accomplish a specific task. - Allow a programmer to define new commands to a computer language. - Allow a programmer to teach a computer how to do an action one time, then repeat the action without having to write the sequence of commands again. - Allow a programmer to add their own words to a computer language.
Miners
Authenticate transactions by completing complex mathematical problems.
Proof-of-Work
A requirement to define an expensive computer calculation, also called mining, that needs to be performed to create a new group of trustless transactions (blocks) on the distributed ledger or blockchain. 1. Verify the Legitimacy of a Transaction 2. Create New Digital Currency Units by Rewarding Miners for Proof-of-Work Tasks.
Sequences
A series of actions done in a specific order to complete a task.
Algorithm
A set of instructions (codes) that complete a task. The computer programming equivalent to a recipe in cooking.
Double Spend Problem
A single unit of currency is transferred to two recipients at the same time.
Boolean
A single value of either TRUE or FALSE (represented internally as one and zero).
Database Management System
A system that creates, reads, updates, and deletes data in a database while controlling access and security.
Condition
A test that determines TRUE or FALSE. A TRUE determination tells the computer to continue running the loop, but a FALSE determination stops the loop.
Bitcoin
A type of digital currency in which a record of transactions is maintained and new units of currency are generated by the computational solution of mathematical problems which operates independently of a central bank.
Blockchain
A type of distributed ledger, consisting of blocks of data that maintain a permanent and tamper-proof record of transactional data.
Integer
A whole number without decimal positions or fraction.
Relational Database Management System
Allows users to create, read, update, and delete data in a relational database.
Selections (Conditions)
Answering a true/false question based on data and calculation, then pursuing one set of actions if the answer is true, or a different set of actions if the answer is false. A simple programming structure that is part of the foundation for all logic within any software program.
Testing Phase
Brings all the project pieces together into a special testing environment to eliminate errors and bugs and verify that the systems meets all the business requirements defined in the analysis phase.
Exit Strategy
Changing variables associated with the condition so the loop eventually stops.
Real Number
Contains decimal positions or fractions.
Metadata
Data about data. Ex: - Size, Resolution, and Date Created of an Image - The hash of a financial transaction. - The duration of a phone call.
Blocks
Data structures containing a hash, previous hash, and data.
Bugs
Defects in the code of an information system.
User Acceptance Testing (UAT)
Determine if the system satisfies the user and business requirements.
Intangible Benefits
Difficult to quantify or measure. - Improved Decision Making - Improved Community Service - Improved Goodwill - Improved Morale
Tangible Benefits
Easy to quantify and typically measured to determine the success or failure of a project - Decreased Expenses - Decreased Processing Errors - Decreased Response Time - Increased Quantity or Sales - Increased Quality
Planning Phase
Establishes a high-level plan of the intended project and determines project goals.
Design Phase
Establishes descriptions of the desired features and operations of the system, including screen layouts, business rules, process diagrams, pseudo code, and other documentation. The project identifies the technical architecture required to support the system.
Methods of Assigning Data
I <- 9 9 -> I I = 9
Conditions (Selections)
IF = The test that a computer will perform. Contain an "IF" statement, "ELSE'" clause, and can be extended using the "ELSEIF" clause. Comparison Operators = TRUE (When the value on the left is equal to the value on the right.) > TRUE (When the value on the left is greater than the value on the right.) < TRUE (When the value on the left is less than the value on the right.)
The Triple Constraint
If one variable changes, at least one other is likely to be affected. - Resources - Time - Scope
Code
Instructions for a computer.
After Party
Instructions to finalize the task after the loop ends.
Loops
Instructs the computer to repeat a set of actions over and over again until a condition becomes false.
Database
Maintains data about various types of objects (inventory), events (transactions), people (employees), and places (warehouses).
Preventive Maintenance
Makes system changes to reduce the chance of future system failure.
Corrective Maintenance
Makes systems changes to repair design flaws, coding errors, or implementation issues.
Operational Feasibility
Measures how well a solution meets the identified systems requirements.
Political Feasibility
Measures how well the solution will be accepted in a given organization.
Economic Feasibility
Measures the cost-effectiveness of a project.
Schedule Feasibility
Measures the project time frame to ensure it will be completed in time.
Software Costumization
Modifies software to meet specific user or business requirements.
Associated Activities of SDLC
Planning - Analysis - Design - Development - Testing - Implementation - Maintenance
Program
Providing a computer with codes so it can perform useful tasks.
Ledger
Records classified and summarized transactional data.
Relational Database Model
Stores data in the form of logically related two-dimensional tables.
Entity (Table)
Stores information about people, places, or events.
Development Phase
Takes all the detailed design documents from the design phase and transforms them into the actual system. The company purchases and implements the equipment necessary to support the architecture.
Unit Testing
Test individual units or pieces of code for a system.
Development Testing
Test the system to ensure it is bug-free.
Strings
Values that contain letters and symbols.
Integration Testing
Verify that separate systems can work together, passing data back and forth correctly.
System Testing
Verify that the units or pieces of code function correctly when integrated.