You are on page 1of 14

Programming Methodology

C programming Language
LESSON ONE
lmunene@kca.ac.ke
Weights of both Coursework (CATS and ASSIGNMENTS) and
the Final exams.
Programming methodology

• Programming methodology is the study of analysis,


design and implementation of programs (software).
Definitions

• Programming: This is the process of writing a set of


instructions that can be interpreted and executed by
a computer.
Definitions

• Program: A program, also known as computer


program or software program, is an organized set of
instructions that the computer can execute. There are
a number of (qualities) to good programs:
– Run correctly
– Run efficiently
– Easy to read and understand (comments)
– Easy to debug
– Easy to modify
Definitions

• Algorithm: This is a procedure and sequence of actions to


accomplish some task.
• Application Programmer: This is a person with computer
programming expertise to develop application programs.
• Bug: In programming, a bug, also called software bug, is an
error, flaw, mistake, failure, or fault in a program that prevents
it from working as intended, or produces an incorrect result.
Definitions

• Code : It refers to source code or machine code.


Source code is any series of statements written in
some human-readable programming language, while
machine code refers to instructions for a computer
processor in some machine language.
• Coding: In software, coding means implementation of
a programming logic using a specific programming
language.
Definitions

• Software Engineering: Refers to a systematic approach


to the analysis, design, implementation and
maintenance of software, in which technologies and
practices from computer science, project
management, engineering, application domains and
other fields, are applied.
• Software metric: It is a quantitative measure of some
property of a piece of software or its specifications.
Common software metrics include order of growth ,
source lines of code etc
Definitions

• Syntax: In programming, syntax refers to the spelling


and grammar of a programming language.
System development life cycle is the process (SDLC)

• This is a framework for defining activities performed


during software development. It defines seven stages:
planning, analysis, design, development, testing,
implementation and maintenance.
SDLC STAGES

SN Phase/Stage Activities
• Identify and select the system for development
• Assess project feasibility
• Develop project plan
1. Planning

• Gather business requirements


• Create process diagrams e.g. Use case diagrams, sequence
diagrams, DFD Perform a buy versus build analysis
2. Analysis

3. • Design the IT infrastructure e.g. network, hardware


Design and software.
SDLC STAGES
• Design system models e.g. GUI, ERD e.t.c. Design
programs(algorithms)
• Develop the IT infrastructure e.g. network, hardware and software
4. Development • Develop database and application programs

5. Testing • Write the test conditions


• Perform the system testing
• System training
6. • Conversion e.g. parallel, phased, pilot and plunge conversion
Implementation

Build a build a help desk to support


the system users Perform system
7. Maintenance maintenance
Provide an environment to support system
changes.
Program development life cycle (PDLC)

• This is a framework that defines the steps used to


build software applications.
• The framework defines six steps in program
development: Analysis of the problem, design, code,
testing and debugging, documentation and
maintenance.

PDLC
• Clearly define the problem to solve
1. Problem analysis • Write program specifications: input, output, processing
2. Program design Develop the algorithm using a suitable tool e.g. pseudo code.

• Translate the algorithm into application program


3. Program coding • Include internal documentation i.e. comments
• Use test data to find errors
4. Testing and debugging • Correct the errors(debugging)
• Revise internal documentation
5. Documentation • Include external documentation
6. • Provide user training and support
• Correct any unanticipated errors
Maintenance
• Perform any modifications as required

You might also like