0% found this document useful (0 votes)
6 views21 pages

SE Intro 01 - Introduction to Software Engineering

The document provides an overview of Software Engineering, outlining its systematic approach to developing quality software and addressing key questions related to software quality, budget control, and time management. It discusses the historical evolution of software engineering from the 1940s to the 2020s, highlighting advancements and the increasing costs associated with software production. Additionally, it categorizes various software products and emphasizes the importance of selecting appropriate methods for software development projects.

Uploaded by

bananafromcsp
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views21 pages

SE Intro 01 - Introduction to Software Engineering

The document provides an overview of Software Engineering, outlining its systematic approach to developing quality software and addressing key questions related to software quality, budget control, and time management. It discusses the historical evolution of software engineering from the 1940s to the 2020s, highlighting advancements and the increasing costs associated with software production. Additionally, it categorizes various software products and emphasizes the importance of selecting appropriate methods for software development projects.

Uploaded by

bananafromcsp
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

SOICT

School of Information and Communication Technology


IT3180 – Introduction to Software
Engineering
1 – Introduction to Software Engineering

3
Vấn đề 1: Nhận thức về ngành CNTT

5
ICT job positions
Vietnam industry demands
2019

Theo Báo cáo Thị trường nhân lực ngành


Công nghệ thông tin 2019 – Vietnamwork
What is Software Engineering?

• Systematic approach for developing software

• Methods and techniques to develop and maintain quality software to


solve problems

• Study of the principles and methodologies for developing and


maintaining software systems

9
Questions addressed by Software Engineering?

• How do we ensure the quality of the software that we produce?

• How do we meet growing demand and still maintain budget control?

• How do we avoid disastrous time delays?

10
Why apply Software Engineering to Systems?

• Provide an understandable process for system development

• Develop systems and software that are maintainable and easily


changed

• Develop robust software system

• Allow the process of creating computing based systems to be


repeatable and manageable

11
Historical Perspective

• 1940s: computers invented

• 1950s: assembly language, Fortran

• 1960s: COBOL, ALGOL, PL/1, Operating System


1969: First Conference on Software Engineering

• 1970s: multi-user systems, databases, structured programming

12
Historical Perspective (cont.)

• 1980s: networking, personal computing, embedded systems, parallel


architectures

• 1990s: information superhighway, distributed systems, OO in


widespread use

• 2000s: virtual reality, voice recognition, video conferencing, global


computing, pervasive computing,...

• 2010s: autonomos vehicles, new security awareness

• 2020s: AI everywhere
13
Hardware costs vs
Software costs (%
of overall cost)

14
Why is software
so expensive?

Hardware has made great advances

But software too...

15
Why is software so expensive?

We need softwares because they help us save money...

Imagine: a software system could save a company $10,000/year

So, why couldn’t it charge $9,000?

• Most popular software suites out are software solutions that


companies cannot go without
• Productivity software, marketing, logistics, finance ...

16
Why is software so expensive?

Software is Expensive to Produce

• Labor costs to host hundreds of talented people


• Utilities have to be paid
• Software for software development costs money
• Extensive Q&A process
• Engage in makerting after release
• ... and the most important thing:
Software has to be supported 24/7
Software needs to be updated
17
Variety of Software Products

• 2 big categories: Application Software vs System Software


• Web sites
• Operating systems, compilers
• Routers, telephone switchers : communication software
• Telephone billings, Financial Market Predictions: data processing
• Air trafic control, autonomous vehicles: Real time apps
• Device drivers, controllers: Embedded Software
• Digital camera, GPS, sensors: mobile devices
• Information systems: database management, digital libraries
• Offices: word processing, spreadsheet, video conferences
• Scientific: simulations, weather forecasting...
18
The craft of software development

• Client requirements are very different

• There is no standard process for software engineering

• There is no best language, operating system, platform, database


system, development environment...

• The craft of software development is


to select appropriate methods for each project
and to apply them effectively

19
Learning path
Basic concepts of software and the software
Software project management
development process

1 2 3 4 5
Software Software
Overview of Software life Agile
project configuration
Software cycle Methodology management management
Engineering

Key phases of software development

9 8 7 6
Software Software Software Software
Final Quality Design requirements
building
Test Assurance + engineering
Software
Maintenance
Course materials

• Course book:
• R. Pressman, Software Engineering: A practitioner’s approach, 8th Edition,
McGraw Hill 2016
• Slides:
• Roadmap
• Slides
• Lab guides
• Videos
• References
• I. Sommerville, Software Engineering 10th Edition, Addison Wesley 2017

21
1. Introduction to Software Engineering
(end of lecture)

22

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy