Back to 课程

Computer Science GCES OCR

0% Complete
0/0 Steps
  1. Cpu Architecture Performance And Embedded Systems Ocr
    5 主题
  2. Primary And Secondary Storage Ocr
    6 主题
  3. Data Storage And Compression Ocr
    12 主题
  4. Networks And Topologies Ocr
    6 主题
  5. Wired And Wireless Networks Protocols And Layers Ocr
    6 主题
  6. Identifying And Preventing Threats To Computer Systems And Networks Ocr
    2 主题
  7. Operating Systems And Utility Software Ocr
    2 主题
  8. Ethical Legal Cultural And Environmental Impact Ocr
    2 主题
  9. Computational Thinking Searching And Sorting Algorithms Ocr
    3 主题
  10. Designing Creating And Refining Algorithms Ocr
    5 主题
  11. Programming Fundamentals And Data Types Ocr
    5 主题
  12. Additional Programming Techniques Ocr
    7 主题
  13. Defensive Design And Testing Ocr
    6 主题
  14. Boolean Logic Diagrams Ocr
    2 主题
  15. Programming Languages And Integrated Development Environments Ides Ocr
    3 主题
  16. The Exam Papers Ocr
    2 主题
  17. Structuring Your Responses Ocr
    3 主题
课 Progress
0% Complete

Exam code:J277

What is defensive design?

  • Defensive design is an approach to software development where every possible input from a user is considered

  • This is done to anticipate all of the ways a user could misuse a program

  • Defensive design ensures that the final program is robust and reliable for all users

  • Occasionally, some errors can occur in software that can not be foreseen by the developer when writing the software

Defensive Design Considerations

How can a software developer anticipate errors in programs?

  • Many errors can occur in a program and some of these can be difficult to anticipate when initially developing the software

  • The programmer must ensure the software has a way of dealing with the potential errors to ensure their software does not crash

  • Some examples of these errors include

    • Peripheral errors

    • Disk errors

    • Communication errors

  • In these instances, a programmer must ensure their software deals with these errors to ensure it is robust and reliable for its users

Peripheral errors

  • Peripherals commonly don’t perform as intended, such as printers and this can cause an issue for the end user

  • If a printer runs out of paper, runs out of ink or has a paper jam; the user should have the option of reprinting their document

  • These considerations must be pre-planned in the software

Disk errors

  • Programs such as word processing software must be able to account for errors on a disk drive

  • Example errors that may occur on a disk include

    • Disk running out of space

    • Files and folders not being found

    • Corrupted files

  • These issues must be preplanned in the software the user has an alternative option, for example, saving their work on another disk

Communication errors

  • Applications which use online systems must be connected to a host server

  • When a connection is lost, the program should provide a way for the user to cancel their request and try again

  • The program may also be able to automatically retry if the connection resumes

Authentication

What is Authentication?

  • Authentication is the process of ensuring that a system is secure by asking the user to complete tasks to prove they are an authorised user of the system

  • Authentication is done because bots can submit data in online forms

  • Authentication can be done in several ways, these include

    • Usernames and Passwords

    • CAPTCHA

  • Other methods that programmers can do to authenticate the user is include

    • Allowing users to recover passwords via email links and SMS codes

    • Encrypting data

authentication-recaptcha

Responses

您的邮箱地址不会被公开。 必填项已用 * 标注