1 Sen
1 Sen
Unit – 1
[Introduction to Software Engineering]
1.Software Engineering :
2.Real time software: These software are used to monitor, control and analyze real world
events as they occur. An example may be software required for weather forecasting. Such
software will gather and process the status of temperature, humidity and other environmental
parameters to forcast the weather.
4.Business software : This is the largest application area. The software designed to
process business applications is called business software. Business software could be
payroll, file monitoring system, employee management, account management. It may also be
a data warehousing tool which helps us to take decisions based on available data.
Management information system, enterprise resource planning (ERP) and such other
software are popular examples of business software.
5.Personal computer software :The software used in personal computers are covered in
this category. Examples are word processors, computer graphics, multimedia and animating
tools, database management, computer games etc. This is a very upcoming area and many big
organisations are concentrating their effort here due to large customer base.
7.Web based software: The software related to web applications come under this
category. Examples are CGI, HTML, Java, Perl, etc.
4
Software myths:
Managers, who own software development responsibility, are often under strain and
pressure to maintain a software budget, time constraints, improved quality, and many other
considerations. Common management myths are listed in Table
Management
Myths
The members of an Standards are often
organization can acquire all-the incomplete, inadaptable, and
information, they require from outdated.
a manual, which contains Developers are often
standards, procedures, and unaware of all the established
principles; standards.
Developers rarely
follow all the
known standards because
not all the standards tend to
decrease the delivery time
of software while maintaining
its quality.
If the project is Adding more manpower to
behind schedule,increasing the the project, which is already
number of programmers can behind schedule, further delays
reduce the time gap. the project.
New workers take
longer to learn about the
project as compared to those
already working on the
project.
If the project is outsourced Outsourcing software to a
to a third party, the management third party does not help the
can relax and let the other organization, which is
firm develop software for them. incompetent in managing and
controlling the software project
internally. The
organization invariably suffers
when it out sources the software
project.
5
In most cases, users tend to believe myths about the software because software managers
and developers do not try to correct the false beliefs. These myths lead to false expectations
and ultimately develop dissatisfaction among the users. Common user myths are listed in
Table.
Table Developer
Myths
Software 50% to 70% of all
development is considered the efforts are expended
complete when the code is after the software is
delivered. delivered to the user.
1. A quality focus:
2. Process:
It is the foundation or base layer of software
engineering. It is key that binds all the layers
together which enables the development of software
before the deadline or on time. Process defines a
framework that must be established for the effective
delivery of software engineering technology. The
software process covers all the activities, actions,
and tasks required to be carried out for software
development.
Process activities are listed below:-
4. Tools:
Software engineering tools provide a self-operating
system for processes and methods. Tools are
integrated which means information created by one
tool can be used by another.
There are three types of prescriptive
process models. They are:
1. The Waterfall Model
2. Incremental Process model
3.Spiral model
Advantages of waterfall model
• The waterfall model is simple and easy to
understand, implement, and use.
• All the requirements are known at the
beginning of the project; hence it is easy to
manage.
• It avoids overlapping of phases because each
phase is completed at once.
• This model works for small projects because the
requirements are understood very well.
• This model is preferred for those projects where
the quality is more important as compared to
the cost of the project.