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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

advantages of decomposition

A
  • different members of a team can work on different sub problems
  • makes maintenance easier
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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)
  • time feasibility :
    • can the system be implemented within the required
      time scale
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

what are the 4 types of investigation methods

A
  • interview
  • observation
  • questionnaire
  • document collecting
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

what does observation involve, and what are the advantages and disadvantages

A
  • the analyst shadows employees of the customer, making notes on how to do their job

advantages:
- can actually see what is happening and do not have to rely on what people tell you they think is happening
- pick up parts of the system that are not immediately obvious to the customer
- confirm information gathered through different fact-finding methods
- the analyst sees parts of the system that employees may not realise are important or consider important to discuss

disadvantages:
- time consuming and expensive to carry out
- staff may feel they are being watched and act differently so you do not actually see what goes on every day
- cost of sending analysts around the world
- there is no guarantee that some of the more subtle parts of the system will show up during the observation period

17
Q

what does questionnaire involve, and what are the advantages and disadvantages

A
  • designing a questionnaire requires knowledge of the system to be built and the range of people who are the target audience for the questionnaire
  • can allow the analyst to get a range of responses on a specific subset of requirements

advantages:
- cheap to produce for a large number of people
- can be distributed worldwide
- could be completed online so results can be available very quickly
- can be anonymous - more honest responses
- cheaper than interviewing in terms of time spent gathering data

disadvantages:
- hard to create and design a good questionnaire (have to be designed by experts or information could be unusable)
- not all questionnaires sent out will be completed
- people don’t always take questionnaires seriously as interviews and may not give correct answers
- no follow up questions

18
Q

what does document collection involve, and what are the advantages and disadvantages

A
  • the analyst gathers any business documents that relate to the new system to be constructed (orders, invoices, financial records and any other document that it is use on a day to day basis)

advantages:
- analyst can see how the current system should be operating
- inexpensive method of gathering lots of information fairly quickly
- can identify storage requirements
- documents are reliable and show most of the data stored in the system and that data that is used

disadvantages:
- staff may not be following procedures in documentation and may be using system in their own way
- documentation may be out of date and not updated to reflect system changes
- documents give a limited view of the system and do not say how they were created
- documents may contain sensitive information and there may be restrictions on seeing them

19
Q

what does interviews involve, and what are the advantages and disadvantages

A
  • carefully planned to extract maximum amount of information about the current system
  • these can take place at all levels within the organisation are not just directed at management

advantages:
- can gather large amount of detailed information
- can make judgements on validity of information from personal contact or body language
- can ask follow up questions or open ended questions to gather more detailed information in selected areas

disadvantages:
- time consuming and expensive to carry out
- has to be carried out by trained interviewer or closed questions written by experts
- difficult to analyse large amount and wide variety of information

20
Q

what are the possible effects if increasing the use of computers in the work place

A
  • new jobs have been created
  • computers speed up the repetitive, boring parts of the jobs, leaving the people to do the creative, interesting parts
  • computers are cheaper to run, so have led to a reduction in the cost pf manufactured goods
  • repetitive job such as copying documents or stamping metal are carried out more reliably by computers
  • some jobs have disappeared completely
  • people worry about not being able to use new systems
  • learning new systems can take time
  • new computer systems can be expensive to install
  • teleworking/ video conferencing
21
Q

hardware selection criteria

A
  • hardware must meet requirements of proposed system
  • hardware must support current software
  • hardware must be upgradable and expandable to meet the needs of the next planning interval
22
Q

software selection criteria

A
  • software must meet requirements of proposed system
  • software must be compatible with the current and future hardware over the next planning interval
  • software must be standardised throughout the business to improve purchasing power, simplify training
23
Q

what is carried out in the design stage

A
  • design the data structures
  • files/ database structures
  • algorithms ( flowcharts or pseudo code for example)
  • user interface design
  • use prototyping to try out how the system might look and work long before it is complete
  • design the test data to be used (typical, extreme and erroneous)
  • all this needs to be implemented/coded by the programmers using suitable techniques such as annotation and self documenting code
24
Q

what is alpha testing

