Conformity: Q1) Essential Di Culties of Software Engineering
Conformity: Q1) Essential Di Culties of Software Engineering
-Conformity
So ware must conform to exis ng systems and legisla on.
-Changeability
External causes dictate the need for change, or people
discover new uses for the product
-Invisibility
Visualiza on of So ware cannot be done. Although diagrams
can be drawn, it is not
possible to show all aspects simultaneously.
ti
ti
ti
ft
ffi
ti
ft
ft
ti
fi
ti
ti
ti
Disadvantages:
- Towards end, the model may throw some high-risk and
di culty .
ffi
fi
fi
Advantages:
- To understand the requirements
- Developed from a reasonable understanding of the
system
- Involves-design, coding and tes ng –but not formally
or thoroughly.
- Client gets an actual feel of the system
- Interac ons with prototype lets client understand
requirements of the desired system
ffi
ti
ti
ti
ti
fi
ti
fi
fi
ti
fi
ti
ti
ti
ti
ti
ft
ff
ti
ti
ti
ti
ti
fi
ti
ti
ti
tt
ti
ti
ti
ti
ti
ti
Q8) Agile
Agile Methods
- Focus on the code rather than the design; feedback from
people rather than planning
- Are based on an itera ve approach to so ware
development
- Are intended to deliver working so ware quickly and evolve
this quickly to meet changing requirements.
- Limited Documenta on
Agile manifesto
- Individuals and interac ons over processes and tools
- Working so ware over comprehensive documenta on
- Customer collabora on over contract nego a on
- Responding to change over following a plan
ti
ti
ti
ti
ft
ft
ti
ti
ti
ti
ti
ti
ti
ti
ffi
ft
ti
fi
ffi
Q9) SCRUM
- Scrum is an agile process for so ware development.
- A team in SCRUM consists of about 6-9 people who work
collabora vely to achieve their goals.
- The project requirements are developed in itera ve
increments called Sprints.
ft
ti
ti
ti
ti
ti
ti
ti
ti
ti
ti
ti
ti
ti
fi
ti
fi
ti
fi
ft
ft
ti
ft
ft
ti
ti
ft
fi
ti
ti
fi
tt
ft
ti
ft
ti
ti
ft
ti
ti
ti
of development, tes ng, and maintenance. In this model, a
basic version of the so ware is ini ally developed, and then
addi onal features and enhancements are added in
subsequent itera ons or increments. Each itera on builds
upon the previous version, and feedback from users or
stakeholders is incorporated into the subsequent itera ons.
ti
ti
ft
ti
ft
ti
ft
ti
ft
ff
ti
ft
ti
ti
ti
ti
ti
ti
ti
ff
ti
ft
ti
ti
ft
ff
ti
ft
ft
ti
ti
ft
ti
ft
ti
The goals of reengineering typically include enhancing the
system's maintainability, scalability, and extensibility, as well
as reducing complexity, improving performance, and aligning
the so ware with current standards or best prac ces.
Reengineering may involve ac vi es such as code refactoring,
redesigning the so ware architecture, upda ng libraries or
dependencies, improving documenta on, or migra ng to a
new pla orm or framework.
Reverse Engineering: Reverse engineering is the process of
analyzing and understanding an exis ng so ware system or
component to extract informa on about its design, structure,
behavior, or func onality. It involves examining the so ware's
ar facts, such as its source code, binaries, or documenta on,
and deducing the underlying design principles or inten ons.
Reverse engineering is o en employed in scenarios where
the original design or documenta on of a so ware system is
either unavailable, incomplete, or poorly understood. It can
be useful for various purposes, such as understanding legacy
systems, integra ng with external components, iden fying
security vulnerabili es, or crea ng interoperable
implementa ons.
Reverse engineering techniques may include decompiling
binaries to obtain source code, analyzing network tra c or
system interac ons, reconstruc ng architectural diagrams, or
performing dynamic analysis to observe the so ware's
behavior. It's important to note that reverse engineering
ti
ft
tf
ti
ti
ti
ti
ft
ti
ft
ti
ti
ti
ti
ti
ti
ti
ti
ft
ti
ft
ft
ti
ti
ti
ffi
ft
ti
ti
Q16) Testing
Tes ng refers to the process of evalua ng a so ware system
or component to iden fy any defects, errors, or
discrepancies. It involves execu ng the so ware with the
intent of nding bugs or con rming that it behaves as
expected. The primary goal of tes ng is to ensure the quality
and reliability of the so ware.
Tes ng is typically performed at di erent levels of the
so ware development life cycle (SDLC), including unit tes ng,
integra on tes ng, system tes ng, and acceptance tes ng.
3 TYPES OF TESTING
Alpha Test: Alpha tes ng is an early stage of tes ng
performed on a so ware system or product by the internal
development team or a group of selected users. It is typically
conducted in a controlled environment, such as within the
organiza on or with a limited set of external testers. The
ft
ft
ti
ti
ti
ti
ti
ti
fi
ti
ft
ti
ft
ti
ti
ft
ft
fi
ti
ti
ti
ff
ti
ti
ft
ft
ti
ti
ti
ff
ti
ti
ft
ti
ft
ti
ti
ti
ti
ti
ti
ffi
fi
ti
fi
ft
ti
ti
ti
ti
ti
ft
ft
Q17) What is an SRS document
An SRS (So ware Requirements Speci ca on) document is a
comprehensive document that outlines the func onal and
non-func onal requirements of a so ware system. It serves
as a formal agreement between the stakeholders (clients,
users, development team, etc.) and the so ware
development team. The SRS document acts as a founda on
for the so ware development process by providing a clear
understanding of what the so ware should accomplish.
Here are the key components typically found in an SRS
document:
Introduc on: Provides an overview of the so ware system,
its purpose, and the intended audience of the document.
Scope: De nes the boundaries and limita ons of the
so ware system, including its features, func onali es, and
interfaces.
Func onal Requirements: Describes the speci c behaviors
and func ons that the so ware system should exhibit. This
sec on outlines the system's inputs, outputs, processes, and
any constraints or dependencies.
Non-func onal Requirements: Speci es the quality
a ributes or characteris cs that the so ware system should
possess, such as performance, reliability, security, usability,
and scalability.
tt
ft
ti
ti
ti
ti
ti
ti
ft
fi
ft
ti
ft
ft
ft
fi
fi
ft
ti
ti
ft
ti
ft
fi
ti
ti
ti
ti
fi
ti
fi
ft
ft
ti
ft
ti
ti
ti
FP = UFP * CAF