A-Level Computer Science Flashcards
What is the SDLC?
A project management model that allows the project to be on time and in budget
What does SDLC stand for?
System Development Life Cycle
What does the SDLC do?
Defines the stages involved in bringing a project from start to end
How many stages are on the SDLC?
7
How is each stage planned and carried out?
They are planned and carried out in a time frame, depending on the size of a problem
What happens if the software/hardware is out of date?
If the software/hardware is out of date, the system analyst may create an entire new system
What are the 7 stages of the SDLC?
- Feasibility Study
- Analysis
- Design
- Create
- Test
- Changeover
- Maintenence
What happens in the Feasibility Study stage of the SDLC?
Understand the problem the client has given you
What happens at the Analysis stage of the SDLC?
Analyse the problem given to you, breaking it down
What happens at the Design stage of the SDLC?
Produce designs for the problem
What happens at the Create stage of the SDLC?
Programming the design
What happens at the Test stage of the SDLC?
Make sure the code is bug free
What happens at the Changeover stage of the SDLC?
The code is installed into the new system
What happens at the Maintenence stage of the SDLC?
Maintaining the code making sure there are no errors
What are methodologies/system approaches?
Methods to ensure the project is on time and in budget
What are the 2 main methodologies?
Agile, Waterfall
What are some similarities and differences between the 2 methodologies?
Both follow the same 7 stages of the SDLC, however they have different approaches
What are some features of the Waterfall methodologies?
Fixed time and budget- no flexibility
Problems can be difficult and timely
Previous stage MUST be completed before going to next
Large amounts of documentation
Rigid
Needs to be clear on its responsibility
Suited for small projects
What are some features of the Agile methodologies?
Adaptable, focuses on customer’s needs
Several variations of Agile (Kanban, Scrum, Extreme Programming/XP)
Allows for feedback
Flexible
Suited for indecisive client
Can go between stages- does NOT have to be in order
Looping back may take time
Rapid method
Lack of emphasis on necessary designing and feedback
What are some features of the Feasibility Study?
Takes months
Has to decide if current hardware is good to use or should start from scratch
Has to decide what type of project it is
What is the acronym for the aspects Feasibility Study?
S- Schedule Feasibility
T- Technical Feasibility
O-Operational Feasibility
L-Legal Feasibility
E-Economic Feasibility
What would be considered under Schedule Feasibility?
Can it be done in a reasonable time?
What should be considered under Technical Feasibility?
Use current hardware or start from scratch?
What should be considered under Operational Feasibility?
Will there be extra work? Is anyone going to need to be trained?
What should be considered under Legal Feasibility?
Will there be any legal issues?
What should be considered under Economic Feasibility?
How much will it cost? Is it worth spending the money?
What is the Analysis stage of the SDLC?
Finding out exactly what needs to be done to solve the problem using various fact finding methods
What are the 4 main fact finding methods?
Observation
Questionnaire
Document Collecting
Interview
What is Observation?
The process of gaining data by observing events and behaviour in a systematic manner
Who is observed during an Observation study?
The End Users
What are some advantages and disadvantages of Observation?
Advantages: Accurate, used on End Users
Disadvantages: Time consuming, behaviour may change
What is Questionnaire?
Creating valid and reliable questions that relate to the assessment objectives
What are some advantages and disadvantages of Questionnaire?
Advantages: Cheap, accurate (used on End Users)
Disadvantages: May lack responses, may be time consuming
What is Document Collecting?
Collecting a set of documents that specify what the client needs
What are some advantages and disadvantages of Document Collecting?
Advantages: Easily shared with others working on the project, low cost
Disadvantages: May contain errors, might be time consuming to go through
What is Interview?
A one-on-one with the client to specify what they need
What are some advantages and disadvantages of Interviews?
Advantages: Personalised, allows the client to be specific
Disadvantages: Time consuming, expensive
What is Decomposition?
Breaks down a large problem into several smaller problems that are easier to tackle and work with
What is Abstarction?
Removes all specific details and only keeps the facts needed. Creates a general idea of what the problem is and how to solve it
How might a System Analyst represent data?
A Data Flow Diagram (DFD)
What does a D(ata) F(low) D(iagram) show?
The input and output of data, what processes were carried out and what data was sorted
What does this symbol represent?:
—————->
Flow of Data
What does this symbol represent?:
|
———————–
Storage
What does the phone symbol represent?
|
Process
What does this represent?:
---------- | | ---------- | | ----------
External Entities
What are the 2 programming languages?
Low level languages, High level languages
What is a Low level language?
Low level languages have certain code words instead of long Binary numbers. Converted into machine code
What is Machine Code?
The language the Computer understands
What is a High level language?
Coded in a way so humans can understand it. Close to the human language. Also converts into machine code
Which converts faster, and why?: Low level languages, High level languages
Low level languages convert faster than high level languages because Low level languages converts into High level languages
What is a Procedural Language?
Structured in sequence and order. It is an example of a Programming paradigm.
What are some features of Procedural Languages
Uses step-by-step instructions
Uses functions and procedures
Obeys instructions
Carries out actions/calculations
Programmer defines precisely each step when performing a task
Very versatile (covers a lot of the basic programming needs)
Many programmers learn to code with Procedural Languages
What is a Programming Paradigm?
A fundamental approach and structure of a programming language. Can be thought of as different categories of High level languages
What is the Programming Stage?
The Programmer replicates the design so you can have it on a computer
What’s the 5th stage of the SDLC?
Testing Stage
What is the Testing Stage?
The System Analyst ensures the system is useable and has no bugs before the program is installed
Why is the Testing Stage important?
To make sure the program is bug free
Why is a program being bug free important?
If there are many bugs, the system can keep crashing
Can be harmful to company, may lose customers
What are the 3 types of testing?
Alpha, Beta, User Acceptance
What is Alpha testing?
Still at development stage and is tested IN HOUSE
Changes may still be made to the system
Large companies use seperate software testing engineers
What is Beta testing?
Software is very close to completion
Given to users who have a general interest in the product
Used in ways software engineers don’t consider
What is User Acceptance testing?
When users buy the final product/staff use the new system
Tested in the ‘Real World’
Can still be updated to fix bugs or fix any weakpoints in the system
What is Continuity of Service?
Service offered by businesses has to be constantly offered. Can’t have the service drop
What are the 4 types of changeover?
Direct changeover
Pilot changeover
Phased changeover
Parallel changeover
What is Direct changeover?
Turn off the old system, turn on the new system
What are some advantages of Direct changeover?
New system is available immediately
Easiest method of changeover
Cheapest method of changeover
Doesn’t need multiple sets of data
What are some disadvantages of Direct changeover?
Riskiest method (if new system fails there is no other system to fall back on)
All data has to be moved to new system for old one to shut off
Period of downtime is created
Upheaval for staff who haven’t used the new system
What does ‘upheaval’ mean?
Making you use something you aren’t familiar with
What is Pilot changeover?
Some branches try the new system while the other branches keep the old system
What are some advantages of Pilot changeover?
Only a small part of the system is affected
Problems in the new system can be identified without affecting the whole company
Staff from the pilot branches can train other staff who haven’t used the new system
What are some disadvantages of Pilot changeover?
Chosen branches experience same disadvantages as other branches for a ‘direct changeover’
Staff on new system might find it hard to share data with staff on old system
Extra work for IT, have to manage 2 systems
What is Phased changeover?
The new system gets integrated with the old system, and the old system is slowly replaced by the new system
What are some advantages of Phased changeover?
Less risks of the system going wrong
Only effects one specific part
Staff are introduced to system in small stages
What are some disadvantages of Phased changeover?
Can take a long period of time
Users asking for changes holds up next phase of installation
Difficult to integrate old and new system
What is Parallel changeover?
Old and new system run at the same time
Once the new system is okay, it can be changed
If new system fails, old one is there
What are some advantages of Parallel changeover?
Less risk than over methods- if the old system fails, the old one is still available
Less stress for staff, still have security of old system
Staff can take their time learning the new system
What are some disadvantages of Parallel changeover?
Time consuming- data has to be entered on 2 systems
One system becomes out of sync with the other
Maintaining multiple sets of data can lead to errors
Extra cost of running and maintaining 2 systems
What is Documentation?
Documents that are produced throughout the stages of the SDLC
Includes design documents, diagrams, requirement specifications and reports
Who are the documents in the interest of?
All documents are of interest to the development team
When and why are documents important?
Important in the development cycle
Important for customers and end users
What is a user guide?
Guides the user on how to use the system
Used as training
What are some features of a user guide?
Instillation guide
Glossary
Material must be suited for novices
Frequently Asked Questions (FAQs) that help with common problems (trouble shooting)
Reference manual
What is a Technical guide?
Designed to help IT literate users maintain and potentially improve the system
What are some features of a Technical guide?
Algorithmic designs (pseudocode, flowcharts)
Annotated code listings (that abide by coding standards set by the company)
Variable lists
Data dictionary
Configuration guide and options
What is maintenance?
Monitoring the system to make sure there are no bugs
What are some features of maintenance?
Rarely free
Expensive
Needs monitoring
Have to pay someone with experience
What are the 3 types of maintenance?
Corrective maintenance
Adaptive maintenance
Perfective maintenance
What is Corrective maintenance?
Finding bugs in the system
What is Adaptive maintenance?
Making changes to the system due to external influence
What is perfective maintenance?
Minor improvements to systems that have been around for a while
What is the name for planning for data loss?
Disaster Planning
How can data be destroyed?
Fire
Theft
Disk failure
Hacking
What is a backup?
Keeping a copy of software and data so they can be recovered should there be a loss
Why is regular backup crucial for organisations?
The data they have is more valuable than anything else
What are periodic backups?
Backing up data on a regular basis, can differ from person to person/business to business
Name the 3 main backup methods
SSD
The Cloud
USB
What are SSD’s?
A storage medium that uses interconnected flash memories to store data without power
What are some advantages of SSD’s?
Fast read-write time
Energy efficient
Compact
What are some disadvantages of SSD’s?
Expensive
Less available
Read-write cycle concerns
What is The Cloud?
Storage medium that can be accessed by anyone with Wi-Fi
What are some advantages of The Cloud?
High speed
Reliable
Mobile