A
  • is conducted in-house by developers or highly skilled testers and occurs before the customer agrees to accept the final program
  • alpha builds are not shared with either the end user or with the customer
  • alpha builds are not final piece of software and often include limited functionality and many bugs
25
Q

what is beta testing

A
  • beta testing is conducted after alpha testing and later on in the software development life cycle
  • beta builds are shared with a limited number of end users to beta test the system with live data
  • beta builds contain all the main functionality but will still include some bugs
  • bugs reported by the beta testers are corrected by the development team
26
Q

what is acceptance testing

A
  • is the final phase of testing during the software development life cycle
  • is undertaken by the actual end users of the system with real data
  • the purpose is to ensure the system has met the original requirements and the specifications of the customer
27
Q

what is the changeover phase and what are the 4 methods

A
  • direct
  • pilot
  • phased
  • parallel
  • once a system has been designed, coded and tested, it needs to replace the old system
28
Q

describe the direct changeover

A
  • sudden change to new system
  • could be used where failure would not be catastrophic or most likely where there isn’t an existing system already
  • can be cheaper to implement
  • new system is available immediately if required
  • can be the least disruptive if implemented well
  • new system may not work as well until staff are fully used to using it
  • if new system fails, organisation have no system which could be costly or dangerous
29
Q

describe the pilot changeover

A
  • used by part of the organisation
  • a department is selected in the organisation and they run the new system while the remainder continue with the old system
  • all features of the new system can be fully trialed
  • if something goes wrong with the new system, only a small part of the organisation is affected
  • the staff who were part of the pilot scheme can help train other staff
  • all staff can focus on one area to resolve any problems
  • difficulties identified in one area can be resolved and managed in the next area
  • for the office / department doing the pilot, there is no backup system if things go wrong
  • might cause problems in the changeover period when they need to communicate with each other and have different systems
  • slower to get new system up and running compared to some other methods
30
Q

describe the parallel changeover

A

-both old and new system running at the same time
- the old system continues alongside the new system for weeks or months
- safest option as if new system fails, they still have the existing system
- often used for critical systems such as hospitals and banks
- new system is available immediately if required
- the outputs from the old and new systems can be compared to check that the new system is running correctly
- expensive as require temporary staff or overtime for current staff to operate both systems
- could cause confusion for staff/ customers having two systems

31
Q

describe the phased changeover

A
  • phasing in parts of the system
  • this is used with larger systems that can be broken down into individual modules that can be implemented separately at different times
  • it could also be used where for example only a few customer accounts are processed using the new system, while the rest remain for time on the old system
  • phased conversion could be direct or parallel
  • may be compatibility issues between the new and existing modules
  • allows users to gradually get used to the new system
  • staff training can be done in stages
  • all staff can focus on one area to resolve any problems
  • problems can be fixed quicker as more experts to resolve one functionality problem at a time
  • difficulties identified in one area can be resolved and managed in the next area
  • might cause problems in the changeover period when they need to communicate with each other and have different systems
  • slower to get new system up and running compared to some other methods
  • if a part of the new system fails, there is no back up system, so data can be lost
  • some systems cannot easily be broken down by functionality
32
Q

what is the maintenance phase and what are the 3 different types

A
  • maintenance starts from the day the new system begins to be used until the time when the system is no longer used
  • perfective, adaptive, corrective
33
Q

what is perfective maintenance

A
  • this type of maintenance improves the current system being used
  • making improvements that are not major enough to justify a new system
  • when the system functionality is improved
34
Q

what is adaptive maintenance

A
  • the current system being used is changed to suit new working requirements, for example, perhaps it is now a requirement to allow emails to be sent to customers
  • it could also be related to changes needed because of a new operating system version or hardware
  • when the system is changed to run on a new hardware or software platform
35
Q

what is corrective maintenance

A
  • this involves fixing errors found in the current system while it is being used
  • no substantial program code can claim to be ‘bug free’
  • some bugs can remain dormant for years only to be triggered by a specific event
  • others become immediately apparent
  • in any cases, corrective maintenance will attempt to eliminate these errors - this will involve recoding, but not changing the design of the system
  • fixing bugs that were not detected during development or system testing
36
Q

why are data flow diagrams useful

A
  • because of the central importance of data/ picture useful to ease complexity
  • makes it easier to understand