AS1: Approaches to system development 2 Flashcards

1
Q

What is a technical documentation and what’s it use

A

It is created in every large phase of development
For anyone designing, building and maintaining the system e.g. analysts, technicians, programmers etc.
It describes how the system works ….eg analysis report, design spec and test plan

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

What is user documentation

A

For the end user of system (not for technical people)
Describes how to use it- the system…. no technical language
User guide, installation instructions.

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

What is the purpose of maintenance

A

To keep the system working and for it to remain fit for purpose
So it can meet any new requirements needed, remain efficient/useable
Some requirements may have been missed during development

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

What are the types of maintenance and explain them.

A

CORRECTIVE: Fixing bugs and other known issues.
Updates and patches applied
Reactionary (Reacting to known issues)
ADAPTIVE: new requirements happen
Internal-New products, changes to procedures acquiring new business
External- Laws changing, competitors changing procedures, new h/w and s/w
PERFECTIVE: Taking steps to stop problems before they occur
Making code more efficient
Increase Network capacity before needed
Less chance of an error

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

Describe a waterfall model

A

It consists of a number of distinct phases…eg Design
Each stage must be fully completed before moving on to the next
If a problem is found in one stage you can move back to a previous stage.
Each stage has specific deliverables-outlets eg user requirements from analysis

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

What’s the advantages and disadvantages of a waterfall model

A

ADV
Rigid development model
Easy to plan, implement, cost etc…
All requirements are met
DisADV
Very little or no user involvement between requirements and testing. If requirements where misunderstood they wont be discovered until very late Lot of money and time wasted so RISK
Rigid/Inflexible- Not easy to change requirements.

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

Describe RAD (Rapid Application Development)

A

Its an incremental development model (Builds on top)
Focus is on quick delivery of working code,
Requirements are prioritized, essential, non essential
Parts are created in parallel.

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

What are the different processes in RAD

A

Business model- Analysing the business requirements and data flows
Data Model- Identifying data objects (entity/data stores) and relationships between them
Process modelling- What processing happens? e.g. calculations updating
Application Generation- Producing working code. parts of system (evolutionary prototyping)
Testing and turnover- Complex test plan testing… Reduce amount/ need for testing/ feedback already occurred application generation prototype iteration

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

What’s the advantages and disadvantages of RAD

A

ADV
Flexible- Deal with changes to requirements
Lot of user involvement during development. Low risk of misunderstood requirements
Focus on highest priority needs
Reuse code/components
DisADV
Not suitable to all project types
Can be expensive due to costs of automated tools (Code generation and modelling)

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

What are essential and non- essential requirements

A

Essential Requirements - are requirements that must be met

Non-Essential requirements - are requirements that are met if time and money is available

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

What does the term MOSCOW

A

