4. Content
Welcome greeting
Pedagogical agreements: mutual recognition,
present course overviews, and make possible
academic commitments, among other
agreements.
Database Modeling Syllabus
The current context of Database
History and evolution of Database
April 8, 2024
5. Content
Chapter 1 The Software Product
✓ Software context
✓ The evolution of software
✓ The software
✓ Software Features
✓ Types of software
✓ Software applications
April 8, 2024
6. Software context
What is CES 2024?
April 8, 2024
What are Gartner's 10 technology
trends for 2024?
7. Content
Chapter 1 The Software Product
✓ Software context
✓ The evolution of software
✓ The software
✓ Software Features
✓ Types of software
✓ Software applications
April 8, 2024
8. The evolution of software
Introduction
April 8, 2024
Computer software, or just software, is a collection of computer programs and
related data that provide the instructions for telling a computer what to do and
how to do it
Software is a set of instructions, data or programs used to operate computers
and execute specific tasks.
It is the opposite of hardware, which describes the physical aspects of a
computer.
Software is a generic term used to refer to applications, scripts and programs that
run on a device.
It can be thought of as the variable part of a computer, while hardware is the
invariable part.
9. The evolution of software
History
April 8, 2024
The first theory about software was proposed by Alan Turing in his 1935
essay Computable numbers with an application to the
Entscheidungsproblem (Decision problem). The term "software" was
first used in print by John W. Tukey in 1958.
The term is often used to mean application software. In computer
science and software engineering, software is all information processed
by computer system, programs and data.
The academic fields studying software are computer science and
software engineering
10. The evolution of software
History
April 8, 2024
The first theory about software was proposed by Alan Turing in his 1935
essay Computable numbers with an application to the
Entscheidungsproblem (Decision problem).
The term "software" was first used in print by John W. Tukey in 1958.
The term is often used to mean application software. In computer
science and software engineering, software is all information processed
by computer system, programs and data.
The academic fields studying software are computer science and
software engineering
11. The evolution of software
History
April 8, 2024
Hardware by original equipment manufacturers (OEMS) such as data
general, digital equipment and IBM.
When a customer bought a minicomputer, (at that time the smallest
computer on the market), the computer did not come with pre-installed
software, but needed to be installed by engineers employed by the OEM.
Computer hardware companies not only bundled their software, but
they also placed demands on the location of the hardware in a
refrigerated space called a computer room
12. The evolution of software
SOFTWARE GENERATIONS
April 8, 2024
FIRST GENERATION
During the 1950's the first computers were programmed by
changing the wires and set tens of dials and switches.
One for every bit sometimes these settings could be stored
on paper tapes that looked like a ticker tape from the
telegraph
13. The evolution of software
SOFTWARE GENERATIONS
April 8, 2024
SECOND GENERATION
the first generation "languages" were regarded as very user-
unfriendly people set out to look for something else, faster
and easier to understand.
The result was the birth of the second-generation languages
(2GL) at the mid of the 1950's
14. The evolution of software
SOFTWARE GENERATIONS
April 8, 2024
THIRD GENERATION
At the end of the 1950's the 'natural language’ interpreters
and compilers were made. But it took some time before the
new languages were accepted by enterprises.
About the oldest 3GL is FORTRAN (Formula Translation)
which was developed around 1953 by IBM. This is a language
primarily intended for technical and scientific purposes.
Standardization of FORTRAN started 10 years later, and a
recommendation was finally published by the International
Standardization Organization (ISO) in 1968.
15. The evolution of software
SOFTWARE GENERATIONS
April 8, 2024
FOURTH GENERATION
A 4GL is an aid witch the end user or programmer can use to
build an application without using a third-generation
programming language. Therefore, knowledge of a
programming language is strictly spoken not needed
16. Content
Chapter 1 The Software Product
✓ Software context
✓ The evolution of software
✓ The software
✓ Software Features
✓ Types of software
✓ Software applications
April 8, 2024
17. What is software (SW)?
SW is
• not only programs
• but also, all associated documentation, and
• configuration data
that make these programs operate correctly.
More specifically, a SW system consists of
• separate programs
• configuration files setting up these programs
• system documentation describing the structure of the system in good
detail
• user documentation explaining how to use and operate the system.
17
April 8, 2024
18. What is Software?
18
The product that software professionals build and then support
over the long term.
Software encompasses:
(1) instructions (computer programs) that when executed provide
desired features, function, and performance;
(2) data structures that enable the programs to adequately store and
manipulate information and
(3) documentation that describes the operation and use of the
programs.
April 8, 2024
20. What is a programming language?
20
A tool for instructing machines.
A notation for algorithms.
A means for communication among programmers.
A tool for experimentation.
A means for controlling computer-controlled gadgets.
A means for controlling computerized devices.
A way of expressing relationships among concepts.
A means for expressing high-level designs
April 8, 2024
21. Content
Chapter 1 The Software Product
✓ Software context
✓ The evolution of software
✓ The software
✓ Software Features
✓ Types of software
✓ Software applications
April 8, 2024
23. 23
Functionality: It refers to the suitability, accuracy,
interoperability, compliance, security of software which is
measured as degree of performance of the software against
its intended purpose.
Software Features
April 8, 2024
24. 24
Reliability: Refers to the recoverability, fault tolerance,
maturity of software, which is basically a capability of the
software that provide required functionality under the given
situations.
Software Features
April 8, 2024
25. 25
Efficiency: It is the ability of the software to use resources of
system in the most effective and efficient manner. Software
must make effective use of system storage and execute
command as per required timing.
Software Features
April 8, 2024
26. 26
Usability: It is the extent to which the software can be utilized
with ease and the amount of effort or time required to learn
how to use the software.
Software Features
April 8, 2024
27. 27
Maintainability: It is the ease with which the modifications
can be made in a software to extend or enhance its
functionality, improve its performance, or resolve bugs.
Software Features
April 8, 2024
28. 28
Portability: It is the ease with which software developers can
relaunch software from one platform to another, without (or
with minimum) changes. In simple terms, software must be
made in way that it should be platform independent.
Software Features
April 8, 2024
29. Content
Chapter 1 The Software Product
✓ Software context
✓ The evolution of software
✓ The software
✓ Software Features
✓ Types of software
✓ Software applications
April 8, 2024
31. Software Classification
31
Among the various categories of software, the most common
types include the following:
Application software. The most common type of software,
application software is a computer software package that performs a
specific function for a user, or in some cases, for another application.
An application can be self-contained, or it can be a group of programs
that run the application for the user.
Examples of modern applications include office suites, graphics
software, databases and database management programs, web
browsers, word processors, software development tools, image editors
and communication platforms.
April 8, 2024
32. Software Classification
32
System software. These software programs are designed to
run a computer's application programs and hardware. System
software coordinates the activities and functions of the
hardware and software. In addition, it controls the operations
of the computer hardware and provides an environment or
platform for all the other types of software to work in.
The OS is the best example of system software; it manages all
the other computer programs. Other examples of system
software include the firmware, computer language translators
and system utilities.
April 8, 2024
33. Software Classification
33
Driver software. Also known as device drivers, this software is
often considered a type of system software. Device drivers
control the devices and peripherals connected to a computer,
enabling them to perform their specific tasks. Every device
that is connected to a computer needs at least one device
driver to function.
Examples include software that comes with any nonstandard
hardware, including special game controllers, as well as the
software that enables standard hardware, such as USB storage
devices, keyboards, headphones and printers.
April 8, 2024
34. Software Classification
34
Middleware. The term middleware describes software that
mediates between application and system software or
between two different kinds of application software.
For example, middleware enables Microsoft Windows to talk
to Excel and Word. It is also used to send a remote work request
from an application in a computer that has one kind of OS, to an
application in a computer with a different OS. It also enables
newer applications to work with legacy ones.
April 8, 2024
35. Software Classification
35
Programming software. Computer programmers use
programming software to write code. Programming
software and programming tools enable developers to
develop, write, test and debug other software
programs.
Examples of programming software include
assemblers, compilers, debuggers and interpreters.
April 8, 2024
36. Content
Chapter 1 The Software Product
✓ Software context
✓ The evolution of software
✓ The software
✓ Software Features
✓ Types of software
✓ Software applications
April 8, 2024
37. Software applications
37
Presentation Software
Spreadsheet software
Web browser
Word processor
Multimedia software
Graphics software
Educational software
Simulation software
Database
Freeware
Project management software
Firefox or Google Chrome
Closed source
Content access software
Customer relationship management
Information software
Open source
April 8, 2024
38. • • "Artificial Intelligence: A Modern Approach" de Stuart Russell y Peter Norvig
(2021). Este es uno de los libros de referencia sobre inteligencia artificial. Ofrece
una amplia cobertura de los conceptos y técnicas clave.
• • "Sistemas Expertos: Principios y Programación" de Giarratano y Riley. (2021). Un
libro que se enfoca en la programación de sistemas expertos y proporciona
ejemplos prácticos.
• • "Deep Learning" de Ian Goodfellow, Yoshua Bengio y Aaron Courville. (2021).
Este libro es una referencia esencial para el aprendizaje profundo.
• • "Artificial Intelligence: A Guide to Intelligent Systems" de Michael Negnevitsky.
(2021). Ofrece una visión general de la inteligencia artificial y sistemas expertos,
incluyendo conceptos teóricos y aplicaciones prácticas.
• • "AI: A Very Short Introduction" de Margaret A. Boden. (2021). Un libro corto pero
informativo que proporciona una introducción accesible a la inteligencia artificial.
• • "Python Machine Learning" de Sebastian Raschka y Vahid Mirjalili. (2021). Para
aprender a aplicar técnicas de aprendizaje automático en Python.
• • "Building Machine Learning Powered Applications" de Emmanuel Ameisen.
(2021). Se enfoca en cómo construir aplicaciones prácticas basadas en machine
learning e inteligencia artificial.
• • "Sistemas Expertos: Teoría y Práctica" de José A. Olivas Varela. (2021). Un libro
en español que aborda los sistemas expertos desde una perspectiva teórica y
práctica.
• • Fernando Jorge Penousal (Eds.). Inteligencia Artificial y Computación Avanzada.
Fundación Alfredo Brañas Santiago de Compostela. (2021).
Bibliographic references
April 8, 2024