Notes, summaries, assignments, exams, and problems for Computer science

Software Configuration Management Fundamentals

Computer science2.77 KB

Software Configuration Management (SCM)

Definition of Software Configuration Management

Software Configuration Management (SCM) is a set of management disciplines within a software engineering process used to develop a baseline. SCM encompasses the disciplines and techniques of initiating, evaluating, and controlling change to software products during development and maintenance.

Administering SCM

Administering Software Configuration Management is a crucial project function with the goal of making technical and managerial activities more effective. SCM can be administered in several ways:

  • Organization-wide: A single SCM team manages configuration for the whole organization.
  • Project-specific: A separate configuration management team is established
...
Continue reading "Software Configuration Management Fundamentals" »

How Cell Phones Work: From Analog to Digital

Computer science2.15 KB

The Evolution of Mobile Phones

Mobile phones, also known as cell phones, emerged in the 1980s as bulky, analog devices relying on unencoded radio wave transmissions. These early models quickly evolved, shrinking in size and transitioning to digital technology, ushering in the second generation (2G) era. This shift enabled faster transmission speeds and paved the way for features like images, messaging, and sound.

Advancements in Technology: 3G and 4G

The early 2000s witnessed remarkable technological leaps with the introduction of 3G in 2001, followed by 3G+ and 4G. These advancements significantly boosted speed and capacity, transforming mobile phones into versatile multimedia devices capable of much more than just making calls.

How Cell Phones

...
Continue reading "How Cell Phones Work: From Analog to Digital" »

Understanding Computer Networks and the Internet

Computer science2.95 KB

Computer Networks

What is a Network?

A network is a number of computers linked together to allow the sharing of resources. A server usually provides services like file storage and email.

Types of Networks

There are two main types of networks:

  • Local Area Network (LAN): A LAN covers a small area, such as a home or office.
  • Wide Area Network (WAN): A WAN covers a large geographical area. Most WANs are made from several LANs connected together. WANs can be connected together using the internet.

Email

There are two main types of email:

  • Client-based email: Often used by business users, client-based email involves downloading email from a server to an application on the user's computer.
  • Webmail: Accessed through a web browser, webmail can be accessed from any
...
Continue reading "Understanding Computer Networks and the Internet" »

Essential Web and Software Terminology Definitions

Computer science3.47 KB

Essential Web and Software Terminology

Web Navigation and Structure

  • External Hyperlink

    A hyperlink that opens a webpage located on a remote computer. External hyperlinks provide the links that tie the Web together and rely on HTML anchor tags.

  • Back Button

    A basic control used across various technologies. In a web browser, a back button allows an end user to navigate to a previously viewed webpage. A back button is also a feature of smartphone software and other consumer-oriented technologies.

  • Navigation Structure

    When using navigation requests, for each BSP application, determine the initial page, the navigation methods, and the target pages in a table with navigation paths.

  • Refresh

    An act or function of updating the display on a screen.

Web Elements

...
Continue reading "Essential Web and Software Terminology Definitions" »

Microsoft Access Forms and Reports Mastery: Key Concepts

Computer science3.01 KB

In Form view, you can go to the last record in the table by pressing the ____ keys. CTRL+END
____ levels are useful for reports with multiple levels. GROUPING
A form can be used to display fields from multiple records at one time by specifying the ____ layout. TABULAR
The second Form Wizard dialog box asks you to select a ___ for the form. LAYOUT
To change a form's style you must switch to ____. LAYOUT VIEW
To move from record to record in a form you can use the ___. NAVIGATION BUTTONS
You can move from field to field within a form by using the ___. TAB KEY
You can activate the Find command from the button on the ___ tab. HOME
When printing a form, you can choose to print ____. ALL PAGES
When a pencil symbol appears in the top-left portion of the form,
...
Continue reading "Microsoft Access Forms and Reports Mastery: Key Concepts" »

Layer 3 Versus Layer 2 Packet Fragmentation Analysis

Computer science3.45 KB

Packet Fragmentation: Layer 3 vs. Layer 2