Must
Should (time and money)
Could (If there is time and money)
Won’t (not happening

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

What is a constraint

A

Restrictions which are placed on the limitations of the project.

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

What is a Gantt chart

A

A Gantt chart is a type of bar chart which shows all tasks and subtasks to be done. It also shows the start and finish dates.

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

What are the advantages and disadvantages of a Gantt chart

A

Adv.
Provides clarity as we can see all tasks that have to be done and when they have it be done
Helps eliminate idle time in project
Helps with the time management because we can track our progress against the Gantt chart eg see what deadlines that have to be completed on time.
DisADV.
Large project- The Gantt charts will be large and more complex
Limited- Because the size of bar doesn’t reflect the amount of work cannot see dependency’s between tasks
Difficult to show lead/lag time.

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

What is CPA

A

It is a model of a project that shows the following things:
A list of all activities required to complete the project
The time that each activity will take in consideration
The dependence between the activities

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

Why do we use CPA

A

Allows us to calculate

  • The critical path - a path of activities which if delayed will affect the overall project finish time
  • The shortest possible time to complete the project
  • The earliest and latest that each activity can start and finish without making the project longer
  • The float time for any activities not on critical path
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What are the advantages of CPA

A

ADV
Gives good overview of project can easily see dependencies etc.
Easy to see impact of schedule revisions - Critical path times change
Helps with effective allocation of resources - e.g. can see activities with ‘float’ so can reallocate resources to activities on critical path if needed

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

What are the disadvantages of CPA

A

DisADV
Can be difficult to create and use on larger more complex projects - individual activities must be broken down into sub tasks
Success is based on accurate initial estimates of time/resources needed for each task.

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

What is version management

A

Ensuring everyone is using the same version of system / software
All changes to system are tracked
…revert back to older versions if necessary eg bug / problem

It allows different teams to work on different parts of a system simultaneously
…without effecting main system use
Merge each teams code/updates back to main system.

20
Q

What does archiving data mean

A

Removing data from the live system to improve its system.

Data is stored on a different medium e.g. optical disks

21
Q

Why do we need a backup

A

If something happens our system and our data is lost then we have another copy.

22
Q

What is recovery

A

Getting the system including the data back to how it was before the error occurred.

23
Q

What is a Full Backup

A

Make a copy of all data
Takes a long time to do
Should only be done at very quiet times

24
Q

What is a differential backup

A

This backs up all the changes to fata since last full backup.
Less time than a full backup
…Only changes are saved eg every weekend

25
What is an incremental backup
Backup up all of the changes to data since last back up of any kind Fastest as it has least amount of changes to back up
26
List some potential disasters
``` Floods Fire Natural Disaster Terrorism / riots Accidents ```
27
What's a disaster recovery plan
Its a plank that contains the following 1: Identifying the disaster that could happen 2: Assumption being much in writing the plan i.e. certain staff , back accessible 3: Scope of the plan - identify the areas that are essential for operation 4: Policies / Plan i.e. what we actually going to do so that infrastructure shop etc. Identify the scope to be able to operate and do their scope 5: Identify staff members for carrying out the plan, for example Network manager is responsible to sources computers, getting the backup and putting into system. Office manager responsible for finding an alternative location for staff and new hardware. 6: Revision + Testing plan - Test run, identifying problems and work around them
28
What is a variable
It is named space in memory RAM Which can store values That a programme needs while running e.g. score, lives etc.
29
What are the 4 main data types
String: Text including uppercase, lowercase, digits, punctuation etc. Integer : Phone numbers e.g.. 1,9 4278 etc. Float : Numbers including decimal places e.g. 3.14159, 14.0 Boolean: true/false Character :Stores a single Unicode character e.g. 1, 2
30
What is an algorithm
It is a set of rules/steps designed to solve a problem. The two types are 1: Flow charts 2: Pseudo code
31
What is a Syntax
Syntax is the rules/description of a language | Any syntax errors will cause the programme not to run
32
What is a sequence
Order things coming i.e. most algorithms must follow their sequence in particular order
33
What is selection
This is where a programme decides - selects which piece of code to run depending on a condition
34
What does iteration mean
Iteration - To repeat, do again In coding, iteration means to repeat the same piece of code until a condition is met or the correct number of iterations is complete
35
What is a Count Controlled Loop
Loop over same piece of code Variable is used as part of a test condition Need a counter variable
36
What is a Condition Controlled Loop
Variable is used as part of a test condition While that condition is true, the code will repeat Repeat steps when condition becomes false. Condition could be tested at start or end of the repeated code.
37
What is a Flow chart
Layout the steps of the algorithm Links the steps together in a particular order Including decisions which can result in different directions (selection) Arrows may loop back to do an earlier part of the chart iteration
38
What is Pseudo Code
Code design but in more natural language Key terms area in upper case e.g. IF, WHILE, VARIABLE etc. SELECTION and ITERATION should always be ended
39
What is an object
An object is an element/component within a programme Objects contain attributes (properties) -Values that are associated with the objects e.g. form class, name Objects have methods, methods are action that the object can perform e.g. exam grades, select a class Method - updating stock, reorder
40
What is a class
A class is a design, template or blueprint that described the object. Define all attributes that the object will have and Define all of the actions that the object can perform as method
41
What is a method
``` A method is a section of code within a class Each method defines an ability of that class i.e. method is a function defined within the class. A class method only has access to data within the class ```
42
What is inheritance
``` A new class can be derived from an existing class (parent class) Child class will take on all of the attributes and abilities of the parent class Further child classes can then derived from this now class to form more specialised versions of objects. Child classes will have some differences from parent class. e.g. - Child class can have additional methods Child may have same ability but done in a different way ```
43
Advantages of the use of the Object Oriented approach
Classes and methods created for one object oriented application can be reused in other programs and applications. In addition objects can be extended to include other behaviours and attributes. Re-use enables faster development and lowers the overall cost. • Encapsulation means that once an object is created, it can be used without knowledge of how it is implemented or coded. In addition, objects can hide aspects of themselves from programmers which means that certain parts of the code cannot be altered. • Due to the modular nature of OOP, designers go through an extensive planning phase. This means better designs with fewer flaws and less time spent on program maintenance. • The OO approach can also improve software quality. Firstly, a class can be tested in isolation, away from the application in which it is intended to be used. Secondly, with the use of inheritance, the testing of a derived class can assume the base class is correct and can focus on the additional attributes and behaviours.
44
Disadvantages of use of the Object Oriented approach
``` Object oriented programming has some drawbacks which include: • Concepts including inheritance and encapsulation can be difficult to understand in the first instance meaning that there is a steep learning curve. This means that programmers must learn extensive class libraries before even beginning to program simple applications. • Object oriented programs can incur run time cost due to dynamic dispatching. This is where the process selects which particular version of a method to call (polymorphism) ```
45
What does IDE stand for and what are its main features
``` Integrated Development Environment -Code editor -Area where programming code is typed -Auto completion tools Outlining - Programmer can collapse areas of code eg a function definition - Line numbering -Syntax assistance - Coloured lines to show syntax errors GUI Tool box - Allows interface components to be easily coloured to application e.g. form, add button, drop down etc... ```
46
What is a solution explorer, debugging tool, and an error message
Solution Explorer = Allows programmer to navigate through solution folders, access different parts e.g. Database Forms Code etc Debugging Tools = Line breaks …. allows code to pause so that variables and other elements can be inspected Error Messages = Description of syntax errors Where they can be found (line number)
47
What is the compiler and an interpreter
Compile All other code is translated into machine code stored as a new file Thus machine code be run at any time Interpreter All of code is translated line by line Each line is run immediately We must reinterpret every time we want to run this code