0% found this document useful (0 votes)
35 views

TIP Software Engineering Part1

This document provides an introduction to software engineering. It discusses how software is ubiquitous in modern life and helps with communication, tasks, and the economy. However, existing software often has quality issues and defects that can cause failures and harm. The reasons for these problems include a lack of trained professionals and adequate tools. The document then reviews the history of software engineering, including key figures like Turing, Lovelace, and Bauer. It defines software engineering and discusses typical degree programs. Finally, it outlines different types of software like system software, and application categories such as games, intelligent systems, modeling, and real-time applications.

Uploaded by

Jennifer Ana
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views

TIP Software Engineering Part1

This document provides an introduction to software engineering. It discusses how software is ubiquitous in modern life and helps with communication, tasks, and the economy. However, existing software often has quality issues and defects that can cause failures and harm. The reasons for these problems include a lack of trained professionals and adequate tools. The document then reviews the history of software engineering, including key figures like Turing, Lovelace, and Bauer. It defines software engineering and discusses typical degree programs. Finally, it outlines different types of software like system software, and application categories such as games, intelligent systems, modeling, and real-time applications.

Uploaded by

Jennifer Ana
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

An Introduction to

Software Engineering

Orlando M. Malaca
Bachelor of Science in Computer Engineering
Master of Science in Management Engineering
Doctor of Philosophy in Technology Management
1
SOFTWARE
• Software is omnipresent in the lives of billions of
people around the world.
• Software runs many aspects of our lives.
• It helps us communicate, socialize and perform
daily tasks at work and at home.
• Most importantly, software is a player in the
emerging knowledge-based service economy.
2
SOFTWARE
• However, there are many concerns about the
quality and reliability, and hence the
trustworthiness, of the software we produce and
consume.
• Existing software is plagued with thousands of
defects.
• Some of the defects are known and already been
detected; others have not manifested and are yet
to be uncovered.
3
SOFTWARE
• The defects have caused many disasters, leading
to financial losses, physical harm to humans, and
life threatening situations.
• The main reasons for the current state of
software technology are the lack of adequately
trained software professionals and the lack of
tools and techniques that can scale up to the
complexities of the needed software.
4
Software Failures
 Therac-25 (1985-1987): six people overexposed during
treatments for cancer
 Taurus (1993): the planned automatic transaction
settlement system for London Stock Exchange cancelled
after five years of development
 Ariane 5 (1996): roket exploded soon after its launch
due error conversion (16 floating point into 16-bit integer)
 The Mars Climate Orbiter assumed to be lost by NASA
officials (1999): different measurement systems (Imperial
and metric)
HISTORY
• The word SOFTWARE was coined by John
Wilder Tukey in 1958.
• However, the theoretical foundation behind the
concept of a computer program were established
by Alan Turing in the 1930s.
• The concept of a program as a sequence of steps
to solve a problem is a realization of the concept
of algorithm, which was introduced by
Muḥammad Al-Khwārizmi, a 9th century
mathematician. 6
HISTORY

John Wilder Tukey Alan Turing Muḥammad Al-Khwārizmi


(June 16, 1915 – July 26, 2000) (June 23, 1912 – June 7, 1954) (c. 780 – c. 850)

7
HISTORY
• An algorithm became concrete when it was
programmed by Ada Lovelace, the first computer
programmer.
• A computer program consists of instruction that
perform certain tasks on computer hardware.
• Instructions are written at different levels of
closeness to the hardware, ranging from low-level
instructions written in machine or assembly
language to high-level instructions written in high-
level programming language. 8
HISTORY
Born The Hon. Augusta Ada Byron
10 December 1815
London, England
Died 27 November 1852 (aged 36)
Marylebone, London, England
Resting place Church of St. Mary Magdalene, Hucknall,
Nottingham, England
Known for Mathematics
Computing
Spouse(s) William King-Noel, 1st Earl of Lovelace
Children Byron King-Noel, Viscount Ockham and
12th Baron Wentworth
Anne Blunt, 15th Baroness Wentworth
Ralph King-Milbanke, 2nd Earl of Lovelace

9
The Countess of Lovelace
HISTORY
• SOFTWARE ENGINEERING is a term that was
coined during the 1968 NATO Software
Engineering conference held in Garmisch,
Germany.
• The term was introduced by Friedrich Bauer, the
conference chairman.
• One definition of Software Engineering is the
application of disciplined approach for the
development and maintenance of computer
software. 10
HISTORY Born Friedrich Ludwig Bauer
10 June 1924
Regensburg, Germany
Died 26 March 2015 (aged 90)
Nationality German
Alma mater Ludwig-Maximilians-Universität
Known for Stack (data structure),
Sequential Formula Translation,
ALGOL
Awards Iron Cross 2nd Class,
Bundesverdienstkreuz 1st Class,
IEEE Computer Pioneer Award (1988)
Scientific Career
Fields Computer Science
Applied Mathematics
Institutions University of Mainz
Technical University of Munich
Doctoral advisor Fritz Bopp, Georg Aumann
Doctoral students Manfred Broy, David Gries, Josef Stoer, Peter
Wynn, Christoph Zenger
11
Friedrich L. Bauer
HISTORY
• IEEE defines SOFTWARE ENGINEERING as it
deals with the establishment and use of sound
engineering principles to economically obtain
software that is reliable and works efficiently on
real machines.
• This touches on both the technical and
management aspects. The technical aspect
refers to the reliability and performance of the
target software product. The management
aspect refers to economic feasibility related to
both time and money. 12
HISTORY
• Most people working as Software Engineers hold
either a Degree in Computer Science or
Computer Engineering.
• The first bachelor program in software
engineering was established in the United States
in 1996.
• A Bachelor of Software Engineering (B.SE.) is an
undergraduate academic degree (bachelor's
degree) awarded for completing a program of
study in the field of software development for
computers in information technology. 13
Reference  https://en.wikipedia.org/wiki/Bachelor_of_Software_Engineering
Types of Software
• SYSTEM SOFTWARE typically deals with
interfacing with hardware and provide services to
APPLICATION SOFTWARE.

