Presentation is loading. Please wait.

Presentation is loading. Please wait.

ISO 9126: Software Quality Internal Quality: Maintainability

Similar presentations

Presentation on theme: "ISO 9126: Software Quality Internal Quality: Maintainability"— Presentation transcript:

1 ISO 9126: Software Quality Internal Quality: Maintainability
Analyzability, Testability, Stability, Changeability External Quality Functionality Usability Reliability Portability Efficiency


3 Moore's Law Noted that the number of transistors per unit area had doubled every year from 1958 to 1965 Expected the trend to last “for at least ten years” Gordon Moore Co-founder of Intel Often misquoted as “the speed will double every 18 months”


5 Intel Processor Speeds over Time
10 GHz 1 GHz 100 MHz 10 MHz 1 MHz Pentium 4 Pentium III Pentium II Pentium 80486 80386 80286 8086 8080 8008 4004

6 What’s the State-of-the-Art?
Fastest commercially available CPU: ~4GHz Fastest experimental CPU: 500Ghz Need to cool it down to 4°K, though Fastest theoretical transistor: 1THz

7 The End of Moore’s Law? Production limitations Physical limitations
Bottleneck issues Market issues

8 pre-1940s Mechanical 1940s Electromagnetic Relays 1950s Vacuum Tubes 1960s Transistors since 1970s Integrated Circuits The Future Quantum Computers?

9 The Current Solution: Parallelism

10 Process-Level Parallelism
Early computers (1950s and 1960s) could only run one program at a time When it finished, it would run the next one Multi-programming operating systems (1970s) made it appear as if multiple programs were running simultaneously 10

11 Instruction-Level Parallelism
Rather than wait for an instruction to finish, start the next one as soon as possible Very common in RISC architectures Pipelining: Fetch/decode one instruction while executing another 11

12 Thread-Level Parallelism
Modern programming languages support threads, which allow a program to do more than one thing at a time Examples Reading data from one source while writing to another Performing two parts of a calculation simultaneously Handling interaction with multiple users at the same time 12

13 Today Concurrency (threads) in C
Does concurrency really make your code faster? Race conditions and synchronization Short break; head to Moore 207 Lab assignment


Download ppt "ISO 9126: Software Quality Internal Quality: Maintainability"

Similar presentations

Ads by Google