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 Abstraction?
Breaks down a large problem into several smaller problems that are easier to tackle and work with
What is Decomposition?
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