Software Specifications: Strength and Style Guide

Exam #1

In Class on Thursday 3/3

  • Crib sheet allowed/encouraged (double-sided 8.5″x11″ sheet of paper or two single-sided 8.5″x11″ sheets of paper) (this crib sheet can include anything at all)
  • Practice Exam available (skip last question)

Homework 1 Solutions

8. { x + 5 < y } whoops x = x + 5 to be corrected { x < y }

9. { x > y }
z = x - y // use forward reasoning
{ z > 0 }

Specification

Need to identify:

  • Precondition
    • requires: Spells out constraints on the client/user of this method.
  • Postcondition
    • modifies:
Read More

Understanding Programming Language Translators and Compilers

A translator is a program that transforms code written in one language (source language) into another language (target language) while preserving its meaning.

Types of Translators

1. Assembler

An assembler program performs a process called assembly. This process converts a program written in assembly language into its corresponding machine-language program (without executing it).

2. Compiler

A compiler takes a program written in a higher-level language (source program) and converts it into assembly language

Read More

Understanding VLANs and Spanning Tree Protocol in Networking

Benefits of VLANs with Switches

Administrative Advantages

  • **Virtual LANs based on Diverse Criteria:** Create VLANs based on workgroup, protocol, or service, not just physical location.
  • **Simplified Device Moves:** Easily move devices to new VLANs by modifying port assignments.
  • **Controlled Broadcast Traffic and Collision Domains:** Manage broadcast traffic and create collision domains based on logical criteria.
  • **Enhanced Security:** Isolate traffic within a VLANs for improved security.
  • **Network Traffic
Read More

Android Development: Preferences, Files, Databases, and Network Communication

Challenge 9 1. How do preferences, files, and databases differ? Under what circumstances would each be appropriate?


Shared Preferences store key value pairs in an xml file, this file can be read by other apps only if the MODE_WORLD_READABLE / WRITEABLE mode is specified.
Files are useful for writing larger amounts of information that might not be suited for a shared preference. Files can be stored in Internal Storage or External Storage(sd card).
Databases are ideal for repeating or structured data.

Read More

Data Link Layer and Network Concepts: A Comprehensive Guide

Complete Definitions

Data Link Layer Concepts

Link Layer Address

The address used to identify a device on a local network.

Data Link Control (DLC)

Responsible for flow control and error control in the data link layer.

Media Access Control (MAC)

The lower sublayer of the data link layer, defined by the IEEE 802 project. It defines access methods and control in different local area network protocols.

Packet at Data Link Layer (Frame)

A group of bits representing a block of data, also known as a frame.

Error

Read More

Accessibility Features, Networking, and Internet Security

Accessibility Features in Microsoft Windows

StickyKeys

StickyKeys is an accessibility feature to help computer users with physical disabilities. It is also used by others as a means to reduce repetitive strain.

FilterKeys

FilterKeys is a feature of Microsoft Windows. It is an accessibility function that tells the keyboard to ignore brief or repeated keystrokes, making typing easier for people with hand tremors.

ToggleKeys

ToggleKeys is also a feature of Microsoft Windows. It is an accessibility function

Read More