Introduction to Software Engineering
The Importance of Software Engineering
The term “software engineering” was introduced in the late 1960s due to the software crisis. This crisis resulted from the introduction of the third generation of hardware. As hardware ceased to be an impediment to the development of information technology, reduced costs and the need for improved quality and efficiency of software production led to challenges characterized by the following problems:
- Unclear project planning and cost estimation.
- Poor software quality.
Cryptography, Security & Viruses: A Comprehensive Overview
Key Cryptography
Asymmetric Cryptography
Inefficient to implement (establishes symmetric key cryptography).
Symmetric Cryptography
Efficient to implement.
SSL
SSL authenticates and provides confidentiality.
Salting
Salting makes the hash unique for repeated passwords.
Can detect if a hash is salted because no particular password should have a higher frequency than any other under ideal salting. Salting truly ties the frequency.
Firewall
Limits network traffic. Many kinds: personal, filter based on packet header,
Read MoreIntroduction to Databases and SQL
Data and Databases
Data
Data is facts and figures which when combined and interpreted can form information. Data is meaningless until it is interpreted and put into context.
Databases
Databases organize and store data. They provide ways to extract data and turn it into information. They are required by any small, medium, or large business.
Different Uses
- OLTP – Online Transaction Processes
- OLAP – Online Analytical Processes
Different Types
Different types of databases affect access and data modelling.
- RDBMS
Understanding Network Protocols and Data Communication Techniques
Carrier Sense Multiple Access (CSMA)
This method was developed to decrease the chances of collisions when two or more stations start sending their signals over the data link layer. Carrier Sense Multiple Access (CSMA) requires that each station first check the state of the medium before sending.
CSMA is a network protocol used to manage how data packets are transmitted over a shared communication medium, such as an Ethernet network. CSMA is particularly important in environments where multiple devices
Read MoreC++ Programming Examples: Structures, Functions, and Classes
1. Working with Structures
1a. Declaring a Structure
Declare a structure named Organization
containing:
- a string named
name
- an int named
seats
struct Organization
{
string name;
int seats;
};
1b. Using the Structure
In the main
function, create a variable named x
of type Organization
. Assign “Opera San Jose” to the string and 1000 to the int in x
.
int main(void)
{
Organization x;
x.name = "Opera San Jose";
x.seats = 1000;
// Code to process the structure is omitted
return 0;
}
2. Modifying
Read MoreSQL Commands and Database Concepts: A Comprehensive Guide
DBS201 Test 1 Review
SQL Commands
CREATE
Used to create database objects like:
- Collection
- Table
- View
DROP
Used to delete database objects.
ALTER
Used to modify existing database objects.
INSERT
Used to add new data into a table.
- Can be used as
INSERT INTO
.
SELECT
Used to retrieve data from a table.
Syntax:
SELECT attribute(s)
FROM table(s)
WHERE condition(s)
ORDER BY attribute(s)
At minimum, you must select the attribute and the table it’s from.
*
can be used as a wildcard character to select all columns.- Comparison