14
Reference  https://en.wikipedia.org/wiki/Software
Types of Software
• SYSTEM SOFTWARE
Example:
• Operating System
• Language Compilers
• Assemblers
• Device Drivers
• Debuggers
• Networking Tools

15
Types of Software
• APPLICATION SOFTWARE
Example:
• Games and Entertainment
• Intelligent
• Modeling and Simulation
• Real-time
• Embedded
• Productivity
• Enterprise
• Web-based
• Educational
• Multimedia 16
• Domain-specific
Types of Software
• APPLICATION SOFTWARE
Games and Entertainment
• Software games for handheld
devices, including mobile phones,
PC or stand-alone games, and
distributed collaborative games

Reference  http://leagueoflegends.wikia.com/wiki/Season_One

17
Types of Software
• APPLICATION SOFTWARE
Intelligent
• Application that include
specialized domain-specific
expert systems, mobile agent
systems, learning systems, robot
vision software, business decision
and intelligence software, and
mining software

Reference  https://news.usc.edu/106565/artificial-intelligence-for-a-better-tomorrow/ 18
Types of Software
• APPLICATION SOFTWARE
Modeling and Simulation
• Applications that include domain-
specific modeling and simulation
packages for military, financial,
medical, educational, and training
uses

Reference  https://www.symscape.com/product/panel

19
Types of Software
• APPLICATION SOFTWARE
Real-time
• Applications that include
industrial plant monitoring and
control systems, missile control
systems, air traffic control
systems, telephony software, and
network security software such as
firewall and intrusion detection
systems

Reference  https://www.militaryaerospace.com/articles/2012/03/embedded-real-time-
20
operating-system-software-secures-military-mission-critical-data-from-growing-threats.html
Types of Software
• APPLICATION SOFTWARE
Embedded
• Applications that include home
appliance controllers, mobile
phone software and vehicle
controllers

Reference  https://www.slideshare.net/RAKESHRANA4/on-the-role-
of-crossdisciplinary-research-and-sse-in-addressing-the-challenges-of-
the-digitalization-of-society 21
Types of Software
• APPLICATION SOFTWARE
Productivity
• Applications that include tools that implement proven methods
and techniques to help specific types of users execute their tasks
with ease and maximum productivity

22
Reference  https://tomispot.blogspot.com/2016/09/10-free-open-source-office-suites-software-that-would-increase-productivity.html
Types of Software
• APPLICATION SOFTWARE
Productivity Example
• AutoCAD software facilities architects and engineers
• Rational Rose aids software developers in performing their tasks
• Project management software packages allow project managers
to perform their tasks efficiently
• Word processing tools help users produce thorough and accurate
documentation
• Information worker software
• Time and resource management software
• Data management software
23
• Distributed collaborative software
Types of Software
• APPLICATION SOFTWARE
Enterprise
• Applications that include business
workflow management software,
customer relation management
software, and supply chain
management software

24
Reference  https://www.techmaish.com/tips-leveraging-enterprise-software-businesses/
Types of Software
• APPLICATION SOFTWARE
Web-based
• Applications that include content management software, web
publishing software, electronic commerce software, web
services, web portal software and web browsers

25
Reference  http://www.atsspl.com/websoft.php
Types of Software
• APPLICATION SOFTWARE
Educational
• Applications that include school
and university management,
online and distance learning,
training management, and
educational software for children

26
Reference  https://sites.google.com/site/weiyen27/type-of-application-software-and-their-example
Types of Software
• APPLICATION SOFTWARE
Multimedia
• Applications that include software for video, image and sound
editing and management, 3D and animation, and virtual reality

27
Reference  http://www.greatsoftline.com/coupon-codes-for-4-top-sellers-professional-multimedia-software-from-digiarty-software/
Types of Software
• APPLICATION SOFTWARE
Domain-specific
• Applications that include domain-specific software systems such
as banking, finance and stocks, accounting, medical, airline
reservation, hospital management, and human resource
management

Reference 
http://www.supplychainquarterly.com/figures/?filename=2
018022710_technologies_that_will_reshape_SCM_softw
are_ex4.jpg&article=20180227-10-technologies-that-will-
reshape-scm-software

28
References
Software Engineering
Kassem A. Saleh
Philippine Edition

Software Engineering
Ian Sommerville
7th Edition

29

You might also like