GoConqr hat ein neues Design! Sag uns, wie es dir gefällt.

Mindmap

AS/A2 Computer Science OCR: Unit 1.2

Sam Gue Englisch

Inhalt der Mindmap

AS/A2 Computer Science OCR: Unit 1.2

  1. SDLC

    • System Design Life Cycle
      • Spiral
        • Cycle is repeated until perfected
          • Each cycle the product is improved
            • Best for long tasks and high risk projects
        • Risk analysis is a specialised skill and is expensive
      • Waterfall
        • Each step is signed off
          • Customer then cannot claim it was not done to specification
            • Best for low risk tasks
            • Easy to manage
        • Carries a high level of risk
      • RAD
        • Rapid Application Development
          • Constant customer contact
            • Customer has all say in what the product will be
              • Large amount of testing and constructive criticism
          • Customer may not have time to stay in contact with the company
            • Process then must be halted until they can provide
              • Waste of time
      • XP
        • Extreme Programming
          • Two programmers working on the same project
            • One programs while the other checks the code
              • Increases vigilance and reduces mistakes
              • Swap around every so often to keep themselves "fresh"
                • Make fewer mistakes
            • Faster Production
              • Good for long, complex, high risk tasks
          • Little user involvement
            • A customer representative is attached to the project on the customer's behalf
      • Agile
        • Early and continuous delivery of working programs
          • Allowed change of requirements from anywhere in the process
            • Face to face communication with customer
              • Customer knows what they are getting
        • Customer must maintain contact
          • Like RAD
          • No necessity for immediate accuracy as one can go back on oneself
    • Stages of the SDLC
      • Problem Definition
        • Customer and analyst confer as to what the customer wants
        • A list of specifications is usually drawn up
        • Can help determine an estimated price before the project is started. Leads into Feasibility Study
      • Feasibility Study
        • TELOS
          • Technological
            • Is the technology needed to do the task available?
          • Economical
            • Is it economically viable? Profits VS Costs
          • Legal
            • Is the project legal?
          • Operational
            • What are the environmental effects?
            • Are there enough people to run it once it is completed?
            • What are the social effects?
            • What is the effect on the customer?
          • Schedule
            • Can it be completed within the time-frame?
      • Data Collection and Analysis
        • What input and output devices may be needed?
          • Find out how people would use the product
            • Questionnaires
              • Simple Questions
              • Wide influence
            • Interviewing
              • Complex Questions
              • Questions based on previous responses
            • Observation
              • Watching people in the workplace and how the operate the system
            • Studying Documents e.g.
              • User manuals/guidelines
              • Codes of conduct
              • Paper files
              • invoices and receipts
              • Notes on the wall
        • Analysis is:
          • Understanding of the current system
          • Understanding of requirements
          • Gathering user requirements
          • Proposing the new system
          • Producing a new specification
          • Data
            • What data needs to be stored?
              • How is that data collected?
                • Manually
                  • Data capture forms
                • Automatically
                  • Bar Codes; OMR etc.
          • Input
            • How is data input?
              • Keyed In?
              • Automatic methods?
          • Processing
            • What processing must be performed on the data?
      • Design
        • Inputs
          • Development of data validation methods
        • Outputs
          • Screen designs for displaying outputs
          • Design of printed reports
        • Type of system
          • Batch
          • Real-Time
        • Software
          • What software?
          • What type of HCI? (Human Computer Interface)
            • GUI
            • Command Line
            • Menus
            • Speech
        • Processing
        • Design Specification
          • Details what the system will do. May include:
            • Algorithms
              • Pseudocode
              • DFDs (Data Flow Diagrams)
            • Screen Layouts
            • Designs
            • How the data will be stored
              • ERDs (Entity Relationship Diagrams)
      • Implementation
        • Application of design and information into the final product ready for evauluation
      • Evaluation
        • Testing the product to ensure it runs as intended
        • Product must be rigorously tested
        • A hindsight look on the project
        • Proof of functionality
        • Allows the company to get paid
      • Installation
        • How will the design be integrated into the environment?
          • Purchase of hardware
          • Staff training
          • Creation of data files for storage
          • Identification of an appropriate changeover method
          • An idea of the maintenance service that will be provided in the future
      • Maintenance
        • What type of maintenance?
          • Perfective
            • Maintaining the system to meet the requirements
          • Adaptive
            • Maintaining the system to meet the changes
          • Corrective
            • Regular bug fixing
    • Conversion
      • Direct Changeover
        • Immediately swap systems
          • Unseen errors may arise leading to down-time
      • Parallel Conversion
        • Run both systems in parallel
          • Slowly phase old one out
            • Unseen errors are found before whole new system is implemented
      • Phased Conversion
        • Splitting new system into parts
          • Replacing parts from the old system instead of all at once
            • Errors seen and can be rectified by temporarily changing back to the old system
      • Prototyping
        • Using working models to identify errors before implementation
  2. MEMORY MANAGEMENT

    • Paging
      • Method of data storage where parts of a program are stored in equally sized sections within RAM
        • Some code may be chopped off within logical strings of code
          • More branching is then needed which slows down the process
        • Some sections of code do not need the maximum space required leading to large amounts of empty space which the computer cannot fill
    • Segmentation
      • Method of data storage where parts of a program are stored in sections which are sized in relation to the size of the code called segments
        • Leads to uneven areas of empty space within RAM which leads to clutter and some parts of code being chopped up or having to be stored in VM
        • Splits at logical areas within the code so less branching is required
        • More heavily reliant of VM
    • Virtual Memory
      • Volatile method of data storage where data that is normally stored in the RAM is stored in a section of the HDD
        • Slower than RAM as it is further away from the CPU
        • Place where data is stored when there is no more space left in RAM
        • Parts of programs stored here when they are not needed and when they have finished being used
        • Not all of a program can be stored in RAM as there is too little space
          • Most of a program stored in VM
  3. Interrupts

    • Types of Scheduling
      • First Come-First Served
        • The first instruction that arrives is done before anything that appears later even if it is not the most important
        • Favours long tasks as the computer spends most of its time on them
      • Round Robin
        • Tasks are given an time slot
          • The time slot is a constant length
            • Favours short tasks as long tasks take many time slots to complete and may have to be done in many steps
      • Shortest Job First
        • The shortest instruction is done before the longer instructions
          • Favours short jobs
      • Shortest Remaining Time
        • The queue is sorted on the amount of expected time still to do
          • Favours short jobs
            • Long jobs may never be done
      • Multi-Level Feedback Queues
        • Different queues with ranging priorities
          • Jobs can be moved between queues
      • Priority Heirarchy
        • Each task is given a specific priority and the most important jobs are done first
    • Halts the processor from just working on the OS
    • Types of Interrupts
      • I/O Interrupt
        • Input/Output
          • Keypress
          • Click
          • Microphone
          • Display
      • Software Interrupt
        • An interrupt generated by the processor as it completes an instruction
          • May be a branch/iteration
      • Hardware Interrupt
        • A hardware interrupt is usually caused when necessary hardware like the Hard Disk Drive is damaged and cannot be accessed
          • Usually high priority as it may be necessary to replace the damaged component before the computer can work properly
  4. The Operating System

    • Types of OS
      • Distributed
        • Split across multiple machines
          • More power to utilise
            • Looks like 1 computer to a user
      • Real Time
        • Carry out 1 function consistently at the same speed
          • Used in production lines
            • Needs reliable memory (Not HDD)
              • Easily predict outcomes
      • Embedded
        • Specific purpose
          • Limited skill set
            • May be used in dedicated systems
      • Multitasking
        • Preemptive
          • Certain amount of time for each task
        • Co-Operative
          • Allows one by one processing
          • Used in most PCs
        • Appearance of running simultaneously
      • Multiuser
        • Used by multiple people at the same time
        • Has to manage work-space and allocate resources for each user
        • Run efficiently, maintain security
  5. THE BIOS

    • The Basic Input/Output System
      • Machine code program that can handle the low level input and output systems - e.g. peripherals
        • Provides an interface between the hardware and the OS - Usually found in ROM
          • Conducts the POST (Power On Self Test) and then uses the boot loader (bootstrap) to load the OS's Kernel into memory
            • In order to avoid users modifying the OS for different platforms, the BIOS complies with set standards
              • BIOS can be updated
                • Some changes in the hardware configuration can be coped with manually by altering settings in the BIOS
  6. DEVICE DRIVERS

    • A piece of software that tells the OS how to communicate with peripheral devices
  7. VIRTUAL MACHINES

    • Software simulating an operating system of another machine to test programs intended for the simulated system
      • Used to take on the function of another machine including executing intermediate code
  8. The Operating System

    • The purpose of the OS
      • Device memory management, drawing data into CACHE, RAM and VM when it is needed
      • Processes the UI
      • Provides error messages
      • Sorts interrupts and prioritises them
      • THREE STATES
        • Ready: Ready to be opened Running: On and working Blocked: Halted from working
  9. PROGRAMMING PARADIGMS

    • Object Oriented Programming
      • Features
        • CLASSES
          • A template for a set of objects that have a state and behaviour
        • OBJECTS
          • ATTRIBUTES
            • Properties of the object
          • METHODS
            • Routines, behaviour/actions
          • An instance of a class, a real-world entity, holds attributes and methods
        • INHERITANCE
          • The ability of a derived class to use the same properties of the parent class
        • ENCAPSULATION
          • Methods and properties are made hidden and can only be changed by appropriate methods
        • POLYMORPHISM
          • Creation of general object structures for use with a wide range of data types
    • Procedural
      • Excellent for general purpose programming
        • Many books and references available on well tried and tested coding algorithms
          • Good level of control without having to know precise target CPU details
            • Portable source code
      • Many procedural languages so people tend to specialise in one
        • Needs to be very precise knowledgeable about programming instructions
          • Not as efficient as hand-crafted source code
            • Poor at handling fuzzy conditions e.g. in AI
    • Object Oriented
      • Easier to provide working code
        • Classes can be treated as black boxes
          • Many design patterns available
            • Code re-use is easy
              • Code portability is simple
      • Steep learning curve
        • Complex
          • Not as compact and efficient as low-level languages
    • Assembly Code Instructions
      • ADD: add
      • SUB: subtract
      • STA: stores from ACC into MEM
      • LDA: loads from MEM into ACC
      • BRA: branch always
      • BRZ: branch if zero
      • BRP: branch if positive
      • INP: input
      • OUT: output
      • HLT: end the program
      • DAT: data location

Informationen

Beschreibung
Mindmap am AS/A2 Computer Science OCR: Unit 1.2, erstellt von Sam Gue am 19/11/2016.
Erstellt von
Sam Gue
Aufrufe
7
Bewertung

Feedback

Worum geht es?

Wie gefällt dir das neue Design?

Dein Eindruck