System Design Flashcards

1
Q

Abstraction

A

simplifying problems by removing unnecessary information or irrelevant detail

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

Activity Diagram

A

can appear quite similar to flow charts, but serve the purpose of both a flow chart and a data flow diagram in agile methodology. They show processes involved in a single use case from beginning to end

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

Adaptive Maintenance

A

changing the system to meet new needs, generally due to external factors, i.e., changing to update VAT or tax rates

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

Agile Development

A

a cyclical approach to software development involving continuous improvement, shorter development cycles, wider market windows and early customer feedback

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

Argument

A

when a parameter is given a specific value

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

Behaviours

A

the functions of the object or what the object does in Object Orientated Programming

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

Bespoke Software

A

software that is custom written and tailored for a specific task or customer, that is costly and time consuming to produce and works exactly as required

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

Class

A

a template used to create objects of that class

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

Class Diagram

A

says the name, attributes and methods of a class, often drawn as a hierarchy showing how features of the super class are inherited by the derived classes

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

Communication Diagram

A

these show the interaction between objects in a system

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

Compatibility Evaluation

A

looks at whether the system will work with existing system, specifically looking at whether any bus have been identified, is it reliable, and are access times to data acceptable

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

Complexity of a Problem

A

taken to be the worst case complexity of the most efficient algorithm which solves the problem

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

Computational Complexity

A

a measure of how economical an algorithm is with time and space

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

Computational Thinking

A

an idea developed by Jeanette Wing that means to think like a computer scientist

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

Control Abstraction

A

process by which programmers define new control constructs

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

Corrective Maintenance

A

fixing faults in the program, i.e. bug fixing

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

Data Abstraction

A

enforces a clear separation between the abstract properties of a data type and the concrete details of its implementation

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

Data Dictionary

A

a collection of data and attributes about data elements that are being used in a database, describing the meanings and purpose of data elements within the projects context and provides guidance on interpretation

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

Data Flow Diagrams

A

show entities, processes, data flows and data stores

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

Development Phase

A

involves production of programs, tailoring of software and modification of code. Traditionally, the system is fully specified, programmers work to the requirements specification and this is usually used on large systems developed by large teams

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

Direct Implementation

A

at a convenient time, the old system is stopped and the new one is started

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

Economic Feasibility

A

whether or not you can afford to solve a problem within the current budget

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

Encapsulation

A

combining a record with the procedures and functions that manipulate it ot form a new data type, a class in Object Orientated Programming

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

Entities

A

sources of data

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

ERD

A

Entity Relationship Diagram

shows how different entities relate to each other in an application or database

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

Environmental Feasibility

A

whether or not a system is environmentally acceptable

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

Ethical Feasibility

A

whether or not a system is socially and ethically acceptable to produce the system

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

Evaluation

A

a systematic assessment of whether something meets its objectives or specifications or how well it meets the latter in terms of effectiveness, usability and maintainability

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

Extreme Programming Methodology

A

a variant of agile methodology focused on improving software quality and responsiveness to changing customer requirements

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

Feasibility Study Report

A

describes whether the system is a feasible solution to the problem, looking at various types of feasibility

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

Functional Abstraction

A

where the implementation detail of the computational method is hidden

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

Gradual Changeover

A

one part or module of the system is changed over separately; the new part is then checked, before the next part of the system is changed, thus, it may take a long time to changeover the whole system

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

Human-Computer Interaction

A

the study, planning and design of what happens when a computer and human work together

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

Implementation

A

involves replacing the old system with the new

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

Implementation Plan

A

explains how to backup the current system, switch over to the new system, deactivate the old system, activate the old system, migrate data from the old system to the new and disaster recovery

36
Q

Information Hiding

A

where a class encapsulates its private attributes and methods which are exposed only through its interface

37
Q

JSD

A

Jackson Structure Diagrams

provides an overview of the design using the top-down approach. It breaks the system into components and shows links between them

38
Q

Legal Feasibility

A

whether the technology needed to solve the problem is legal

39
Q

Maintainability

A

how easy it is to fix bugs, change parameters and respond to changing requirements

40
Q

Maintainability Evaluation

A

looks at whether a system will be easy to maintain, whether any modifications or shortcomings have been identified, whether any new modules are needed and whether the data is secure against unauthorised access and complying with any relevant legislation

41
Q

Maintenance

A

fixing bugs, changing parameters and responding to changing requirement

42
Q

Model

A

abstraction of an entity in the real world or in the problem that enables an automated solution, is a representation of the problem that leaves out unnecessary detail

43
Q

Modular Programming

A

breaking up a program into smaller, more manageable units called modules, with each module responsible for a specific task

44
Q

Module

A

manageable units of code that the main code has been broken up into

45
Q

Object Diagram

A

a diagram to show instances of a class which may be named or anonymous

