Computing exam Flashcards

1
Q

5 stages to a system block diagram

A

Inputs ->Condition ->Do something (usually ‘program’) ->Scale ->Output

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Draw a system block diagram for an air conditioner

A

Check drawing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Steps to a functional requirement spec

A

IO List
Pseudocode
Flow control diagram
Algorithms (calculations)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Headers in a test plan

A

All inputs/ unit
All outputs/unit

OK Y/N
Test Notes
Sign/Date

In exam, may only have to fill out first two columns but still create the rest of the table and headers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

4 factors that need to be accounted for in the input output section of a test plan

A

Need to test all possible inputs (a few)
Ensure the outputs match those expected
Test for data which could break the code (1/0=??)
Deliberately break the code and check fail safes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Headers in an IO list

A

Type(Input/Output)
Name
Unit
Range

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Flow Control Diagram
Symbol for Terminators (Start/Stop)

A

Oblong

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Flow Control Diagram
Symbol for processes (can be I/O or just generic processes)

A

Rectangle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Flow Control Diagram
Symbol for decisions

A

Diamond
Yes arrow goes down, No arrow goes right

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Data flow diagram
What do circles represent

A

Circles are data transformations (functions/convert)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Pseudocode
What is a minimum cost solution?

A

Manageable sub units
Each unit can be solved independently
Each unit is easy to debug
Each unit can be modified

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Pseudocode
6 steps to efficiency/generating good code

A

Sensible variable names
Use comments to document your code, use a header to explain the code as well
Using indents on linked commands (loops, decision statements)
Minimal instructions, use as gew operations as possible
Use functions for repeating code
Use loops instead of repeating lines

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Generational languages
What are first generation languages?
Include example

A

Low-level languages that are machine language. Example - machine code.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Generational languages
What are second generation languages?
Include example

A

Low level assembly languages. They are sometimes used in kernels and hardware drives,
but more commonly used for video editing and video games. Assembly language is example.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Generational languages
What are third generation languages?
Include example

A

High level languages such as C, C++, JavaScript, Matlab and Haskell

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Generational languages
What are fourth generation languages?
Include example

A

Languages that consist of statetements similar to statements in a human language. Fourth
generation languages are commonly used in database programming and script examples include
Perl, SQL and Python.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Generational languages
What are fifth generation languages?
Include example

A

Languages that contain a visual tools to help develop a program. Examples are Prolog and Mercury.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Factor of assembly language

A

Machine/hardware dependent

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is a PLC?

A

A programmable logic controller is a specific piece of hardware that is optimised only to work on logic systems

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What is a ALU?

A

Arithmetic Logic Unit, a co-processor that is optimised to carry out arithmetic and logic operations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What is a FPGA?

A

Field programmable gate array - simulate the build of logic gates

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What is Qubit?

A

Quantum Computer

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What is labview?

A

Higher level language, needs ALU/FPCP

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Where will you need an ALU?

A

A higher level language like labview

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

What is prolog?

A

Used for neural networks, it will adapt it’s own code

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Generational languages
What are sixth generation languages?
Include example

A

Used for neural networks, it will adapt it’s own code. Example - prolog

27
Q

What is an ANN?

A

Artificial Neural Network

28
Q

What is an imperative language?
Include an example

A

Tell it exactly what to do in a specific sequence. It is procedural.
Example - Matlab

29
Q

What is a declarative language?
Include an example

A

Describe the operations that we need but do not specify the order we need to do it in. The order is specified by a different program. Example - Haskell

30
Q

Difference in focus between imperative and declarative

A

Imperative - Performs calculations to achieve a goal
Declarative - Requires what is needed for transformations

31
Q

Difference in execution between imperative and declarative

A

Imperative - Important to follow a set sequence
Declarative - Sequence order is not part of the code

32
Q

Difference in control between imperative and declarative

A

Imperative - Loops, conditions, fuction calls
Declarative - Functions calls, including recursion

33
Q

Difference in data between imperative and declarative

A

Imperative - structured and defined
Declarative - non-committed structures

34
Q

4 stages of pre-release/functional testing?

A

Unit testing
Integration testing
System testing
Acceptance testing

35
Q

What is unit testing?
Include example

A

White box testing - Focus on each component, execute specific test to identify logical and data errors, limitations, safe
responses. Example - filters on a mobile phone rejects all frequencies above 4kilahertz on a voice call

36
Q

What is integration testing?
Include example

A

Black box testing - Putting multiple units together as a package, uses black box testing to find errors in inter-relations, and package construction. Example - I wanted two variables and you have only sent me one, therefor code breaks. Also, scaling problems (wanted int from 0-100, been sent int from 100-200)

37
Q

What is system testing?
Include example

A

A complete system, evaluated against the FRS, requires little knowledge of the workings of the software. Example - Going back to the FRS, we asked for A, you have given me A, therefore passed the test

38
Q

What is acceptance testing?
Include example

A

“Testing to verify it meets the customers specific requirements. Example - Take the system out to the client’s site
and test the system on the clients computers”

39
Q

4 stages of maintenance (post-deployment)

A

Test case
Regression testing
Security testing
Deployment testing

40
Q

What is a test case?
Include example