As mentioned in the “Link-Layer Fragmentation and Interleaving” section, PPP, Frame Relay, ATM, and other WAN technologies support fragmenting packets (frames) at Layer 2. As you may have learned in basic networking classes, IP can also fragment packets at Layer 3. What are some advantages and disadvantages of fragmenting at Layer 3 versus fragmenting at Layer 2?

Advantages and Disadvantages

  • Advantages (Layer 3 Fragmentation): Large packets can be transmitted at Layer 2 as fragmentation is done at Layer 3. This reduces the number of acknowledgment exchanges. Also, maintaining the order of fragments to ensure the order of transmission and reassembly is not required.
  • Disadvantages (Layer 3 Fragmentation)
...
Continue reading "Layer 3 Versus Layer 2 Packet Fragmentation Analysis" »

Web Requests, Concurrency Control & Distributed Systems

Computer science2.53 KB

Web Requests: GET vs. POST

GET: The request displays the password in the browser URL.

POST: Does not remain in history and does not display the password or on the web server log, not displayed in URL.

Controlling Access to Resources

Lock: Use the database.

  • Implement file lock.

Optimistic Concurrency Control

When using locks, there is a possibility of deadlocks.

Solution:

Use timeout: When starting the processing of a request, set a maximum execution timeout. When the timeout expires, the system suspects that a possible problem (such as a deadlock) has occurred.

When the timeout expires, which request should be aborted?

We may end up canceling a request that is almost complete.

Deadlock Prevention

To prevent deadlock, the system can set all the locks the...

Continue reading "Web Requests, Concurrency Control & Distributed Systems" »

Essential Computing Terminology and Definitions

Computer science3.31 KB

Word Processing

  • Word processing program: A computer utility that allows you to create, edit, and save documents.
  • Format: A specific way in which a document is stored.
  • Spell check: A program utility that corrects misspelled words.
  • Template: A predesigned document with gaps to be filled in.
  • Font: A specific style of typeface used for documents.
  • Compatibility: The ability of a word processing program to open documents created by other software.
  • Layout: The arrangement of text and images on a page.
  • Macro: Frequently used sequences of commands or text.

Email

  • Email client: A program that saves, sends, and receives emails.
  • Domain name: Words or letters used to identify companies and addresses.
  • Password: Letters or numbers that allow a person to access an account.
...
Continue reading "Essential Computing Terminology and Definitions" »

Essential Tech Insights: Devices, Digital Security, and Data Trends

Computer science4.97 KB

Printer Types: A Comparative Analysis

Understanding the differences between various printer types is crucial for making informed decisions. Here's a comparison of common printer technologies:

  • Laser Printers: Generally faster than plotters.
  • Color Laser Printers: Offer significant advantages over standard monochrome laser printers, especially for vibrant outputs.
  • Inkjet Printers: Typically slower than laser printers but often excel in photo quality.
  • Dot Matrix Printers: Surprisingly, these can be more expensive than plotters, especially for specialized industrial models.
  • Sublimation Printers: Often considered to have lower print quality compared to inkjet printers for general use, but excel in specific applications like photo printing or fabric.
  • Plotters:
...
Continue reading "Essential Tech Insights: Devices, Digital Security, and Data Trends" »

Essential C++ Programming Exercises and Solutions

Computer science3.54 KB

C++ Programming Exercises

This collection contains various C++ algorithms and solutions for common programming tasks.

1. Countdown Sequence

#include <iostream>
using namespace std;
int main() {
    int x, y = 0;
    cin >> x;
    while (x >= 0) {
        cout << y << endl;
        y = y + 1;
        x = x - 1;
    }
}

2. Harmonic Numbers

#include <iostream>
using namespace std;
int main() {
    cout.setf(ios::fixed);
    cout.precision(4);
    double h = 0;
    int n;
    cin >> n;
    for (int i = 1; i <= n; i++) {
        h = h + 1.0 / i;
    }
    cout << h << endl;
}

3. Descending Interval

#include <iostream>
using namespace std;
int main() {
    int x, y;
    cin >> x >>
...
Continue reading "Essential C++ Programming Exercises and Solutions" »