46
Q

Off the Shelf Software

A

software that can be brought in, generally cheaper and quicker to gain a result from, that may require a chance in how the customer works

47
Q

Parallel Run

A

the old and new system run alongside one another for a period of time. The results and outputs are compared. Once confidence in the new system is gained, the old system can be discontinued

48
Q

Perfective Maintenance

A

improving the system to make it work better, i.e. improving performance or ease of use

49
Q

Phased Changeover

A

one part or module of the system is changed over separately; the new system is then checked before the next part of the system is changed, thus, it may take a long time to changeover the whole system

50
Q

Pilot Changeover

A

the new system is implemented for a few users or places, such as one branch of a nationwide bank; the results from the pilot users are compared to other uses who are still using the old system, and once confidence is gained, the new system is rolled out

51
Q

Polymorphism

A

giving an action one name that is shared up and down a class hierarchy; each class in the hierarchy implements the action in a way appropriate to itself

52
Q

Problem Definition Document

A

document laying out the issues with the current system that need to be fixed in the new system

53
Q

Problem Reduction

A

the process of generalising or reducing a problem to one that has already been solved

54
Q

Procedural Abstraction

A

the ability to design a well-abstracted procedure that is generalised as far as possible

55
Q

Project Manager

A

oversees the whole project, that all members of the team are communicating, monitors the progress, liases with the team and the customer and ensures the project is completed on tie and on budget

56
Q

Prototype

A

early or trial working version of the proposed system developed to test possible solution

57
Q

Prototyping

A

building a working model, demonstration system, simplified version, rough copy or trial piece of software to help an analyst

58
Q

RAD Methodology

A

Rapid Application Development Methodology

a programming methodology that put less emphasis on planning and more emphasis on an adaptive process

59
Q

Return Code

A

a piece of data sent by function to the point of invocation

60
Q

Requirements Specification Documentation

A

forms a contract between system developer and client user, forming the basis for the next steps in development, test strategies, designs, and needs to be precise and unambiguous because failure to meet requirements means client will not pay for product

61
Q

Robust Code

A

where a program will function reliably and not crash or go into infinite loops, even with incorrect inputs or unpredictable values

62
Q

Screen Scraper

A

the action of using a computer program to copy data from a website

63
Q

Sequence Diagram

A

these diagrams show the flow of program logic and the order in which messages are passed between objects, with vertical dashed lines as timelines, horizontal arrows as messages and rectangles as objects

64
Q

Social Feasibility

A

whether it is socially acceptable to produce a system

65
Q

Software House

A

a company that builds and implements custom software solutions for its clients

66
Q

Spiral Model Methodology

A

a risk-driven software development process model based on the unique risk patterns of a given project

67
Q

State Machine Diagrams

A

shows the behaviour of an object during its lifetime

68
Q

Stepwise Refinement

A

another name for decomposition

69
Q

System Evaluation

A

the completed system is evaluated against the original system requirements

70
Q

System Level Response Time

A

time taken to respond when disregarding stuff out of our control

71
Q

Systems Flowchart

A

shows processes and activities to be carried out with storage, inputs, outputs, master and transaction files

72
Q

Systems Lifecycle

A

a method of developing a new system using an iterative cycle made of a series of fixed stage completed in sequence

73
Q

Feasibility Study

A

purpose is to ascertain the problem to solve and whether it is solvable, usually done by a systems analyst or a business consultant, resulting in feasibility study report and problem definition document. The aim is to produce a clear unambiguous description of the problem

74
Q

Systems Analysis

A

involves looking at the current system to find out how it works and its strengths and weaknesses

75
Q

Systems Analyst

A

must bridge the gap between users who are an expert on their problem but don’t understand what a computer system can achieve and developers who are experts in system development but don’t understand the problem

76
Q

Test Phase

A

involves producing and carrying out a suitable testing strategy using a test plan that specifies the tests to be completed. Tests are based on user requirements specification, involve the production of test data and specifies expected results

77
Q

Acceptance Testing

A

where customer test the system

78
Q

Alpha Testing

A

where developers do testing

79
Q

Beta Testing

A

where selected end-users do testing

80
Q

Performance Testing

A

tests that the system runs fast enough

81
Q

System Testing

A

where the whole system is tested at once

82
Q

User Testing

A

test a single code module or program

83
Q

Waterfall Methodology

A

a linear sequential approach to software development

84
Q

Usability

A

ease with which a user interface can be used by its intended audience to achieve defined goals

85
Q

Usability Evaluation

A

looks at whether the system is easy to use, what are the training needs of users and have they been met, is online help available and useful, do the users have rapid access to data, and most importantly does the system meet the user requirements listed in the requirements specification?

86
Q

Use Case Diagram

A

a use case is a service that the system can provide; a stickman is shown as the initiator of the service