Module 1 - Chapter 1 Introduction To Computer Programming
Module 1 - Chapter 1 Introduction To Computer Programming
Chapter 1:
Introduction to Computer Programming
Hardware
Software
Peopleware
Hardware
Is the tangible physical device(s) that forms part of
the computer
Are the programs, processes and data that reside in the computer’s memory or
hard drive and contain instructions that the computer will execute
Example:
Users of an office productivity tools, application software
or business software
Software Developers (programmers, analysts, testers)
Professionals (businessmen, architects, engineers, scientists, medical
practitioners)
Network administrators
Hardware maintenance technicians
Classification of Software
Systems Software
Programs designed to manage the internal working environment of the
computer for effective operation
Includes operating systems, language processors, networking software
Software Engineering
The discipline of developing and maintaining efficient and reliable software that satisfy
the requirements that customers or users have set
The process of development of software is called the Systems Development Life Cycle
What is programming?
Involves program coding, or writing instructions in accordance with the rules of a chosen
programming language
Programming Methodologies and Approaches
Structured or Procedural
Breaks down a complex problem into modules or procedures
(decomposition)
Uses top-down and/or bottom-up approach
Object-oriented
Objects are defined to accomplish a task
Objects are things, people, entities that are naturally part of the program.
O-O makes software representations of these entities
The Student Registration System is a system that screens and enrolls students for admission
to a particular course.
Objectives of the System are as follows. The System should be able to:
Accept and screen student applications
Assesses his/her qualifications
If qualified, accept the student’s payment and enroll the
student in the course.
System Design
Using a Structured Approach – Top-Down Methodology
Reliability
Correctness
- A program is reliable if it performs the specified functions
properly and has no unwanted side effects
Robustness
- A program is robust if it will continue to function in the presence of
environmental changes (such as hardware failure) and
demands (such as bad data) that were not foreseen.
- Error-resistant
Modifiability
Adherence to functional decomposition results in an organized and logical solution
to a problem
Logical units can be independently modified, tested, debugged
Logical units can be reused by other programs. Reusability is an important
element of O-O programming
Maintainability
As requirements change, there is a need to change certain parts of a program
Programs must be easy to read and can be understood by other programmers who
might inherit the program