Chapter 1 Introduction To SE-2023
Chapter 1 Introduction To SE-2023
a) What is Software?
- Software is:
Instructions (computer programs) that when executed
provide desired function and performance.
Data structure that enable the programs to adequately
manipulate information
Documents that describe the operation and use of the
programs
* Software: is a set of instructions, written by one
or more programming language to perform
automatically some functions in solving any
problem.
1.2.Concept
a) What is Software?
Technical,
methodological
group
Programming Document
group group
Experience of engineer
know-how
1.2.Concept
b) What is Software Engineering?
- Engineering: គឺជារបបៀបប្បើ្ាស់នូវរាល់ឧបករណ៍ បបចេកបេសកនុងរបបៀបប ោះ្ាយ
បញ្ហាណាមួយ។
- Engineering is the systematic application of scientific
knowledge in creating and building cost-effective solutions to
practical problems in the service of mankind.
- Engineering in general employs the following sequence of
steps:
Problem identification
Analysis of the problem
A search for possible alternative solutions
Evaluation and then choice of the most appropriate solution
Design and implementation of the solution
1.2.Concept
b) What is Software Engineering?
- Software Engineering:
* The term Software Engineering was introduced in the late
1960s at a conference held to discuss the software crisis.
An original definition:
“ Software engineering is the establishment and use of sound
engineering principles in order to obtain economically
software that is reliable and works efficiently on real
machines”, Fritz Bauer, seminal conference of SE, 1968
1.2.Concept
b) What is Software Engineering?
Customer: User:
Solves problems at easy to learn;
an acceptable cost efficient to use;
in terms of money helps get work
paid and resources
done
used Quality
SW
c) SW Quality
* Attributes of SW Quality
Correctness(): the degree to which a program operates
according to specification
Maintainability(): the degree to which a program is amenable
to change
Integrity (): the degree to which a program is impervious to
outside attack
Usability: the degree to which a program is easy to use
Efficiency: the degree to which a program uses less CPU-time,
memory, disk space, network bandwidth and other resources
Reliability: the degree to which a program has a fewer failures
Reusability: the degree to which a SW component is reusable if
it can be used in several different system with little or no
modification
1.2.Concept
c) SW Quality
* Attributes of SW Quality
Usability
Conflict (ប្បឆំងគ្ន)្
Efficiency
1.2.Concept
d) What is the difference between SE and computer science?
CS is concerned with theory and fundamentals
SE is concerned with the practicalities of the developing and
delivering useful software (Ian Sommerville).
e) What is the difference between SE and system
engineering?
System engineering is concerned with all aspects of computer-
based systems development, including hardware, software
and process engineering.
SE is part of this process (Ian Sommerville).
1.2.Concept
f) What is a SW Process? (Ian Sommerville)
SW Process is a set of activities whose goal is the
development or evolution of software. These activities are:
SW Specification: The functionality of the software and constraints
on its operation must be defined.
SW Development: The software to meet the specification must be
produced.
SW Validation: The software must be validated to ensure that it
does what the customer wants.
SW Evolution: The software must evolve to meet changing
customer needs.
1.2.Concept
g) SW Characteristics
Software is developed or engineered, it is not manufactured in the
classical sense.
Most software is custom-built, rather than being assembled from
existing components
SW េឺជាទំនិញដែលគ្ម្នរូប នមើលមិនន ើញ
SW ដតងោនកំហុសបងកប់នៅកនុងន។ោះតាមប្ទង់ប្ទយកាន់ដតធំលទធភាព
ផ្ទុកកំហុសក៏កាន់ដតធំដែរ។
1.2.Concept
g) SW Characteristics
បនងកើតវា។
ា “ទន់”
- និយាយពីបញ្ហ - និយាយពីបញ្ហ
ា “រង”
ឹ (វតុ )ថ
- បច្ចក
េ ច្ទសច្្ប្ាស
ើ ់ - ច្ោហធាតុ
- មនមមនរ
ិ ូបធាតុ - រូបធាតុ
- គ្មានរូប មនអាចចាប
ិ ់ាន - មានរូប អាចចាប់ាន
ំ ន់
- ផលិតច្ោយមនុសសជាសខា - ផលិតជាលកណ
ខ :ឧសាហកម ា
ច្ោយច្្រឿងមា៉ាសុីនជាសខា
ំ ន់;
ំ ឹ ក
- គ្មានសណ - ខូចបង់ មានសណ
ំ ឹ ក
1.3.Software Applications
នេអាចដចក SW application ។បចចុប្បនននចញជា៨ ប្បនេទ:
1) System Software
2) Real-Time Software
3) Business Software
4) Engineering and Scientific Software
5) Embedded Software
6) Personal Computer Software
7) Artificial Intelligence Software
8) Web-based Software
(Homework 1)
Correctness ()
នតើនេបានអ្វនី ធវជា
ើ រងាវស
្ ់?
ខ្ពស់(អ្ត់ល)
អ
ចំនួន Defects/KLOC
ទប(លអ)
ខ្ពស់(អ្ត់ល)
អ
ទប(លអ)
Integrity ()
នតើការវាយលុកពីខាងនប្ៅចូល SW តាម
រយៈអ្វខ្
ី លោះ?
- Virus
- Hacker