UNIT 1 Software Engineering Notes
UNIT 1 Software Engineering Notes
While Software Engineering offers many advantages, there are also some
potential disadvantages to consider:
The SDLC Model involves six phases or stages while developing any
software.
In this stage, all the requirements for the target software are specified.
These requirements get approval from customers, market analysts, and
stakeholders.
This is fulfilled by utilizing SRS (Software Requirement Specification). This
is a sort of document that specifies all those things that need to be defined
and created during the entire project cycle.
At this stage, the fundamental development of the product starts. For this,
developers use a specific programming code as per the design in the DDS.
Hence, it is important for the coders to follow the protocols set by the
association. Conventional programming tools like compilers, interpreters,
debuggers, etc. are also put into use at this stage. Some popular languages
like C/C++, Python, Java, etc. are put into use as per the software
regulations.
Requirements of Software are first broken down into several modules that
can be incrementally constructed and delivered.
Iterative Model
In the iterative model first, we take the initial requirements then we enhance
the product over multiple iterations until the final product gets ready. In
every iteration, some design modifications were made and some changes
in functional requirements is added. The main idea behind this approach is
to build the final product through multiple iterations that result in the final
product being almost the same as the user wants with fewer errors and the
performance, and quality would be high.
Incremental Model
In the incremental model, we first build the project with basic features and
then evolve the project in every iteration, it is mainly used for large
projects. The first step is to gather the requirements and then perform
analysis, design, code, and test and this process goes the same over and
over again until our final project is ready.
Spiral Model
The spiral model is a combination of waterfall and iterative models and in
this, we focused on risk handling along with developing the project with the
incremental and iterative approach, producing the output quickly as well as
it is good for big projects. The software is created through multiple iterations
using a spiral approach. Later on, after successive development the final
product will develop, and the customer interaction is there so the chances
of error get reduced.
Software Myths:
Fact:
Software experts do not know all the requirements for the software
development.
Myth 2: The addition of the latest hardware programs will improve the
software development.
Fact:
The role of the latest hardware is not very high on standard software
development; instead
(CASE) Engineering tools help the computer, they are more important
than hardware to produce quality and productivity.
CASE tools are set of software application programs, which are used to
automate SDLC activities. CASE tools are used by software project
managers, analysts and engineers to develop software system.
Cont...
Fact:
If software is late, adding more people will merely make the problem
worse.
This is because the people already working on the project now need to
spend time educating the newcomers, and are thus taken away from
their work.
The newcomers are also far less productive than the existing software
engineers, and so the work put into training them to work on the
software does not immediately meet with an appropriate reduction in
work.
(ii)Customer Myths:
The customer can be the direct users of the software, the technical
team, marketing / sales department, or other company. Customer has
myths leading to false expectations
(Customer) & that’s why you create dissatisfaction with the developer.
Fact:
Cont...
Fact:
(iii)Practitioner’s Myths:
Myths 1: They believe that their work has been completed with the
writing of the plan.
Fact:
It is true that every 60-80% effort goes into the maintenance phase (as
of the latter software release). Efforts are required, where the product
is available first delivered to customers.
Fact:
Cont...
Fact: