Professor Michael J. Losacco CIS 1150 – Introduction to Computer Information Systems Programming...

29
Professor Michael J. Losacco CIS 1150 – Introduction to Computer Information Systems Programming and Languages Chapter 13

Transcript of Professor Michael J. Losacco CIS 1150 – Introduction to Computer Information Systems Programming...

Professor Michael J. LosaccoCIS 1150 – Introduction to Computer Information Systems

Programming and LanguagesChapter 13

Chapter

13

2/29

Overview

Define Programming

Describe the Six Steps of Programming

Discuss Design Tools

Describe Program Testing

Describe CASE Tools

Describe Object-oriented Development

Explain the Generations of Languages

Chapter

13

3/29

Programs and Programming

What Is a Program?

Problem Solving Procedure

Instructions for the Computer to Follow

Statements Used in a Programming Language

Process Data into Information

Chapter

13

4/29

Programs and Programming

What Is Programming?

Six Step Procedure

Program Specification

Program Design

Program Code

Program Test

Program Documentation

Program Maintenance

Chapter

13

5/29

Program Objectives

Desired Output

Input Data

Processing Requirements

Program Specifications Document

Program Specification

Chapter

13

6/29

Program Design

Structured Programming Techniques

Top-down Programming Design

Modules

Program's Processing Steps

Pseudocode

Outline of Program Logic

Chapter

13

7/29

Program Design

Structured Programming Techniques

Flowchart

Geometric Shapes

Depict Sequence of Steps

Logic Structures

Sequential

Selection

Repetition

Chapter

13

8/29

Program Code

Writing The Program

AKA Coding

Good Program

Works Reliably

Produces Correct Output

Catches Common Input Errors

Code Is Documented and Understandable

Uses Appropriate Computer Language(s)

Chapter

13

9/29

Program Code

Coding

Symbols, Words, and Phrases

Content-markup Language

Instruct Computer to Structure Information for Display

Programming Language

Instruct Computer to Perform Specific Operations

Chapter

13

10/29

Debugging

Process of Testing and then Eliminating Errors

Syntax Errors

Violation of Programming Language Rules

Logic Errors

Incorrect Calculation

Missing Procedure

Program Test

Chapter

13

11/29

Testing Process

Desk Checking

Manual Testing

Attempt at Translation

Testing Sample Data

Testing By a Select Group of Potential Users

Beta

Program Test

Chapter

13

12/29

Program Documentation

Description of How to Use Program

Users

Operators

Description of Program Procedures

Programmers

Maintenance

Chapter

13

13/29

Program Maintenance

75% of Total Lifetime Cost

Operations

Patches

Updates

Changing Needs

Chapter

13

14/29

CASE and OOP

Computer-aided Software Engineering (CASE)

Automates Portions of

Program Design

Coding

Testing

Object-oriented Programming (OOP)

Define Relationships Between Procedures

Chapter

13

15/29

CASE and OOP

Using IDE for RAD OOP

Chapter

13

16/29

Programming Languages

Categories

Low-level Languages

First and Second Generation

Machine Dependant

Typically Determined by Processor

Faster Execution, More Code Required

High-level Languages

Third, Fourth, and Fifth Generation

Machine Independent

Slower Execution, Less Code Required

Chapter

13

17/29

Programming Languages

Machine Language

Only Language Directly Understood

Uses Binary & Hexadecimal

Assembly Language

Instructions Made Up Of:

Symbolic Instruction Codes

Meaningful Abbreviations

Chapter

13

18/29

Programming Languages

Third Generation Language (3GL)

AKA Procedural

COBOL, FORTRAN, C

Compiler

Converts Entire Code to Machine Language

Interpreter

Translates One Statement at a Time

Must Be Interpreted Before Every Execution

Chapter

13

19/29

Programming Languages

Fourth Generation Language (4GL)

Task-oriented

SQL, Application Generator

More English-like

Easier to Program

Widely Used by Nonprogrammers

Chapter

13

20/29

Programming Languages

Fifth Generation Language (5GL)

Problem and Constraint Languages

Incorporate Concepts of Artificial Intelligence

Computer Learns and Applies New Information

Communicate Using Natural Languages

Chapter

13

21/29

Programming Languages

Top Programming Languages

Ranked by Demand & Popularity

IEEE 7/14

Chapter

13

22/29

Web Development

Planning

Establish Site Objectives

Launch a Business Presence

Selling Goods or Services

Increase Brand Recognition

Product Information

Employment

Marketing

Target Audience You Want to Reach

Demographics

Chapter

13

23/29

Web Development

Analysis

Measurable Goals

Determine Functionality

Web Benchmarking

Competition

Paradigm Shifts

Other Sites that Your Users Frequent

Offer Comparable Features / Capabilities

Establish Timetable

Budget

Chapter

13

24/29

Web Development

DesignUsability

Consistency

Flowchart

Hierarchical View of Site

Storyboard

Outline of Page Content

Wireframe

Layout of Page Content

Branding

Chapter

13

25/29

Web Development

Implementation

HTML (Hypertext Markup Language)

Static

Elements in Angle Brackets

Specify Size, Color, etc.

DHTML (Dynamic HTML)

Graphical Interest

Interactivity

Develop with JavaScript, CSS

Chapter

13

26/29

Web Development

Implementation

XML (Extensible Markup Language)

Elements Describe Data Passed to a Client

Ties Database Data to Web Pages

Client, Rather Than Server, Processes Data

Web Design Software

Create Web pages Without Programming

Generates HTML / Some JavaScript

Dreamweaver, Expression Web

Chapter

13

27/29

Web Development

Testing

Test Pages Against Different:

Platforms

Browsers

Versions

Monitor Resolutions

Deploy

FTP (File Transfer Protocol)

Upload / Download to / from Web Server

Chapter

13

28/29

Web Development

Maintenance

Decide What Content Needs Updating

Determine Frequency

Collect Statistics on Each Page

Elicit Feedback from Users

ROI

Chapter

13

29/29

Careers in IT

Programmer

Create, Test, And Troubleshoot Programs

Update and Repair Existing Programs

Bachelor's Degree in Computer Science

Technical Experience

Patience, Logical Thinking, Meticulous

Annual Salary of $49,000 - $89,000