INFO 101 Chapter 13 - Programming and Languages
INFO 101 Chapter 13 - Programming and Languages
3
Introduction
• In this chapter, you focus on
Phase 4, Systems
Development, of the systems
life cycle and learn about the
programming process and
some of the programming
languages that are available.
• Competent end users need
to understand the
relationship between
systems development and
programming.
4
Programs and Programming
• Program
• A list of instructions for the computer to follow to accomplish the task of
processing data into information.
• Statements used in a programming language such as C++, Java, or
Python.
• Programs can be:
• Prewritten/packaged.
• Custom-made.
5
Six-Step Software Development Life Cycle
• The six steps are as
follows:
1. Program specification.
2. Program design.
3. Program code.
4. Program test.
5. Program
documentation.
6. Program maintenance.
• Desired output
• The end-user should communicate the inputs and outputs.
• Input data
• Determine the source of the data.
• Processing requirements
• Tasks to move input to
output.
• Program specification document
• Document program
specifications.
• Access the text alternative for slide images.
8
Program Design
• Plan a solution using
structured programming
techniques
• Techniques:
• Top-down design.
• Pseudocode.
• Flowcharts.
• Logic structures.
9
Top-Down Program Design
• To identify the program’s
processing steps; called
modules
• Each module is made up of
logically related program
statements.
• Selection structure.
• A decision must be made. • Selection
14
Coding
• Write the program
• A programming language
uses a collection of symbols,
words, and phrases that
instruct a computer to
perform specific operations.
15
Programming Languages
Language Description
C++ Extends C to use objects or program modules that can be reused and interchanged between
programs.
C# A programming language designed by Microsoft to extend C++ for developing applications in the
Windows environment.
Java Primarily used for Internet applications; similar to C++; runs with a variety of operating systems.
JavaScript Embedded into web pages to provide dynamic and interactive content.
Python General-purpose programming language that is simple and easy to learn. Frequently used in
introductory programming courses.
Swift Uses graphical user interface and special code for touch screen interfaces to create apps for Apple
iOS devices.
16
Program Test
• Debugging
• The process of testing and then
eliminating errors such as:
• Syntax errors are a violation
of the rules of programming
language.
• Logic errors occur when the
programmer uses incorrect
calculation or leaves out a
programming procedure.
• Testing process involves one
or more of several methods.
• Attempt at translation
• Written program goes through translator program on the computer,
must be syntax error free.
• Beta testing
• Testing by a select group of potential users; users provide feedback.
18
Program Documentation
• Written descriptions and procedures
about a program and how to use it
• Carried on throughout the
programing steps.
19
Program Maintenance
• 75% of total lifetime cost for an
application is for maintenance.
• Ensures program is:
• Error-free.
• Effective.
• Efficient.
2. Changing needs.
• Agile development – starts with getting the core functionality working then expands
through to customer satisfaction.
• Figure 13-20
20
Case Tools and Object-Oriented
Programming
• Computer-aided software engineering (CASE)
• Automates portions of the development process.
21
Generations of Programming Languages
• Levels or Generations
• Coding from machine languages to human or natural languages.
22
Five Generations
• 1st Gen: Machine languages
• Data represented in 1s and 0s.
23
Generation Samples
• Listed below are samples of each generation programming
language in order from the 1st through the 5th
24
Careers in IT
• Computer programmers
create, test, troubleshoot,
update and repair programs
• Employers seek individuals
with
• Degree in Computer Science or
Information Systems.
• Desired traits include patience,
logical thinking, and attention to
detail.
25
A Look to the Future
• Your Own Programmable
Robot
• To stay competitive with today’s
fast business pace, new
technologies must be
incorporated.
• Increased use of RAD and
prototyping.
• Increased use of outside
consulting.
26
Open Ended Questions
1. Identify and discuss each of the six steps of programming.
2. Describe CASE tools and OOP. How does CASE assist
programmers?
3. What is meant by “generation” in reference to
programming languages? What is the difference between
low-level and high-level languages?
4. What is the difference between a compiler and an
interpreter?
5. What are logic structures? Describe the differences
between the three types.
27
Six-Step Software Development Life Cycle
– Text Alternative
• Return to parent-slide containing images.