Lecture Note 01 (Edited) (#)
Lecture Note 01 (Edited) (#)
Sri Lanka
Software Engineering
COSC 21052
INTRODUCTION
SACHINTHA PITIGALA
[email protected]
© 2022 - Sachintha Pitigala
1
What is Software Engineering?
What is a Software?
Programs Documentation
What is Engineering?
• Engineering is the use of scientific principles to design and build machines, structures,
and other items, including bridges, tunnels, roads, vehicles, and buildings.
2
So, What is Software Engineering?
[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.
The IEEE definition:
• Large Software
• Scalability
• Cost
• Dynamic Nature
• Quality Management
3
Why?
• Because, Ad hoc Software Development
• 'Ad hoc' is a term used to refer to
o spontaneous events which happen without planning.
4
Why it is Difficult?
• Dealing with users
− Define requirements
− Concern with ease-of-use and response time
• Dealing with technical people
− Concerned with coding, databases, file structures, etc.
• Dealing with management
− Concerned with return on their investment
− Cost-benefit analysis
− Schedule
Types of Software
• System Software
• Application Software
Types of Software
• Generic Software
• Bespoke Software (Custom Built Software)