CS Core Notes
CS Core Notes
CS Core Notes
1 System Fundamentals
1.3 – Testing
• Static testing: scanning, implicit changes, syntax, proofreading
• Dynamic testing: actually running it and testing it in action
• Alpha testing: performed by internal employees
• Beta testing: performed by external clients or end users
• Black-box testing: testing when you know about the internals
• White-box testing: the exact opposite
• Automated testing: when a robot replaces a human a premade software tests everything
1.4 – User Focus
• User documentation can be: PDFs, books, CDs, video tutorials, manuals, etc.
• Helps the user to understand how hardware or software works
• Explains the features and functions of a system
1.8 – Usability
• Ergonomics: an applied science concerned with designing things that people use in a way
that humans can interact efficiently with them
• Accessibility: the ability to cater for disabled or physically challenged people
• User experience (UX): depends on the usability and the pleasure of using the product
• User interface (UI): everything designed in a way that the person can interact easily
• Design is not necessarily the same as usability
• You can put all the similar functions into a group (File > New, Open, Save, Save As, etc.)
1.9 – Accessibility
• The main parts of a computer are a keyboard, mouse, and screen.
• Ways to improve accessibility: touch screens, voice recognition, text-to-speech, braille
keyboards, fewer buttons
1.10 – Usability
• Usability problems:
o Complexity/Simplicity: Amount of effort to find a solution.
o Effectiveness: Comparison of user performance against a predefined level.
o Efficiency: Task completion time after the initial adjusting period.
o Error: Number of errors, type of errors, and time to recover from errors.
o Learnability: Time used to accomplish tasks at first use.
o Easy to remember: Time, number of clicks, pages, and steps used by users when
they return to the device after a period of not using it.
o People get confused and it takes some time to remember the required procedure.
o Readability/Comprehensibility: Reading speed.
o Satisfaction: Attitude and satisfaction of users after using the application.
2 Computer Organization
2.6 – Functions of an OS
• The operating system is the software that supports the computer’s basic tasks.
• Main functions of the OS: To provide a user interface between the user and the hardware,
memory management, peripheral management, multitasking, priority scheduling,
security
• Memory management: keeping track of which application has access to which area of
RAM at any given time, sorting where data is installed on a disk drive
• Peripheral management: Refer to 1.7
• Security aspects: firewall, antivirus, password
• Priority scheduling: the OS gives priority to certain tasks (although this can be done
manually on some systems)
• Types of interface: GUI, Command line, natural language, menu-based
3 Networks
3.2 – Standards
• Devices need standards to communicate with each other (shared language) – without
standards, communication will be difficult if not impossible
• Protocols are an agreed set of rules based on the standards (HTTP, IP, IMAP, TCP, etc.)
6 Resource Management
7 Control
7.2 – Devices
• A microprocessor is an integrated circuit that contains all of the functions of a CPU
o The microprocessor can produce digital output
• Sensors are devices that measure and detect their surroundings (convert analog to digital)
• Transducers turn the digital data into analog signals to power devices – compatibility with
microprocessors