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
ERD
Entity Relationship Diagram shows how different entities relate to each other in an application or database
26
Environmental Feasibility
whether or not a system is environmentally acceptable
27
Ethical Feasibility
whether or not a system is socially and ethically acceptable to produce the system
28
Evaluation
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
29
Extreme Programming Methodology
a variant of agile methodology focused on improving software quality and responsiveness to changing customer requirements
30
Feasibility Study Report
describes whether the system is a feasible solution to the problem, looking at various types of feasibility
31
Functional Abstraction
where the implementation detail of the computational method is hidden
32
Gradual Changeover
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
33
Human-Computer Interaction
the study, planning and design of what happens when a computer and human work together
34
Implementation
involves replacing the old system with the new
35
Implementation Plan
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
Information Hiding
where a class encapsulates its private attributes and methods which are exposed only through its interface
37
JSD
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
Legal Feasibility
whether the technology needed to solve the problem is legal
39
Maintainability
how easy it is to fix bugs, change parameters and respond to changing requirements
40
Maintainability Evaluation
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
Maintenance
fixing bugs, changing parameters and responding to changing requirement
42
Model
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
Modular Programming
breaking up a program into smaller, more manageable units called modules, with each module responsible for a specific task
44
Module
manageable units of code that the main code has been broken up into
45
Object Diagram
a diagram to show instances of a class which may be named or anonymous
46
Off the Shelf Software
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
Parallel Run
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
Perfective Maintenance
improving the system to make it work better, i.e. improving performance or ease of use
49
Phased Changeover
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
Pilot Changeover
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
Polymorphism
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
Problem Definition Document
document laying out the issues with the current system that need to be fixed in the new system
53
Problem Reduction
the process of generalising or reducing a problem to one that has already been solved
54
Procedural Abstraction
the ability to design a well-abstracted procedure that is generalised as far as possible
55
Project Manager
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
Prototype
early or trial working version of the proposed system developed to test possible solution
57
Prototyping
building a working model, demonstration system, simplified version, rough copy or trial piece of software to help an analyst
58
RAD Methodology
Rapid Application Development Methodology a programming methodology that put less emphasis on planning and more emphasis on an adaptive process
59
Return Code
a piece of data sent by function to the point of invocation
60
Requirements Specification Documentation
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
Robust Code
where a program will function reliably and not crash or go into infinite loops, even with incorrect inputs or unpredictable values
62
Screen Scraper
the action of using a computer program to copy data from a website
63
Sequence Diagram
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
Social Feasibility
whether it is socially acceptable to produce a system
65
Software House
a company that builds and implements custom software solutions for its clients
66
Spiral Model Methodology
a risk-driven software development process model based on the unique risk patterns of a given project
67
State Machine Diagrams
shows the behaviour of an object during its lifetime
68
Stepwise Refinement
another name for decomposition
69
System Evaluation
the completed system is evaluated against the original system requirements
70
System Level Response Time
time taken to respond when disregarding stuff out of our control
71
Systems Flowchart
shows processes and activities to be carried out with storage, inputs, outputs, master and transaction files
72
Systems Lifecycle
a method of developing a new system using an iterative cycle made of a series of fixed stage completed in sequence
73
Feasibility Study
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
Systems Analysis
involves looking at the current system to find out how it works and its strengths and weaknesses
75
Systems Analyst
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
Test Phase
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
Acceptance Testing
where customer test the system
78
Alpha Testing
where developers do testing
79
Beta Testing
where selected end-users do testing
80
Performance Testing
tests that the system runs fast enough
81
System Testing
where the whole system is tested at once
82
User Testing
test a single code module or program
83
Waterfall Methodology
a linear sequential approach to software development
84
Usability
ease with which a user interface can be used by its intended audience to achieve defined goals
85
Usability Evaluation
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
Use Case Diagram
a use case is a service that the system can provide; a stickman is shown as the initiator of the service