Lifecycle (spiral model):
- Definition of problem.
- Feasability study.
- Collection of info.
- Design .
- Off-the-shelf - available for immediate use (for general specific task).
- Custom written - specifically written to solve particular problem.
Knowledge Based Systems.
- Store vast amounts of data.
- Data initially collected from "experts".
- Data can then be interrogated and filtered by system.
- System can diagnose/conclude from data like an expert.
- Provide platform on which applications run.
- Control Hardware.
- Allow communication with the outside world.
- Single User - one at a time.
- Multi User - data centrally stored, multiple users (e.g. tills).
- Batch - stop people slowing down computers, runs tasks in sequence.
- Distributed - centrally located data downloaded to local machines.
- Real Time - safety critical systems.
- Provide and manage hardware resources.
- Provide human-computer and applications-computer interface.
- easy for beginners.
- context sensitive.
- can slow performance due to add-ons etc.
- many commands hidden to avoid confusion.
Command Line (e.g. MS-DOS).
- Powerful and fast and flexible.
- Need to understand how to use.
- Potential to cause major damage.
- Simple screen.
- many applications use same shortcuts and similar menus/icons.
- Understands human phrases, text or speech.
- Easy to use.
- Slow (intensive processing).
- Ambiguity, some things mean the same thing, accent problems etc.
Importance of Good Design.
- To be easy to learn (not too much to remember).
- Give information about what processing happens.
- Consistent so user becomes familiar.
- Clear to the user.
- Reduce possibility of mistakes.
- Always do as user expects.
System Utilities are programs that perform specific functions (usually maintenence).
Utilities can carry out:
- Compression - utility programs convert data to format that takes up less space, makes it easier to transfer the data and store it.
- File Conversion - can convert file extensions so different programs can open them.
- Config Files - contain info on system parameters, programs look at them to see how to adapt
ASCII (American Standard Code for Information Interchange).
- binary code to handle text using English Alphabet.
- uses 7 binary digits to represent each character.
EBCDIC (Extended Binary Coded Decimal Interchange Code).
- 8 bit character coding used mainly on IBM machines.
- based on BCD - coding done in groups of 4.
Unicode is another code, similar to ASCII except it contains way more characters y'all.
- Includes all symbols used throughout world (arabic, chinese etc).
- Constantly growing as more characters are accepted.
- Data can be collected manually (i.e. typed in after questionnaries etc).
- Questionnaries should be designed to avoid mistakes (make simple).
- Data validation.
- Range Check.
- Format Check.
- Length Check.
- Character Check.
- Presence Check.
- Data Verification - checks that the data is there, rather than if it is right.
- Optical Mark Reader (OMR) - shading of boxes etc.
- Optical Character Reader (OCR) - comparing shapes.
- Magnetic Ink Character Recognition (MICR) - character recognition, mostly used by banks to process cheques.
- Barcodes - lines correspond to numbers, can't be understood by humans.
- All data copied to second storage medium.
- Quick to restore data.
- Backing up slow.
- Only copies files that have changed.
- Quicker (almost always less backup needed).
- Restoring can take a while - data needs to be rebuilt from different backups.
Mirrored Hard Drives.
- Second hard disk keeps exact copy of main hard drive.
- If main drive fails, second drive is immediately available.
- Can be expensive.
Archiving is storing data not being used, but may be needed later. This saves space.
The CPU (central control unit) is the central part of the computer, and consists of the ALU (arithmetic logic unit), CU (control unit) and IAS (immediate access store).
- manages execution of instructions.
- sends out control signals to rest of processor using busses.
- does any arithmetic.
- all processes pass through it before being directed (like a gateway to the processor).
- main memory of the computer
PC (program counter).
- keeps tabs on where the next instruction is in the memory.
- tells the processor where next instruction is.
MAR (memory address register).
- where the address from PC is sent.
MDR (memory data register).
- takes address from MAR, and saves a copy of the data to it.
CIR (current instruction register).
- MDR instruction placed here.
- one part sent to computer to be decoded so it can be sent to relevant parts of processor.
- other part is an address which tells processor where data to be used is.
- ROM (read only memory) - can't be altered, data stays even after powered off, non-volatile.
- RAM - data wiped clear after powered off, volatile.
- Primary storage is only storage the CPU can directly access.
- Secondary storage is external memory, which can be either magnetic, optical, or solid state.
- Magnetic is stuff such as hard drives.
- Optical is stuff such as CD and DVD.
- Solid state is stuff such as USB pens.
Actuators are output devices that control physical movement, and are divided in motors, hydraulic, and pneumatic.
- Stepper Motors - signal moves motor in a series of tiny but accurate steps.
- Servo Motors - signal moves motor continuously at high speeds.
- powered by fluid pressure.
- controlled by computer.
- slow but very powerful (useful for heavy lifting).
- powered by air pressure.
- less powerful but more responsive.
- used to power robots on fast moving automated production lines.
- collection of computers and peripherals in one site connected
- high data transfer rates
- usually linked using cables or fibre optics for fast connection
- connects computers over large distances using telecom links (e.g. internet).
- large increase in WAN recently due to cheap costs of data transfer.
- use long distance communication technologies.
- NIC (network interface card) needed on each computer.
- Main central computer/server storing shared files and individual files.
Serial data transmission is when you sent each byte one bit at a time through a single wire.
- Safe as it keeps data together
Parallel data transmission is when you use a number of wires, one for each bit.
- Bits can get mixed up
Simplex data transmission - one way data communication (e.g. radio).
Duplex data transmission - bidirectional (e.g. phone)
Half-Duplex - one one direction at a time (e.g. walky talky)
Transmission Error Prevention
Three methods, echoing, checking sums, parity checks.
- compares data sent to original data by sending data back to source
- data re-sent if they don't match, until they match
- the binary sum of the data is added up, and added up at the other end as well, if the numbers are the same, it is assumed the data is correct.
- The last bit of the data is reserved to make the data always odd or even, and if it arrives at what it is supposed to be, it is assumed it is correct.