1.5 systems analysis Flashcards
1
Q
user documentation
A
- describe how to use the system contents
- detailed instructions on how to navigate, input data, produce reports
- actions to take when error messages are produced
- installation guide
2
Q
maintenance documentation
A
- be used by the og developer or by a different programmer at a future date
contents - algorithms for all code which are unambiguous list of instructions to solve a problem (pseduo code or flow charts)
- annotated listings which is the program code with comments
- data dictionary is a file or printout containing descriptions of and other information about, the structure of the data system testing
- variable list
- subroutine list
- class diagram
3
Q
back up and recovery procedures
A
- describe how and when data is/should be backed up and how to recover the data in event of loss
contents - when data is backed up
- where data is backed up
- clerical procedures to follow after back up (eg. how to securely stored backed up data)
- instructions or steps to recover data after loss
4
Q
what is the waterfall approach
A
- sequential process
- developers draft the design of a system up front and it does not change
- once the analysis and design stages are complete, developers cannot go back to make any changes
- if the analysis or design of the project are inaccurate or incorrect in any way, the project will fail due to the rigidness of the waterfall methodology
- requires less communication between the client and the developer
- client input is only required during the analysis and at times the design stage
5
Q
what is the agile approach
A
- incremental approach to development
- developers start with a simple project design and requirements
- iterative approach as analysis and design relies on each other
- analysis informs design and the design informs further analysis to be undertaken
- changes can be made after each phase of development, analysis can be revisited and designs can be changed
- strong communication between the client and the developer should be regular
- clients are involved during all stages of development
6
Q
what is decomposition
A
- the process of breaking a complex problem down into smaller subproblems
- these subproblems are easier to manage throughout the entire software development process
- if a complex problem is not decomposed, the project will be too difficult to solve and become unmanageable
- if a problem is too complex it is prone to errors, bugs and going over its initial costs
7
Q
what is abstraction
A
- the process of ignoring or removing specific information and data to allow developers to focus on the important details of a specific subproblem
- allows developers to think about a problem in more general terms
- allows developers to identify common solutions to the general problem they have abstracted
- if a problem is not abstracted, the solution can become unnecessarily complicated
- stops a solution becoming unnecessarily complicated
- doesn’t solve problems but allows us to simplify them (for example: ‘the data will be sorted’ but without thinking about the method of sorting required - this will be dealt with later)
8
Q
advantages of decomposition
A
- different members of a team can work on different sub problems
- makes maintenance easier
9
Q
disadvantages of decomposition
A
- may be difficult to combine the subproblems to solve the original problem
- poorly understood problems are difficult to decompose
10
Q
what is abstraction similar to
A
the ‘black box programming’ technique where we only need to know what a subroutine/procedure does and the parameter it requires and we do not need to know how to do it
11
Q
extra advantages of agile
A
- because the products are tested so thoroughly the product can be launched at the end of any cycle and is therefore, more likely to reach launch date
12
Q
disadvantages of agile
A
- needs a very good project manager to keep the project focused otherwise it could come in late and over budget - can be hard to establish a firm delivery data
- the final project can be very different to what was initially intended
- documentation is often neglected as working software usually takes priority over comprehensive documentation
13
Q
explain the purpose of a feasibility study
A
- is to decide whether a solution is possible and how it may be completed or to decide whether the current system can be replaced/ is worth replacing
14
Q
what are the different stages of feasibility and what do they check
A
- technical feasibility :
- will the proposed system meet its objectives?
- does the technology exist to allow the system to work?
- social feasibility :
- the effects on the employees and customers of the proposed system
- unemployment, redundancies, retraining,
relocation - consider customer service
- legal feasibility :
- are there any legal constraints that would prohibit
aspects of the system (eg. will the system
contravene the Data Protection act)
- are there any legal constraints that would prohibit
- time feasibility :
- can the system be implemented within the required
time scale
- can the system be implemented within the required
- cost effective :
- costs include capital/development costs and
running costs - should not over or under utilise
developers, resources, methods and technologies - hardware and software should be researched to ensure it is cost effective
- costs include capital/development costs and
15
Q
what are the 4 types of investigation methods
A
- interview
- observation
- questionnaire
- document collecting