Data Processing Systems and Programming Languages

Data

Data refers to elements considered as units of processing within a data processing system. Data types include:

  • Input data
  • Processing data
  • Pending data
  • Output data

Show

All orders are transmitted to the computer for specific tasks.

Computer Application

A computer application is a set of interrelated programs.

System

A system is a set of interrelated elements working together for a particular purpose.

Informatics System

An informatics system is a set of elements that can process information.

Assembly Language

Assembly language is a symbolic language that serves as a substitute for machine language and is based on mnemonics. It requires extensive knowledge of the computer’s structure and inner workings, as well as proficiency in numerical codes, typically binary and hexadecimal.

Advantages of Assembly Language

  • Programs run faster compared to those written in high-level languages.
  • Programs occupy less memory space.
  • Facilitates working with peripherals and developing drivers.
  • Source code is directly assembled into machine code.

Disadvantages of Assembly Language

  • Generates much longer programs than those made in high-level languages.
  • Programs are not portable (they work only for a specific processor).
  • It is the most difficult language to write and debug, making corrections and modifications challenging.

High-Level Languages

High-level languages are closer to the programmer’s language.

Advantages of High-Level Languages

  • They are independent of the processor’s structure running the application or program.
  • A high-level program does not require extensive knowledge of the computer’s inner workings.
  • It’s easier to develop, debug, and maintain applications made in high-level languages.

Disadvantages of High-Level Languages

Programs written in high-level languages need to be translated into machine language that the CPU understands. This requires a specific translator for each machine. Translators can be of three types: compilers, assemblers, or interpreters.

Software Development Life Cycle

The development of any application is based on the life cycle concept. This establishes a series of steps or phases to be followed sequentially and orderly:

Analysis

This phase determines the product to be developed, specifying the processes and data structures. Effective communication between the software developer and the analyst is crucial to understand all needs and constraints. In cases of ambiguity or lack of information, it may be necessary to create prototypes or revisit user requirements. The person performing the analysis is typically an analyst or consultant. There are two main approaches: designing an application from scratch or parameterizing an existing one.

Design

The design phase aims to achieve an optimal, detailed, and precise solution. It considers both physical resources (computer type, peripherals, communications) and logical resources (operating system, compilers, databases). Designing solutions often involves creating algorithms, flowcharts, flow charts, pseudocode, and decision tables. The design phase concludes with a “cargo notebook,” which documents the entire solution.

Consolidation

This stage translates the approach adopted in the design phase into a specific programming language, based on the cargo notebook. Debugging and verification of the program are also performed during this decoding stage.

Operation/Implementation

Implementation involves installing the software in the operating environment or physical system where it will function. The following phases occur:

  1. Installation
  2. Setting
  3. Global testing and program acceptance
  4. Conversion of information from the previous system to the new system
  5. Phasing out of the previous system

End-users must be trained on the new system and the use of the new application.

Maintenance

This phase completes the life cycle. Necessary corrections are made to resolve errors and deficiencies in the developed product. These actions may lead to the resumption of the life cycle. The time spent on maintenance depends on the correctness of the development and the quality of its documentation.