Presentation is loading. Please wait.

Presentation is loading. Please wait.

Programming System development life cycle Life cycle of a program

Similar presentations

Presentation on theme: "Programming System development life cycle Life cycle of a program"— Presentation transcript:

1 Programming System development life cycle Life cycle of a program
Problem statement Algorithms Moving from algorithm to code Moving from code to machine language NEXT SLIDE

2 Topics Testing programs Completing a program
Selecting the right programming language Most popular programming languages NEXT SLIDE

3 Systems System: Information system includes:
A collection of pieces working together to achieve a common goal Information system includes: Data People Procedures Hardware Software System development life cycle (SDLC): An organized process used to develop systems in an orderly fashion NEXT SLIDE

4 System Development Life Cycle
Click on steps to view details Problem/ Opportunity Identification Analysis Design Development & Documentation Testing & Installation Maintenance & Evaluation NEXT SLIDE

5 Problem/Opportunity Identification
The existing system is evaluated: Problems are defined New proposals are reviewed Decisions are made to proceed with the projects

6 Analysis A program specification (goals and objectives of the project) is developed Feasibility assessment is performed User requirements are defined Analysts recommend a plan of action

7 Design A detailed plan for programmers is developed
Flow charts and data-flow diagrams are used for the current and proposed system Flowchart Data-flow diagram

8 Development & Documentation
Actual programming takes place First phase of the program development life cycle (PDLC)

9 Testing & Installation
Testing the program for proper operation Installation of the program for use

10 Maintenance & Evaluating
Performance of the system is monitored Corrections and modifications to the program are made

11 The Life Cycle of a Program
Programming is the process of translating a task into a series of commands a computer will use to perform that task Programming involves: Identifying the parts of a task the computer can perform Describing tasks in a specific and complete manner Translating the tasks into a language that is understood by the computer’s CPU NEXT SLIDE

12 Program Development Life Cycle
Click on the steps for more information Step 1 Describing the Problem Step 2 Making a Plan Step 3 Coding Step 4 Debugging Step 5 Finishing the Project NEXT SLIDE

13 Describing the Problem
The problem statement is: The starting point of programming A description of tasks the program is to accomplish How the program will execute the tasks Created through interaction between the programmer and the user The program statement includes error handling and a testing plan

14 Parking Garage Example
PROGRAM GOAL: To compute the total pay for a fixed number of hours worked at a parking garage. INPUTS: Number of Hours Worked a positive number OUTPUTS: Total Pay Earned a positive number PROCESS: The Total Pay Earned is computed as $7.32 per hour for the first eight hours worked each day. Any hours worked beyond the first eight are billed at $11.73 per hour. ERROR HANDLING: The input Number of Hours Worked must be a positive real number. If it is a negative number or other non-acceptable character, the program will force the user to re-enter the information. TESTING PLAN: INPUT OUTPUT NOTES 8 8*7.32 Testing positive input 3 3*7.32 12 8* *11.73 Testing overtime input –6 Error message/ask user to re-enter value Handling error

15 Go to accounting lecture
Making a Plan Algorithm development: A set of specific, sequential steps that describe what the computer program must do Complex algorithms include decision points: Binary (yes/no) Loop (repeating actions) Visual tools used to track algorithm and decision points: Wake Up Check wallet for $ Do I have > $80 Yes No Head off to cafe Yes Do I have my credit card? No Go get gas Yes Go to the ATM for cash Buy textbook Did I get $80 from the ATM? Go to accounting lecture No 17

16 Top-Down Design and Object-Oriented Analysis
Problem is divided into a series of high level tasks Detailed subtasks are created from high level tasks Object-oriented analysis Classes (categories of inputs) are identified Classes are defined by information (data) and actions (methods or behaviors) Objects are defined by their class, data and behavior Interaction between classes is determined Existing classes can be used for other projects

17 Flowchart and Pseudocode
Bold terms show actions that are common in programming, such as reading data, making decisions, printing, and so on. 1. Ask the user how many hours they worked today 2. If the number of hours worked < = 8, compute total pay without overtime otherwise, compute total pay with overtime pay 3. Print total pay Underlined words are information items that appear repeatedly in the algorithm.

18 Coding Coding is translating an algorithm into a programming language
Generations of programming languages: 1GL Machine Bits describe the commands to the CPU 2GL Assembly Words describe the commands to the CPU ADD Register 3, Register 4, Register 5 3GL FORTRAN, Symbols describe the commands to the CPU BASIC, C TotalPay = Pay + OvertimePay; 4GL SQL More powerful commands allow complex work to be done in a single sentence ALL EMPLOYERS WHERE “TotalPay” TOTAL > 25000 5GL PROLOG, Graphical interfaces allow programmers to Visual Basic build applications without thinking about code Low Level High Level Natural

19 Compilation Compilation is the process of converting code into machine language Compiler reads the source code and translates it into machine language Interpreter translates source code into a line by line intermediate form

20 Debugging Running a program to find errors is known as debugging
Sample inputs are used to determine logic errors

21 Finishing the Project Users test the program (internal testing)
Beta version released: Information collected about errors before final revision Software updates (service packs): Problems found after commercial release Documentation created: User manuals User training

22 Programming Languages
Selecting the right language: Space available Speed required Organizational resources available Type of target application ASP / JSP Flash / XML JavaScript VBScript Java Visual Basic C / C++ HTML NEXT SLIDE

23 Visual Basic Used to build Windows applications
Object-oriented language VB.NET is the current version Sample Visual Basic NEXT SLIDE

24 C and C++ C: C++: Developed for system programmers
Combines high and low level programming features Modern operating systems were written in C C++: Uses the same features as C Includes object-oriented design Sample C Sample C++ NEXT SLIDE

25 Java & C# Object-oriented features
Sample Java Object-oriented features Large set of existing classes (java) Architecture neutral Many kinds of programs (java) NEXT SLIDE

26 Web Applications Hypertext Markup language (HTML): JavaScript:
Not a true programming language Uses special symbols (tags) to control how Web pages are viewed JavaScript: Used to make Web pages more visually appealing and interactive VBScript: A subset of Visual Basic Used to add interactivity to Web pages NEXT SLIDE

27 Web Applications Active Server Pages (ASP) and Java Server Pages (JSP): Adds interactivity capabilities to Web pages Translates user information into a request for more information from a company’s computer Flash: Enables elaborate animations to be created for Web pages Extensible Markup Language (XML): Enables computers to efficiently transfer information between Web sites NEXT SLIDE

Download ppt "Programming System development life cycle Life cycle of a program"

Similar presentations

Ads by Google