Domain 8: Software Development Security

Video transcripts

Every course video in Domain 8, written out with timestamps so you can search the wording instead of scrubbing through playback.

  • Transcript

    1. 0:00Programming languages define the rules by which source code can be written.
    2. 0:04Over time,
    3. 0:05many ways of categorizing programming languages have been developed.
    4. 0:09And these categories help organizations decide
    5. 0:12which language best fits their systems.
    6. 0:14One important factor is the level of abstraction.
    7. 0:17This refers to how close the language is to the CPU's binary
    8. 0:21environment and how much control it gives the programmer over the system.
    9. 0:25Lower order languages such as Assembly
    10. 0:27provide direct hardware level interaction.
    11. 0:30These require the programmer to understand details
    12. 0:33like binary data flows and timing.
    13. 0:35High.
    14. 0:35Order languages let programmers think more about
    15. 0:38solving problems than about machine details.
    16. 0:41For example,
    17. 0:42in a high order language,
    18. 0:43a statement such as Or total equals running total
    19. 0:47retail price multiplied by the sum of 1.0 plus
    20. 0:51sales tax rate lets the programmer focus on the
    21. 0:54math needed for a point of sale application.
    22. 0:57In assembly,
    23. 0:58this same operation would require a long sequence of instructions like move.
    24. 1:02Load,
    25. 1:03add and multiply.
    26. 1:04This shifts attention away from solving the
    27. 1:07business problem and into hardware mechanics.
    28. 1:09The compiler translates the high level statement into machine instructions.
    29. 1:14Another factor is data type enforcement,
    30. 1:17which describes how well a language prevents errors
    31. 1:19when working with different types of data.
    32. 1:21For example,
    33. 1:22you cannot logically add the number 3 to a person's name.
    34. 1:26Without enforcement,
    35. 1:27these ambiguities can cause.
    36. 1:30Data protection or data hiding prevents one software unit
    37. 1:33from reading or altering the private data of another.
    38. 1:36Code protection or logic hiding prevents one software unit
    39. 1:40from altering the source or executable code of another.
    40. 1:43These protections help maintain software security and integrity.
    41. 1:47Together abstraction,
    42. 1:49data type enforcement,
    43. 1:51and protections around data and code form
    Open in the ISC2 portal