CHAPTER 1
The Phases of Software Development
NOTE: The material in this presentation is a compilation from the Zybook of “Principles of Data Structure”, the book “Data Structures and other objects using C++” by Michael Main and Walter Savitvch, and original content from your professor.
By Prof. Rafael Orta, M.S.
Agenda
NOTE: The material in this presentation is a compilation from the Zybook of “Principles of Data Structure”, the book “Data Structures and other objects using C++” by Michael Main and Walter Savitvch, and original material from your professor.
Planning, Analysis, Design, Implementation, Testing & Integration, Maintenance.
Few Concepts
SPECIFICATIONS
It is the “Precise description of the problem”
Formulation of steps to solve a problem, generally written in English and / or pseudocode
Considerations to keep in mind during the design:
It is the process that transforms the design into a program.
Live Demo
(Use of functions)
On what phase of the SDLC you need to select a programming language?.
A/ Implementation
Video
Runing time analysis
How many steps there are to the bottom?.
1.- Walk down and keep a tally:
Make a mark in paper for each step and come
back up.
2689 steps down and 2689 steps up, 2689 marks, 3x2689 or 3n
2.- Walk down but let your friend keep the tally:
You go back up to report one more step.
3,616,705 Downwards, 3,616,705 upwards, 2689 marks =
7,236,099 operations = n+2(1 + 2 + …. + n) = n ̂ 2 + 2n
3.- Ask a friend to read the sign at the bottom.
Only 4 marks = 4 operations, one for each digit of 2689.
NOTICE: You do not messure the time but the number of operations
Introduction to Big O Notation
Notation used to help identify the time complexity (effectiveness / performance) of an algorithm while comparing it to other, helps to abstract the equations shown previosly.
O(n) O(2n) O(2n+2)