You are on page 1of 18

MODULE 1

Object-Oriented Program Logic and Design

Chapter 1
Introduction to Computer Programming

1. Introduction to Computer Programming I


Basic Components of a Computer System

• Hardware
• Software
• Peoplewar
e

1. Introduction to Computer Programming I


Basic Components of a Computer System

• Hardware
– Is the tangible physical device(s) that forms part of
the computer
– It is composed of electronic and mechanical parts:
• CPU (Central Processing Unit)
• Memory
• Storage devices (hard disks, disk drives, DVD drives)
• Input-Output devices (keyboards, monitor, printer,
mouse, speaker, etc.)
1. Introduction to Computer Programming I
Basic Components of a Computer System

• Software
– Intangible part of the computer system
– 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: operating systems, language
processors,
application software, systems software
1. Introduction to Computer Programming I
Basic Components of a Computer System

• Peopleware
– Persons who use, maintain, administer or simply interact
with the computer
– Example:
• Users of a 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

1. Introduction to Computer Programming I


Classification of Software

• Two general classifications of software


– Applications Software
• Programs designed to perform specific tasks. It is designed and
developed by systems developers or software vendors to meet
specific needs or solve specific problems

– Systems Software
• Programs designed to manage the internal working environment
of the computer for effective operation
• Includes operating systems, language processors, networking
software

1. Introduction to Computer Programming I


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

1. Introduction to Computer Programming I


The Systems Development Life Cycle (SDLC)

1. Introduction to Computer Programming I


What is programming?

• The process of writing software in a specific


programming language to meet systems
requirements specifications

• Involves program coding, or writing


instructions in accordance with the rules of a
chosen programming language

1. Introduction to Computer Programming I


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
1. Introduction to Computer Programming I
Student Registration System

Description
•The Student Registration System is a system that screens and
enrolls students for admission to a particular course.
•Objectives of the System:
The system should be able to:
– Accept and screen
student applications
– Assesses his/her
qualifications
– If qualified, accept the
student’s payment and
1. Introduction to Computer Programming I
enroll the
Student Registration System

System Design
• Using a Structured Approach – Top-Down Methodology

1. Introduction to Computer Programming I


Student Registration System

• Using Object-oriented methodology, the following objects


were identified:

1. Introduction to Computer Programming I


Goals of Programming

• Reliability
• Modifiability
• Maintainability

1. Introduction to Computer Programming I


Goals of Programming

• 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

1. Introduction to Computer Programming I


Goals of Programming

• 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

1. Introduction to Computer Programming I


Goals of 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
– Maintainability determines how long the software or
program will be used
– The easier it is to maintain, the longer it will be used

1. Introduction to Computer Programming I


Program Development Process

1. Introduction to Computer Programming I

You might also like