Ete SW Sol
Ete SW Sol
Ete SW Sol
4.What is SRS?
A software requirements specification (SRS) is a document that describes what the software
will do and how it will be expected to perform. It also describes the functionality the product
needs to fulfill all stakeholders (business, users) needs.
6.What is modularization?
Modularization is a practice of organizing a codebase into loosely coupled and self
contained parts. Each part is a module. Each module is independent and serves a clear
purpose.
5 MARKS
1.Describe about Feasibility study?
Feasibility Study in Software Engineering is a study to evaluate
feasibility of proposed project or system. Feasibility study is one of
stage among important four stages of Software Project Management
Process. As name suggests feasibility study is the feasibility analysis or
it is a measure of the software product in terms of how much beneficial
product development will be for the organization in a practical point of
view.
Types of Feasibility Study :
Technical Feasibility –
In Technical Feasibility current resources both hardware software along
with required technology are analyzed/assessed to develop project.
This technical feasibility study gives report whether there exists correct
required resources.
Operational Feasibility –
In Operational Feasibility degree of providing service to requirements is
analyzed along with how much easy product will be to operate and
maintenance after deployment.
Economic Feasibility –
In Economic Feasibility study cost and benefit of the project is
analyzed. Means under this feasibility study a detail analysis is carried
out what will be cost of the project for development which includes all
required cost for final development like hardware and software etc.
Legal Feasibility –
In Legal Feasibility study project is analyzed in legality point of view.
This includes analyzing barriers of legal implementation of project, data
protection, project certificate, license, copyright etc.
Schedule Feasibility –
In Schedule Feasibility Study mainly timelines/deadlines is analyzed for
proposed project which includes how many times teams will take to
complete final project which has a great impact on the organization as
purpose of project may fail if it can’t be completed on time.
2.Define Software crisis? What are the causes of software crisis?
Software crisis is a term used in the early days of computing science for the difficulty of
writing useful and efficient computer programs in the required time. The software crisis was
due to the rapid increases in computer power and the complexity of the problems that
could not be tackled.
2. Completeness: The SRS is complete if, and only if, it includes the following
elements:
II. Definition of their responses of the software to all realizable classes of input data
in all available categories of situations.
Breaks Down the Problem. A good SRS will break down the
problem into chunks that can be solved more readily. This
also helps to increase understanding of issues and makes
them easier to tackle.
Offers Design Input. Your SRS should contain design details
to assist with implementation and deployment.
Considers Components for Feedback. A meaningful quality
to users of the finished software is the opportunity to provide
feedback. This should be a consideration when developing a
strong SRS.
Includes Validation Strategies. Validation strategies should
be implemented to ensure requirements are stated correctly
and function the way they are intended to.
Complete, Concise, and Modifiable. The finished product
should offer a total picture of the development project as
concisely as possible to promote understanding.
components of SRS
1. Functional Requirements:
The purposeful requirements part discusses the functionalities
needed from the system, The system is taken into account to
perform a group of high- level functions Fi. The functional view
of the system is shown in below diagram Each function Fi of
the system can be considered as a transformation of a set of
input data Ii to the corresponding set of output knowledge Oi.
2.Non-functional Requirements:
Non-functional necessities accommodate the characteristics of the
system which may not be expressed as functions – like the
maintainability of the system, movability of the system, the usability of
the system, etc. Non-functional requirements may include:
1. Reliability issues
2. Accuracy of results
3. Human-computer interface issues
3.Goals of Implementation:
The goals of implementation part documents some general suggestions
relating to development. These suggestions guide trade-off among style
goals. The goals of the implementation section would possibly
document problems like revisions to the system functionalities that will
be needed within the future, new devices to be supported within the
future, reusability problems, etc.
4.Data Flow
It represents the flow of data between the modules. It is represented by
directed arrow with empty circle at the end.
5.Control Flow
It represents the flow of control between the modules. It is represented
by directed arrow with filled circle at the end.
6.Define top down and bottom-up approach in software design?
top down bottom-up
1. Accessibility Testing
Accessibility testing is the practice of ensuring your mobile and web apps are
working and usable for users without and with disabilities such as vision impairment,
hearing disabilities, and other physical or cognitive conditions.
2. Acceptance Testing
Acceptance testing ensures that the end-user (customers) can achieve the goals set
in the business requirements, which determines whether the software is acceptable
for delivery or not. It is also known as user acceptance testing (UAT).
Black box testing involves testing against a system where the code and paths are
invisible.
4. End to End Testing
End to end testing is a technique that tests the application’s workflow from beginning
to end to make sure everything functions as expected.
5. Functional Testing
6. Interactive Testing
7. Integration Testing
8. Load Testing
This type of non-functional software testing process determines how the software
application behaves while being accessed by multiple users simultaneously.
9.Explain waterfall and spiral model for software life cycle and
discuss various activities in
each phase?
10.What are the differences between validation and verification in
software development?
below.
1. Requirement: In this phase, all the requirements are collected from
the customer/client. They are provided in a document called
Businessmen requirement specification (BRS) and System requirement
specification (SRS). All the details are discussed with the
customer/client in detail.
2. Design: It has two steps:
High-level design (HLD): It gives the architecture of software
products.
Low-level design (LLD): It describes how each and every
feature in the product should work and every component.
3. Implementation:
This is the longest phase.
This phase consists of Front end + Middleware + Back-end.
In front-end: Development of coding is done even SEO
settings are done.
In Middleware: They connect both the front end and back end.
In the back-end: A database is created.
4. Testing: Testing is carried out to verify the entire system. The aim of
the tester is to find out the gaps and defects within the system and also
to check whether the system is running according to the requirement of
the customer/client.
5. Deployment: After successful testing, the product is
delivered/deployed to the client, and even clients are trained on how to
use the product.
6. Maintenance: Once the product has been delivered to the client a
task of maintenance starts as when the client will come up with an error
the issue should be fixed from time to time.
2.Explain waterfall and spiral model for software life cycle and
discuss various activities in each phase?
Waterfall Model - Design
Waterfall approach was first SDLC Model to be used widely in Software Engineering to
ensure success of the project. In "The Waterfall" approach, the whole process of software
development is divided into separate phases. In this Waterfall model, typically, the outcome
of one phase acts as the input for the next phase sequentially.
1. Feasibility Study:
The objective behind the feasibility study is to create the reasons for developing the
software that is acceptable to users, flexible to change and conformable to
established standards.