Unit-1 Software Enginering
Unit-1 Software Enginering
1.1 Software:
Definition:
The software is collection program set of instruction functions and procedures.
Type of Software:
1. Application Software:
2. System Software:
4. Custom Software:
These types of software develop as per client
requirement.
For Eg:-Hotel Monitoring System
✔ Accuracy
✔ Interoperability
✔ Security
2. Reliability:
A set of attribute that bear on capability of software to maintain its level of
performance under the given condition for a stated time. Required functions
are:
✔ Recoverability
✔ Fault tolerance
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 requirement.
Required functions are:
✔ In Time
✔ In Resource
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.
✔ Understandability
✔ Learnability
✔ Operability
✔ Testability
✔ Stability
✔ Chanability
✔ Operability
6. Portability:
A set of attribute that bear on the ability of software to be transferred from one
environment to another, without or minimum changes. Required functions are:
✔ Adaptability
✔ Installability
✔ Replaceability
4. Embedded Software: There are software control systems that control and
manage hardware devices. Example- software in mobile phone, software in
Anti Lock Braking in car, software in microwave oven to control the
cooking process.
Notes By:Mr.Bhosle Ajit T.
Assistant Professor
MGM’S College of CS & IT,Nanded
5. Product Line Software: It is designed to provide a specific capability for
used by many different customers. It can focus on unlimited or esoteric
Marketplace like inventory control products. Or address mass market place
like : Spreadsheets, computer graphics, multimedia, entertainment, database
management, personal, business financial applications.
6. Web application: It is also called “web apps ", are evolving into
sophisticated computing environment that not only provide stand alone
features, computing functions, and content to the end user but also are
integrated with corporate database and business applications.
1. Change Request
2. Impact Analysis
3. Release Planning
4. Software Update
5. System Implementation
1. Change Request:
In the change request process, the necessary
information is required and the impact analysis process analyzed the necessary
information and pass to the next step release planning process. The release
planning process passes the information to the next step of the change
implementation process so any problem in the implementation process retrieves
the information to the previous step of release planning. If no problem in the
change implementation processes the pass the information to the system release
process. All the information are complete the system analysis process retrieves
Notes By:Mr.Bhosle Ajit T.
Assistant Professor
MGM’S College of CS & IT,Nanded
the first step of change request process so the evolution process is done. The
change request process sometimes is related to the system release process.
2. Impact Analysis:
After the process of the system implementation then the
next step is the impact analysis process. In which the impact analysis process
complete details of the necessary information are analyzed and emerge change
should not appear in the change analysis process.
3. Release Planning:
During the releasing planning of software evolution
process if all the proposal has been changed means new functionality,
adaptation and fault repair are occur in the system. In this situation to make a
discussion which changes the implementation for the next version of the system
to release. This proposal, which is used to iterate with the next releasing the
change proposal.
4. Software Update:
Software updates are a way for software developers to
fine-tune a product to make it the best it can be. They offer small, frequent
improvements rather than major changes. Unlike a software upgrade, updates
need the existing software program you’re using to work.
Updates sometimes run automatically in the background. Other times, software
come in the form of a free download. They’re usually necessary for your
product to continue running successfully.
Myth: We already have a book that’s full of standards and procedures for
building software, won’t that provide my people with everything they need to
know?
Reality: The book of standards may very well exist, but isn’t used. Most
software practitioners aren’t aware of its existence. Also, it doesn’t reflect
modern software engineering practices and is also complete.
Myth: If we get behind schedule, we can add more programmers and catch
up (sometimes called the Mongolian horde concept).
Reality: Software development is not a mechanistic process like manufacturing.
As new people are added, people who were working must spend time educating
the newcomers, thereby reducing the amount of time spent on productive
development effort. People can be added but only in a planned and well-
coordinated manner.
Myth: If I decide to outsource the software project to a third party, I can just
relax and let that firm build it.
Reality: If an organization does not understand how to manage and control
software projects internally, it will invariably struggle when it outsources
software projects.
Myth: Until I get the program “running” I have no way of assessing its
quality.
Reality: One of the most effective software quality assurance mechanisms can
be applied from the inception of a project he formal technical review.