Lecture 1.1 Introduction
Lecture 1.1 Introduction
UNIT-1
Bachelor of Computer Applications
Software Engineering
(21CAT-312/21SCT-312/22CAT-213/22SCT-213)
•
Characteristics of Software Engineering
3. Efficiency:
It refers to the ability of the software to use system resources in the most effective and efficient
manner. The software should make effective use of storage space and executive command as per
desired timing requirements.
• Efficiency is a characteristic of software that refers to its ability to use resources such as memory,
processing power, and network bandwidth in an optimal way. High efficiency means that a
software program can perform its intended functions quickly and with minimal use of resources,
while low efficiency means that a software program may be slow or consume excessive resources.
• Examples of factors that can affect the efficiency of software include:
• Poorly designed algorithms and data structures
• Inefficient use of memory and processing power
• High network latency or bandwidth usage
• Unnecessary processing or computation
• Un-optimized code
Characteristics of Software Engineering
• Efficiency is important in software systems that are resource-constrained, high-
performance, and real-time systems. It is also important in systems that need to
handle a large number of users or transactions simultaneously.
Required functions are:
Characteristics of Software Engineering
4. Usability: It refers to the extent to which the software can be used with ease. the
amount of effort or time required to learn how to use the software. Required
functions are:
Characteristics of Software Engineering
5. Maintainability: It refers to the ease with which the modifications can be made
in a software system to extend its functionality, improve its performance, or
correct errors. Required functions are:
Characteristics of Software Engineering
6. Portability:
A set of attributes that bears on the ability of software to be transferred from one
environment to another, without or minimum changes. Required functions are:
Characteristics of Software Engineering
7. Integrity: There are multiple interpretations of software integrity. Some people
tend to associate integrity with security, believing it is resistant to hacks and
privacy violations. To others, high integrity means that the software cannot be
modified without authorization.
8. Flexibility: Software Flexibility refers to the ability of the software solution to
adapt to potential or future changes in its requirements. When evaluating the
flexibility of software, look at how simple it is to add, modify, or remove features
without interfering with the current operation.