Application Development - PowerPoint PPT Presentation

1 / 43
About This Presentation
Title:

Application Development

Description:

Compare and contrast programming language generations ... Unconditional branches (Goto statements) Conditional branches (If statements) Loops ... – PowerPoint PPT presentation

Number of Views:36
Avg rating:3.0/5.0
Slides: 44
Provided by: paulawor
Category:

less

Transcript and Presenter's Notes

Title: Application Development


1
Application Development
  • Chapter 10

2
Objectives
  • Describe the application development process and
    the role of methodologies, models, and tools
  • Compare and contrast programming language
    generations
  • Explain the function and operation of program
    translation software, including assemblers,
    compilers, and interpreters
  • Describe link editing, and contrast static and
    dynamic linking
  • Describe integrated application development
    software, including programmers workbenches and
    CASE tools

3
Chapter Topics
4
The Application Development Process
  • The process of designing and constructing
    software translates users information processing
    needs into CPU instructions that, when executed,
    addresses those needs.
  • Software development is a complex process that
    requires significant effort and resources.

5
The Application Development Process
6
The Application Development Process
  • Software Development Life Cycle
  • The SDLC breaks the complex process of software
    development into smaller and more management
    pieces.
  • The output of each phase of the SDLC produces
    input to the next phase.

7
The Application Development Process
8
The Application Development Process
  • Methodologies and Models
  • Developers attempt to minimize errors during the
    SDLC by using proven development methodologies.
  • Structured methods document requirements by
    modeling the flow of data or the relationship of
    various parts of the process.

9
The Application Development Process
10
Programming Languages
  • Programming languages are used to instruct a
    computer to perform a task.
  • Programming languages have evolved from the
    first-generation machine language to scripting
    languages.

11
Programming Languages
12
Programming Languages
13
Programming Languages
  • Programming Language Standards Define
  • Language syntax and grammar.
  • Machine behavior for each instruction or
    statement.
  • Test programs with expected warnings, errors and
    execution behavior.

14
Programming Languages
15
Compilation
16
Compilation
  • Source Code vs. Object Code
  • Program Editor used to input the program into
    the computer system. (Source code)
  • Compiler translates some source code
    instructions directly into executable code and
    other source code instructions into library
    calls, which are further processed by the Link
    Editor. (Object Code)

17
Compilation
Data Declarations defines the name and data
type of one or more program variables.
18
Compilation
19
Compilation
  • Data Operations
  • Any instruction that updates or computes a data
    value.
  • For Example f_temperature 212
  • The compiler translates a data operation
    instructions into an equivalent sequence of data
    movement and data transformation instructions for
    the target CPU.

20
Compilation
  • Control structures include
  • Unconditional branches (Goto statements)
  • Conditional branches (If statements)
  • Loops

21
Compilation
  • Unconditional Branch Example
  • F_temperature 0
  • Loop F_temperature F_temperature 1
  • Goto Loop

22
Compilation
  • Conditional Branch Example
  • If (c_temperature gt -273.16)
  • f_temperature (c_temperature 1.8) 32
  • Else
  • f_temperature -999

23
Compilation
  • Loop Example
  • F_temperature 0
  • While (F_temperature lt 10)
  • F_temperature F_temperature 1

24
Compilation
  • Function Calls a call instruction transfers
    control to the first instruction in the function
    and the function transfers control to the
    instruction following the call by executing a
    return instruction.

25
Compilation
  • Function Example
  • float Fahrenheit_to_Celsius(float F)
  • float Cel
  • Cel (F 32) / 1.8
  • return (Cel)

26
Link Editing
  • A link editor searches an object code for
    external function calls.
  • When an external function call is found, the link
    editor searches other object code files or
    compiler libraries to find executable code that
    implements the function.

27
Link Editing
  • Benefits of a link editor
  • A single executable program can be constructed
    from multiple object code files compiled at
    different times.
  • A single compiler can generate executable
    programs that run under multiple operating
    systems.

28
Link Editing
29
Link Editing
  • Static and Dynamic Linking
  • Dynamic Linking linking is performed during
    program loading or execution.
  • Static Linking library and other subroutines
    cannot be changed once they are inserted into the
    executable code.

30
Link Editing
  • Dynamic Linking Advantages
  • Smaller application program files
  • Flexibility
  • Static Linking Advantages
  • Execution speed
  • Improved reliability and predictability of
    executable programs

31
Interpreters
  • Interpreter - reads a single source code
    instruction, translates it into CPU instructions
    or a DLL call.
  • Advantage flexibility to incorporate new or
    updated code into an application program.
  • Disadvantage increased memory and CPU
    requirements during program execution.

32
Interpreters
33
Technology Focus
34
Symbolic Debugging
  • Symbolic debugger features
  • Trace calls to specific source code statements or
    subroutines
  • Trace changes to variable contents
  • Execute source code instructions one at a time
  • Detect run-time errors and report them to the
    programmer in terms of specific source code
    instructions and variables

35
Symbolic Debugging
36
Symbolic Debugging
37
Integrated Application Development Tools
38
Integrated Application Development Tools
  • Programmers Workbenches an integrated set of
    automated support tools to speed development and
    testing.
  • Smart program editor
  • Compiler and/or interpreter
  • Link editor and a large library of classes or
    subroutines

39
Integrated Application Development Tools
  • Programmers Workbenches cont.
  • Interactive facility for prototyping and
    designing user interfaces
  • Symbolic debugger
  • Integrated window-oriented graphical user
    interface

40
Technology Focus
41
Integrated Application Development Tools
  • CASE Tools refers to a tool that supports the
    SDLC analysis and design phases.
  • Front-end CASE tool supports model development.
  • Back-end CASE tool supports program development
    based on specific analysis and design models.

42
Summary
  • Application systems are developed by following
    the steps of the systems development life cycle.
    (SDLC)
  • Executable software consists entirely of CPU
    instructions.
  • All programming language generations other than
    the first must be translated into CPU
    instructions prior to execution.

43
Summary
  • Compiled and interpreted programs must be linked
    to libraries of executable functions or methods.
  • Application development is more efficiently
    supposed by integrated suites of automated tools.
Write a Comment
User Comments (0)
About PowerShow.com