A

A test case (typical operation data) is presented and unit testing is checked. Example - Written the software
and tested it in the company’s offices and signed it off

41
Q

What is regression testing?
Include example

A

Modifications requiring a new version to be issued will ensure changes in one unit are fully tested
against other units which are integrated to this unit. Example - Put the code in to the existing software and check it is backwards compatible with every piece of code that may interface with it.

42
Q

What is security testing?
Include example

A

Ensure integrity and confidentiality (e.g. customer data or intellectual property). Example - Make sure you
haven’t opened a back door where someone can hack the system.”

43
Q

What is deployment testing?
Include example

A

Testing in a simulation of the physical assets or operational environment in which it is due to perform. Example -
Going to the clients site, install the new patch, make sure it works and get it signed off.

44
Q

Differences between interpreter and complier
Include examples of each

A

Interpreter -
Translates one statement at a time.
Slower to execute
No intermediate object code is needed
Examples - Matlab, JavaScript, python and ruby

Compiler -
Converts the whole programme and creates an executable file
Long time to compile, faster to run. Compliers are quicker.
Object code often needs linking and memory allocation
Examples - Haskell, C, C++, Java

45
Q

Draw the project life cycle/software design cycle

A

answer

46
Q

Explain the requirements stage of the project life cycle/software design cycle

A

Client asks for a piece of software

47
Q

Explain the design stage of the project life cycle/software design cycle

A

Design the program, could be FCD, Pseudocode, DFD…. All comes from the FRS and the IO list inside the FRS

48
Q

Explain the implementation stage of the project life cycle/software design cycle

A

Team of software engineers implement the design in code

49
Q

Explain the verification stage of the project life cycle/software design cycle

A

Software testing: Unit testing, system testing, integration testing and acceptance testing

50
Q

Explain the deployment stage of the project life cycle/software design cycle

A

Software is deployed on site, client gets to run program on their own hardware in a live situation and it is signed off

51
Q

Explain the maintenance stage of the project life cycle/software design cycle

A

Go back intermittently, updates, changes in hardware, changes in software ect..

52
Q

6 stages of project life cycle/software design cycle

A

Requirements
Design
Implementation
Verification
Deployment
Maintenance

53
Q

Factors of a predictive model (explanation, advantage, disadvantage)
Include examples

A

When you know what you’re doing
Ad: Stable, minimal costs, detailed design, fix bugs early, better documented, easy to maintain
Dis: Inflexible, released at the end, large up front costs

Examples -
Nuclear power plant
Automative factory
Flight controller
Helicopter simulator

54
Q

Factors of an iterative model (explanation, advantage, disadvantage)
Include examples

A

You’re designing it as you build it
Ad: Allows fuzzy requirements, incremental design, can add new features as we go, released by parts, lower up front cost, can include prototypes/proof of concept stages
Dis: Long term strategy, consideration of cost & risk is essential

Examples -
Operating systems
Large database and management systems
A virtual learning platform

55
Q

Draw the waterfall model

A

answer

56
Q

Factors of waterfall model, 4 advantages, 4 disadvantages
Always draw it

A

Used for predictive systems
Doesn’t loop, information flows from one step to the next.
Requirements written will never be changed
Used for big, expensive projects that each stage will never be adapted
Advantages (4):
Uses clear structure
Determines the end goal early
Transfers information well (little confusion)
Extermely stable due to previous points
Disadvantages (4):
There is no feedback as each stage is never repeated, therefore end-user is not prioritised
Very inflexible
Delays testing until after completion
Large up front costs

57
Q

Draw the v model

A

answer

58
Q

V-Model, 4 advantages, 4 disadvantages
Always draw it

A

Advantages(4)
Testing happens well before coding/implementation, this saves lots of time.
Bugs/issues are found at an early stage
Avoids downward flow of defects
Works well for small projects where the requirements are easily understood
Disadvantages(4)
Inflexible as feedback is only contract-to-contract
Software is developed during implementation phase, so no early prototypes are produced
If any changes happen midway, test document sand requirements have to be updated
Not suitable when requirements are subject to change

59
Q

Draw the spiral model

A

answer

60
Q

Spiral model, 4 advantages, 4 disadvantages
always draw it

A

Iterative
Advantages: improved requirements, common vision with customer, better final design
Software is produced early on
Good for large and high risk projects, where businesses may be unstable
Customer satisfaction is high as there is a commin vision with customer
Strong approval and documentation control
Disadvantages:
Not suitable for small projects as it is expensive
Very dependent on good risk analysis, requires specific expertise
End of project is not known as it can go on indefinently
Time management is difficult as number of phases is unknown

61
Q

Explain the quadrants of a spiral model

A

Quadrant 1 - Design stage, determine objectives, alternatives and constraints.
Quadrant 2 - Risk analysis and prototype build, first stage of implementation
Quadrant 3 - Send beta releases into the field, receive feedback from the market. Fix problems and produce a result
Quadrant 4 - Plan the next iteration

62
Q

What is the fidelity for predictive models

A

Provides all features well tested and gives full fidelity

63
Q

What is the fidelity for iterative models

A

Provides all features where each iteration provides higher and higher fidelity until full fidelity is reacher