Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
6 views26 pages

Software Engineering IMP

The document provides definitions and explanations of various software engineering concepts, including feasibility studies, RAD, SRS, software reengineering, and testing principles. It discusses software development models like Waterfall and Spiral, along with their advantages and disadvantages. Additionally, it covers software maintenance, fact-finding techniques, and the differences between white box and black box testing.

Uploaded by

samarthsupekar15
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views26 pages

Software Engineering IMP

The document provides definitions and explanations of various software engineering concepts, including feasibility studies, RAD, SRS, software reengineering, and testing principles. It discusses software development models like Waterfall and Spiral, along with their advantages and disadvantages. Additionally, it covers software maintenance, fact-finding techniques, and the differences between white box and black box testing.

Uploaded by

samarthsupekar15
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 26

a) What is feasibility study?

Ans- A feasibility study in so ware engineering is a systema c assessment of a proposed so ware


project to determine its viability and prac cality. It's a crucial phase in the so ware project
management process.

b) Define RAD.

Ans- Rapid Applica on Development (RAD) is a so ware development model that focuses on
building prototypes and ge ng quick feedback, rather than extensive planning. RAD is an agile
approach that involves itera ve development and tes ng with li le to no prepara on ahead of me.

c) What is SRS?

Ans- SRS stands for So ware Requirements Specifica on, which is a document that describes what a
so ware product will do and how it will perform. It's a blueprint for the so ware that serves as a
reference for the en re development team and other stakeholders.

d) Define an En ty.

Ans- A 'So ware En ty' is a component within a system that can be a relay or a proxy, used for
rou ng data between different network nodes based on specific requirements or protocols. AI
generated defini on based on: Computer Networks, 2016. Discover other topics.

e) What is Pseudocode?

Ans- Pseudocode is a detailed yet readable descrip on of what a computer program or algorithm
should do. It is wri en in a formal yet readable style that uses a natural syntax and forma ng so it
can be easily understood by programmers and others involved in the development process.

f) State the principles of so ware tes ng?

Ans- So ware tes ng is an important aspect of so ware development, ensuring that applica ons
func on correctly and meet user expecta ons.

In this ar cle, we will go into the principles of so ware tes ng, exploring key concepts and
methodologies to enhance product quality. From test planning to execu on and analysis,
understanding these principles is vital for delivering robust and reliable so ware solu ons.

g) What is So ware Reengineering?

Ans- So ware Reengineering is the process of upda ng so ware. This process includes developing
addi onal features on the so ware and adding func onali es for be er and more efficient so ware.
As far as the defini on goes, this process also entails that the so ware product will have improved
maintainability.

h) What is requirement elicita on?

Ans- requirements elicita on is the prac ce of researching and discovering the requirements of a
system from users, customers, and other stakeholders. The prac ce is also some mes referred to as
"requirement gathering".
i) What is prototype?

Ans- A prototype is an early version of a product from which future versions are developed.
Engineers and product developers o en create these test versions of a new product, service or
device before releasing it. Prototypes aren't the final product or service.

j) What is system?

Ans- In so ware engineering, a system is a collec on of components that work together to form a
computer system, which is a combina on of hardware and so ware. A system can also refer to a
framework, or pla orm, that allows so ware programs to run.

b) Define so ware?

Ans- So ware is the set of instruc ons, data, and programs that a computer uses to perform tasks
and operate. It's the variable part of a computer, while hardware is the physical part.

g) State advantages of Waterfall model.

Ans- The Waterfall model is a sequen al so ware development process that has several advantages,
including:

 Clear structure

The Waterfall model is easy to understand and manage, and it provides clear milestones and
deadlines.

 Well-organized

The model ensures that all requirements are met before moving on to the next phase, which leads to
a more organized final product.

 Good for simple projects

The Waterfall model is well-suited for smaller or simpler projects where requirements are well
understood.

 Facilitates teamwork

The Waterfall model provides a way for large or changing teams to work together toward a common
goal.

 Establishes good coding habits

The Waterfall model defines design first, and then implements it.

 High quality

The Waterfall model ensures high quality and produc vity by addressing all aspects of the so ware
development life cycle.
h) State any two types of coupling.

Ans- Here are two types of coupling in so ware engineering:

 Control coupling

When one module controls the behavior of another module, making the code harder to maintain.

 Stamp coupling

When modules share a composite data structure, which can lead to data corrup on and make the
code harder to debug.

a) Define Economical feasibility.

Ans- Economic Feasibility: This part of the study focuses on the financial aspects of the project. It
includes a cost-benefit analysis to determine if the project is economically viable. This analysis
involves es ma ng the development costs, maintenance costs, poten al benefits, and return on
investment (ROI).

b) What is system Analyst?

Ans- A systems analyst is a person who uses analysis and design techniques to solve business
problems using informa on technology. Systems analysts may serve as change agents who iden fy
the organiza onal improvements needed, design systems to implement those changes, and train and
mo vate others to use the systems.

c) Define data dic onary.

Ans- A data dic onary is a collec on of descrip ons of the data objects or items in a data model to
which programmers and others can refer. O en, a data dic onary is a centralized metadata
repository.

j) What is module?

Ans- A so ware module is an autonomous unit within a mul - er so ware applica on that expects
specific inputs, provides defined outputs, and communicates through known protocols.

f) Define unit tes ng.

Ans- Unit tes ng is the process of tes ng the smallest func onal units of code in an
applica on. These units are usually individual func ons, methods, procedures, modules, or classes.

i) what is so ware maintenance?

Ans- So ware maintenance is a con nuous process that occurs throughout the en re life cycle of
the so ware system.

 The goal of so ware maintenance is to keep the so ware system working correctly,
efficiently, and securely, and to ensure that it con nues to meet the needs of the users.
a) what are the types of system tes ng.?

Ans- Some types of system tes ng in so ware engineering include:

 Performance tes ng

Measures the speed, stability, reliability, and scalability of a so ware applica on under different
workloads. It also helps iden fy performance bo lenecks and how the system handles errors and
failures.

 Regression tes ng

Confirms that updates and changes to code do not nega vely impact so ware features.

 Acceptance tes ng

Also called user acceptance tes ng, this type of tes ng evaluates the product against business
requirements and user needs. It's o en conducted by end-users or clients.

b) what are the advantage of prototyping.?

Ans- Prototyping in so ware engineering has many advantages, including:

 Valida ng ideas

Prototyping allows you to test your ideas with users and stakeholders before coding to ensure the
product is feasible and meets user needs.

 Reducing risk

Prototyping helps you avoid costly mistakes by ensuring the product meets user needs early in the
development process.

 Improving communica on

Prototyping encourages early ques ons from developers and allows users to provide feedback, which
can help prevent misunderstandings.

 Saving me and money

Prototyping can help you iden fy and address issues early, which can lead to faster and less
expensive development.

 Crea ng a comprehensive project plan

Prototyping forces you to plan the details of your project in great depth, which can help minimize
surprises and code rework.

 Aligning teams

Prototyping helps ensure that everyone involved in the project has a clear understanding of what
needs to be accomplished.

 Establishing goals

Prototypes help stakeholders understand the func onality and features of the product, which can
help establish a ainable goals for the final product.
Q2.

a) Explain spiral model in detail.

Ans- The Spiral Model is a So ware Development Life Cycle (SDLC) model that provides a systema c
and itera ve approach to so ware development. In its diagramma c representa on, looks like a
spiral with many loops. The exact number of loops of the spiral is unknown and can vary from project
to project. Each loop of the spiral is called a phase of the so ware development process.

Phases of the Spiral Model?

The Spiral Model is a risk-driven model, meaning that the focus is on managing risk through mul ple
itera ons of the so ware development process. It consists of the following phases:

1. Objec ves Defined: In first phase of the spiral model we clarify what the project aims to
achieve, including func onal and non-func onal requirements.

2. Risk Analysis: In the risk analysis phase, the risks associated with the project are iden fied
and evaluated.

3. Engineering: In the engineering phase, the so ware is developed based on the requirements
gathered in the previous itera on.

4. Evalua on: In the evalua on phase, the so ware is evaluated to determine if it meets the
customer’s requirements and if it is of high quality.

Planning: The next itera on of the spiral begins with a new planning phase, based on the results of
the evalua on

Advantages of the Spiral Model

Below are some advantages of the Spiral Model.

1. Risk Handling: The projects with many unknown risks that occur as the development
proceeds, in that case, Spiral Model is the best development model to follow due to the risk
analysis and risk handling at every phase.

2. Good for large projects: It is recommended to use the Spiral Model in large and complex
projects.

4. Customer Sa sfac on: Customers can see the development of the product at the early
phase of the so ware development and thus, they habituated with the system by using it
before comple on of the total product.

7. Improved Communica on: The Spiral Model provides for regular evalua ons and reviews,
which can improve communica on between the customer and the development team.

8. Improved Quality: The Spiral Model allows for mul ple itera ons of the so ware
development process, which can result in improved so ware quality and reliability.

Disadvantages of the Spiral Model

Below are some main disadvantages of the spiral model.

1. Complex: The Spiral Model is much more complex than other SDLC models.

2. Expensive: Spiral Model is not suitable for small projects as it is expensive.


5. Complexity: The Spiral Model can be complex, as it involves mul ple itera ons of the
so ware development process.

6. Time-Consuming: The Spiral Model can be me-consuming, as it requires mul ple


evalua ons and reviews.

b) Differen ate between White Box and Black-Box tes ng.

Ans-

Black Box
Tes ng White Box Tes ng

Black box tes ng is generally used White box tes ng is used for tes ng
for tes ng the so ware at the the so ware at the unit level,
Scope func onal level. integra on level and system level.

Implementa on of code is not Code implementa on is necessary for


Implementa on needed for black box tes ng. white box tes ng.

Black Box Tes ng is mostly done White Box Tes ng is mostly done by
Done By by so ware testers. so ware developers.

Black Box Tes ng is a func onal White Box Tes ng is a structural test of
Tes ng Level test of the so ware. the so ware.

No knowledge of programming is It is mandatory to have knowledge of


Programming required. programming.

Black Box Tes ng is the behavior White Box Tes ng is the logic tes ng of
Tes ng Focus tes ng of the so ware. the so ware.

Alterna ve Black Box Tes ng is also called White Box Tes ng is also called as clear
Names closed tes ng. box tes ng.

Time Black Box Tes ng is least me White Box Tes ng is most me


Consump on consuming. consuming.
Black Box
Tes ng White Box Tes ng

Suitable for
Black Box Tes ng is not suitable White Box Tes ng is suitable for
Algorithm
or preferred for algorithm tes ng. algorithm tes ng.
Tes ng

Data domains along with inner or


Can be done by trial and error
internal boundaries can be be er
ways and methods.
Approach tested.

Search something on google by


By input to check and verify loops
Example using keywords

It is less exhaus ve as compared It is compara vely more exhaus ve


Exhaus veness to white box tes ng. than black box tes ng.

Types of Black Box Tes ng: Types of White Box Tes ng:

 Func onal Tes ng  Unit Tes ng

 Non-func onal tes ng  Integra on Tes ng

Types  Regression Tes ng  Regression Tes ng


c) What is SDLC? Describe its phases?

Ans- SDLC, or So ware Development Life Cycle, is a project management model that describes the
process of crea ng and maintaining so ware from the ini al idea to its final deployment. The SDLC
typically consists of seven phases:

Planning, Requirements analysis, Design, Development, Tes ng, Implementa on, and Maintenance.

Different teams may use different methodologies and approaches to the SDLC process. Some popular
SDLC models include:

 Waterfall

A structured methodology where each phase depends on the previous phase. This model provides
discipline and a tangible output at the end of each phase, but it doesn't work well when flexibility is
required.

 Agile

An incremental process that promotes con nuous itera on of development and tes ng. The agile
model focuses on user experience and feedback, and it helps teams iden fy and address small issues
early.

 Spiral

A risk-driven model that combines the itera ve model's small repeated cycles with the waterfall
model's linear sequen al flow. The spiral model uses rapid prototyping to ensure so ware's gradual
release and improvement.

d) Discuss different fact finding techniques.

Ans- Here are some fact-finding techniques used in so ware engineering:

 Sampling: Collect a representa ve sample of exis ng documents, forms, and records.

 Observa on: Par cipate in or watch a person perform ac vi es to learn about the system.

 Ques onnaires: Use a special-purpose document to collect informa on and opinions from
respondents.

 Interviews: Conduct interviews with individuals or groups.

 Prototyping: Create a prototype to allow users to evaluate the system and provide feedback.

 Joint requirements planning (JRP): Plan jointly with others to discover requirements.

 Research and site visits: Conduct research and visit the site.

Analysts may use more than one technique for inves ga on.
e) Define so ware maintenance. Explain types of so ware maintenance.

Ans- So ware maintenance is a con nuous process that occurs throughout the en re life cycle of the
so ware system.

 The goal of so ware maintenance is to keep the so ware system working correctly,
efficiently, and securely, and to ensure that it con nues to meet the needs of the users.

 This can include fixing bugs, adding new features, improving performance, or upda ng the
so ware to work with new hardware or so ware systems.

 It is also important to consider the cost and effort required for so ware maintenance when
planning and developing a so ware system.

 It is important to have a well-defined maintenance process in place, which includes tes ng


and valida on, version control, and communica on with stakeholders.

 It’s important to note that so ware maintenance can be costly and complex, especially for
large and complex systems. Therefore, the cost and effort of maintenance should be taken
into account during the planning and development phases of a so ware project.

 It’s also important to have a clear and well-defined maintenance plan that includes regular
maintenance ac vi es, such as tes ng, backup, and bug fixing.

Types of So ware Maintenance

1. Correc ve Maintenance: This involves fixing errors and bugs in the so ware system.

2. Patching: It is an emergency fix implemented mainly due to pressure from management.


Patching is done for correc ve maintenance but it gives rise to unforeseen future errors due
to lack of proper impact analysis.

3. Adap ve Maintenance: This involves modifying the so ware system to adapt it to changes
in the environment, such as changes in hardware or so ware, government policies, and
business rules.

4. Perfec ve Maintenance: This involves improving func onality, performance, and reliability,
and restructuring the so ware system to improve changeability.

5. Preven ve Maintenance: This involves taking measures to prevent future problems, such as
op miza on, upda ng documenta on, reviewing and tes ng the system, and implemen ng
preven ve measures such as backups.
b) Explain in detail about coupling and cohesion.

Ans- Coupling refers to the degree of interdependence between so ware modules. High coupling
means that modules are closely connected and changes in one module may affect other modules.
Low coupling means that modules are independent, and changes in one module have li le impact on
other modules.

Coupling

Cohesion refers to the degree to which elements within a module work together to fulfill a single,
well-defined purpose. High cohesion means that elements are closely related and focused on a single
purpose, while low cohesion means that elements are loosely related and serve mul ple purposes.

Cohesion

Both coupling and cohesion are important factors in determining the maintainability, scalability, and
reliability of a so ware system. High coupling and low cohesion can make a system difficult to change
and test, while low coupling and high cohesion make a system easier to maintain and improve.

d) What is Decision Table? Need of Decision table.

Ans- A decision table is a tool used in so ware engineering to represent input values, rules, test
condi ons, and cases in a tabular format. It's a useful tool in so ware development because it helps
developers make faster and more precise decisions.

Here are some reasons why decision tables are important in so ware engineering:

 Complex so ware tes ng

Decision tables are an effec ve tool for tes ng complex so ware. They help testers iden fy poten al
combina ons of inputs and so ware states that use business rules.

 Requirements management

Decision tables are used to manage so ware specifica on requirements and test data.

 System security

Decision tables help reduce risk and enhance system security by iden fying poten al vulnerabili es.

 Faster decision-making

Decision tables help developers break down difficult choices into smaller, more manageable
components.

 Consistent layout

Decision tables provide a consistent way to lay out complicated business rules.

 Detect combina ons

Decision tables help detect combina ons of condi ons that may not have been tested or developed.

Decision tables are also known as decision matrices, rule tables, or cause-and-effect tables.
c) Differen ate between forward and reverse engineering.

Ans-

Forward
Engineering Reverse Engineering

In forward engineering, the In reverse engineering or backward


applica on are developed with the engineering, the informa on are
Process given requirements. collected from the given applica on.

Forward Engineering is a high Reverse Engineering or backward


Skill Level proficiency skill. engineering is a low proficiency skill.

While Reverse Engineering or


Forward Engineering takes more
Development backward engineering takes less me
me to develop an applica on.
Time to develop an applica on.

The nature of forward engineering The nature of reverse engineering or


Nature is Prescrip ve. backward engineering is Adap ve.

In forward engineering, In reverse engineering, produc on is


Produc on Start produc on is started with given started by taking the exis ng
Point requirements. products.

The example of forward


engineering is the construc on of An example of backward engineering
electronic kit, construc on of DC is research on Instruments etc.
Examples MOTOR , etc.

Forward engineering Starts with Reverse engineering Starts with an


requirements analysis and design, exis ng so ware system and works
Development then proceeds to implementa on backward to understand its structure,
Steps and tes ng. design, and requirements.
Forward
Engineering Reverse Engineering

Forward engineering is used to Reverse engineering is Used to modify


create new so ware applica ons and improve an exis ng so ware
Use Case from scratch. applica on.

Forward engineering is process of Reverse engineering is a process of


moving from a high-level moving from a low-level
abstrac on to a detailed implementa on to a higher-level
Abstrac on Level implementa on. abstrac on.

Requirements and design


Requires a clear set of
Requirements and specifica ons may not be available,
requirements and design
Design making it necessary to reconstruct
specifica ons.
Specifica ons them from the code itself.

Forward engineering is generally


Reverse engineering is generally less
more me-consuming and
me-consuming and less expensive.
Time and Cost expensive.

The final product is completely The final product is typically a


new and independent of any modified or improved version of an
Final Product exis ng so ware system. exis ng so ware system.

Involves a series of steps such as


Involves steps such as code analysis,
requirements gathering, design,
code understanding, design recovery,
Development implementa on, tes ng, and
and documenta on.
Steps deployment.

So ware Forward engineering is commonly Reverse engineering is commonly


Development Life used in the ini al stages of used in the maintenance stage of the
Cycle Stage so ware development. so ware development life cycle.
d) Explain elements of Data flow diagrams?

Ans- Data flow diagrams (DFDs) in so ware engineering are made up of four main elements:

 External en es

These are the sources and des na ons of data that flows into or out of the system being
diagrammed. They can be people, organiza ons, computer systems, or business systems. External
en es are usually placed on the edges of the diagram.

 Processes

These are ac vi es that change data flows. Processes receive inputs and produce outputs. They can
perform computa ons, sort data, or direct data flow based on business rules.

 Data stores

These are repositories that hold data for later use, such as database tables or membership forms.

 Data flows

These are the routes that data takes between the external en es, processes, and data stores. They
are shown with arrows and are usually labeled with a short data name.

DFDs are a visual language that can help stakeholders understand how data moves within a system
or process. They can help with communica on and collabora on during the design phase, and can
also help with troubleshoo ng and documenta on.

e) What is Data Flow Diagram? Explain benefits of DFD, Advantages of DFD, Disadvantages of DFD.

Ans- Data Flow Diagram (DFD) represents the flow of data within informa on systems. Data Flow
Diagrams (DFD) provide a graphical representa on of the data flow of a system that can be
understood by both technical and non-technical users. The models enable so ware engineers,
customers, and users to work together effec vely during the analysis and specifica on of
requirements.

Advantages of Data Flow Diagram (DFD)

 It helps us to understand the func oning and the limits of a system.

 It is a graphical representa on which is very easy to understand as it helps visualize contents.

 Data Flow Diagram represent detailed and well explained diagram of system components.

 It is used as the part of system documenta on file.

 Data Flow Diagrams can be understood by both technical or nontechnical person because
they are very easy to understand.

Disadvantages of Data Flow Diagram (DFD)

 At mes Data Flow Diagram (DFD) can confuse the programmers regarding the system.

 Data Flow Diagram takes long me to be generated, and many mes due to this reasons
analysts are denied permission to work on it.
a) Explain various types of system.

Ans-

Here are some types of systems in so ware engineering:

 Opera ng system (OS)

The core so ware that manages a computer's hardware resources, provides user interfaces, and
allows applica ons to run. Some examples of opera ng systems include Microso Windows, macOS,
Android, and Linux.

 Device drivers

So ware that allows the opera ng system to communicate with hardware devices, ensuring that
peripherals like printers and graphics cards func on properly.

 Firmware

So ware embedded within hardware components that controls specific device func onali es. For
example, the Basic Input/Output System (BIOS) in a computer's motherboard is a type of firmware.

 Programming language translator

Compilers and interpreters that convert high-level programming languages into machine code.

 U li es

So ware tools that perform specific tasks like system maintenance, an virus scanning, and disk
cleanup.

 Systems of systems (SoS)

The integra on of mul ple independent systems that are networked together to achieve a higher
goal.

d) Discuss different fact finding techniques.

Ans- Here are some fact-finding techniques used in so ware engineering:

 Sampling: Collect a representa ve sample of exis ng documents, forms, and records.

 Observa on: Par cipate in or watch a person perform ac vi es to learn about the system.

 Ques onnaires: Use a special-purpose document to collect informa on and opinions from
respondents.

 Interviews: Conduct interviews with individuals or groups.

 Prototyping: Create a prototype to allow users to evaluate the system and provide feedback.

 Joint requirements planning (JRP): Plan jointly with others to discover requirements.

 Research and site visits: Conduct research and visit the site.

Analysts may use more than one technique for inves ga on.
b) Explain different McCall’s quality factors.

Ans- Factors of Product Quality

Below are the factors of Product Quality, that are discussed in detail.

 Product Opera on

 Product Revision

 Product Transi on

Product Opera on

Product Opera on includes five so ware quality factors, which are related to the requirements that
directly affect the opera on of the so ware such as opera onal performance, convenience, ease of
usage, and correctness. These factors help in providing a be er user experience.

 Correctness: The extent to which so ware meets its requirements specifica on.

 Efficiency: The number of hardware resources and code the so ware, needs to perform a
func on.

 Integrity: The extent to which the so ware can control an unauthorized person from
accessing the data or so ware.

 Reliability: The extent to which so ware performs its intended func ons without failure.

 Usability: The extent of effort required to learn, operate, and understand the func ons of
the so ware.

Product Revision

Product Revision includes three so ware quality factors, which are required for tes ng and
maintenance of the so ware. They provide ease of maintenance, flexibility, and tes ng efforts to
support the so ware to be func onal according to the needs and requirements of the user in the
future.

 Maintainability: The effort required to detect and correct an error during maintenance.

 Flexibility: The effort needed to improve an opera onal so ware program.

 Testability: The effort required to verify so ware to ensure that it meets the specified
requirements.

Product Transi on

Product Transi on includes three so ware quality factors, that allow the so ware to adapt to the
change of environments in the new pla orm or technology from the previous.

 Portability: The effort required to transfer a program from one pla orm to another.

 Re-usability: The extent to which the program’s code can be reused in other applica ons.

 Interoperability: The effort required to integrate two systems.


b) Iden fy all en es of online shopping system.

Ans- En es and A ributes for the E-commerce Website

En es and A ributes are defined below:

1. Product:

 P-ID(Primary Key): Unique iden fier for each product.

 Name: Name of the product.

 Price: Price of the product.

 Descrip on: Descrip on of the product.

2. Pro-category:

 Category - ID(Primary Key): Unique iden fier for each category.

 Name: Name of the category.

3. Order:

 Order - No(Primary Key): Unique iden fier for each order.

 Order - Amount:

 Order - Date:

4. User:

 User - ID(Primary Key): Unique iden fier for each user or customer.

 Name: Name of the user.

 Email: Email of the user.

5. Address:

 Address - ID(Primary Key): Unique iden fier for each address

 Country: Country of the user.

 State: State of the user.

 City: City of the user.

 Pin - code: Pin code of the user.

6. Payment:

 Payment - ID(Primary Key): Unique iden fier for each payment.

 Method: Payment method like UPI or Credit Card etc.

 Amount: Total amount paid by user.

7. Tracking Detail:

 Tracking - ID(Primary Key): Unique iden fier for each tracking detail.
 Status: Tracking status like on the way or delivered etc.

 Order - No(Foreign Key): Reference to the order which need to be tracked.

8. Cart:

 Cart - ID(Primary Key): Unique iden fier for each cart.

 User - ID(Foreign Key): Reference to the user.

c) Define so ware process and so ware product. Dis nguish between them.

Ans- In so ware engineering, the main difference between a so ware product and a so ware
process is that the product is the end result, while the process is the roadmap for crea ng it:

 So ware product

The tangible so ware that users interact with. It can include the business, roadmap, process,
strategy, design, development, maintenance, tes ng, and communica on.

 So ware process

The set of ac vi es, methods, and prac ces used to develop and maintain so ware products. It
includes project plans, design documents, code, and test cases. The process defines how
management occurs, what the required input and output products are, and what milestones should
be reached.

The so ware process is the founda on of so ware engineering and defines how the rest of so ware
engineering is built.

b) Define module. Explain types of modules.

Ans- A module is a dis nct assembly of components that can be added, removed, or replaced in a
larger system. In so ware engineering, a module is a sec on of code that's dedicated to a specific
func on and can be reused in different systems.

Here are some characteris cs of so ware modules:

 Independent: Modules can be developed and maintained with minimal to no impact on


other modules.

 Reusable: Modules can be added in as a whole or designed for easy reusability.

 Break up func onality: Modules break up the func onal elements of a mul - er
applica on.

 Perform tasks: Modules can perform tasks such as reading data, modifying data,
transforming data, and outpu ng data.

Modular programming is a so ware design technique that emphasizes separa ng a program's


func onality into independent modules. It's a standard technique for dealing with large and complex
systems.
e) explain the func onal and non-func onal tes ng.

Ans- Func onal and non-func onal tes ng are two types of so ware tes ng that differ in their
purpose and focus:

 Func onal tes ng

Verifies that an applica on's features and func ons work as expected, and that the applica on
performs its intended func ons. Func onal tes ng focuses on the applica on's interac ons and
features. Examples of func onal tes ng include unit tes ng, integra on tes ng, and UI tes ng.

 Non-func onal tes ng

Assesses the applica on's performance, usability, and quality a ributes, such as reliability, speed,
and security. Non-func onal tes ng focuses on the applica on's proper es that aren't cri cal to
func onality but contribute to the end-user experience. Examples of non-func onal tes ng include
load tes ng, security tes ng, and localiza on tes ng.

Func onal requirements define what a product must do, while non-func onal requirements describe
the general proper es of a system.

f) explain the various components of system.

Ans- Some components of a system in so ware engineering include:

 Opera ng system

A collec on of programs that manages computer resources and hardware, and provides services for
computer programs. It acts as an intermediary between programs and hardware for func ons like
memory alloca on and input and output.

 Applica on so ware

So ware that performs specific tasks or provides features that extend beyond the basic func oning
of a computer. Examples include word processors, spreadsheet programs, and database programs.

 So ware components

Some common types of so ware components include:

 Applica on Programming Interfaces (APIs)

 Libraries

 Frameworks

 Services

 Modules

 Plugins

 Widgets

 Controls

A computer system is made up of two major components: hardware and so ware. Hardware is the
physical technology that works with informa on, while so ware tells the hardware what to do.
g) explain in brief about so ware engineering.

Ans- So ware Engineering is the process of designing, developing, tes ng, and maintaining
so ware. It is a systema c and disciplined approach to so ware development that aims to create
high-quality, reliable, and maintainable so ware.

1. So ware engineering includes a variety of techniques, tools, and methodologies, including


requirements analysis, design, tes ng, and maintenance.

2. It is a rapidly evolving field, and new tools and technologies are constantly being developed
to improve the so ware development process.

3. By following the principles of so ware engineering and using the appropriate tools and
methodologies, so ware developers can create high-quality, reliable, and maintainable
so ware that meets the needs of its users.

4. So ware Engineering is mainly used for large projects based on so ware systems rather than
single programs or applica ons.

5. The main goal of So ware Engineering is to develop so ware applica ons for improving
quality, budget, and me efficiency.

6. So ware Engineering ensures that the so ware that has to be built should be consistent,
correct, also on budget, on me, and within the required requirements.

i) explain requirement elaboracion in details.

Ans- Requirement elabora on in so ware engineering is the process of refining requirements that
have been gathered. It is one of the steps in the requirements engineering process, which involves
formalizing and defining needs throughout the system design process.

Here are some other steps in the requirements engineering process:

 Requirements elicita on

The process of discovering and researching the requirements of a system from stakeholders, such as
customers and users.

 Nego a on

The process of determining the priori es of each requirement, iden fying essen al requirements,
and resolving conflicts between requirements.

 Requirements valida on

The process of ensuring that the specified requirements meet the needs of the customers.

 Requirements management

The process of gathering, analyzing, verifying, and valida ng the requirements for a system or
product.
h) what is coupling? Give the types of coupling.

Ans- Coupling in So ware Engineering is a part of So ware Requirement Specifica on (SRS)


documenta on. It defines the factors of dependency and independence of each so ware module
with other modules. It serves as an indicator of interdependency among the modules. The lower the
coupling value will be, the higher the quality of the so ware will be. The name coupling is applied for
this process, as it is typically deliberated between two modules at a me. The first step in the
coupling process is to evaluate the associa on between the two modules and define the func onally
dependent areas in the modules.

 Common Coupling

 Content Coupling

 Data Coupling

 Control Coupling

 Stamp Coupling

 External

Types of Coupling : These are following types of coupling –

1. Data Coupling – Data coupling simply means the coupling of data i.e. interac on between
data when they are passed through parameters using or when modules share data through
parameters. When data of one module is shared with other modules or passed to other
modules, this condi on is said to be data coupling.

2. Control Coupling – Control coupling simply means to control data sharing between modules.
If the modules interact or connects by sharing controlled data, then they are said to be
control coupled. The controlled coupling means that one module controls the flow of data or
informa on by other modules by them the informa on about what to do.

3. Common Coupling – Common coupling simply means the sharing of common data or global
data between several modules. If two modules share the informa on through global data
items or interact by sharing common data, then they are said to be commonly coupled.

4. Content Coupling – Content coupling simply means using of data or control informa on
maintained in other modules by one module. This coupling is also known as pathological
coupling. In these coupling, one module relies or depends upon the internal workings of
another module. Therefore, if any changes have to be done in the inner working of a module
then this will lead to the need for change in the dependent module.

5. Stamp Coupling – Stamp coupling simply means the sharing of composite data structure
between modules. If the modules interact or communicate by sharing or passing day
structure that contains more informa on than the informa on required to perform their
ac ons, then these modules are said to be stamp coupled.

6. External Coupling – The external coupling means the sharing of data structure or format that
are imposed externally between the modules. External coupling is very important but there
should be a limit also. It should be limited to less number of modules with structures.
i) explain requirement elaboracion in details.

Ans- Requirement elabora on in so ware engineering is the process of refining requirements that
have been gathered. It is one of the steps in the requirements engineering process, which involves
formalizing and defining needs throughout the system design process.

Here are some other steps in the requirements engineering process:

 Requirements elicita on

The process of discovering and researching the requirements of a system from stakeholders, such as
customers and users.

 Nego a on

The process of determining the priori es of each requirement, iden fying essen al requirements,
and resolving conflicts between requirements.

 Requirements valida on

The process of ensuring that the specified requirements meet the needs of the customers.

 Requirements management

The process of gathering, analyzing, verifying, and valida ng the requirements for a system or
product.
Q5.

A)RAD.

Ans- The RAD model or Rapid Applica on Development model is a type of so ware development
methodology that emphasizes quick and itera ve release cycles, primarily focusing on delivering
working so ware in shorter melines. Unlike tradi onal models such as the Waterfall model, RAD is
designed to be more flexible and responsive to user feedback and changing requirements
throughout the development process.

1. Requirements Planning – This involves the use of various techniques used in requirements
elicita on like brainstorming, task analysis, form analysis, user scenarios, FAST (Facilitated
Applica on Development Technique), etc. It also consists of the en re structured plan
describing the cri cal data, methods to obtain it, and then processing it to form a final
refined model.

2. User Descrip on – This phase consists of taking user feedback and building the prototype
using developer tools. In other words, it includes re-examina on and valida on of the data
collected in the first phase. The dataset a ributes are also iden fied and elucidated in this
phase.

3. Construc on – In this phase, refinement of the prototype and delivery takes place. It
includes the actual use of powerful automated tools to transform processes and data models
into the final working product. All the required modifica ons and enhancements are to be
done in this phase.

4. Cutover – All the interfaces between the independent modules developed by separate teams
have to be tested properly. The use of powerfully automated tools and subparts makes
tes ng easier. This is followed by acceptance tes ng by the user.

b) so ware maintenance.

Ans- So ware maintenance is a con nuous process that occurs throughout the en re life cycle of the
so ware system.

 The goal of so ware maintenance is to keep the so ware system working correctly,
efficiently, and securely, and to ensure that it con nues to meet the needs of the users.

 This can include fixing bugs, adding new features, improving performance, or upda ng the
so ware to work with new hardware or so ware systems.

 It is also important to consider the cost and effort required for so ware maintenance when
planning and developing a so ware system.

 It is important to have a well-defined maintenance process in place, which includes tes ng


and valida on, version control, and communica on with stakeholders.

 It’s important to note that so ware maintenance can be costly and complex, especially for
large and complex systems. Therefore, the cost and effort of maintenance should be taken
into account during the planning and development phases of a so ware project.

 It’s also important to have a clear and well-defined maintenance plan that includes regular
maintenance ac vi es, such as tes ng, backup, and bug fixing.
c) feasibility study.

Ans- feasibility study in so ware engineering:

1. Technical Feasibility: This aspect assesses whether the proposed so ware project is
technically possible with the available technology, resources, and exper se. It considers
so ware development tools, hardware requirements, integra on with exis ng systems, and
poten al technical challenges.

2. Opera onal Feasibility: Opera onal feasibility evaluates whether the so ware will fit
smoothly into the organiza on's exis ng processes and whether users can adapt. It considers
factors like user training, change management, and the impact on daily opera ons.

3. Economic Feasibility: This part of the study focuses on the financial aspects of the project. It
includes a cost-benefit analysis to determine if the project is economically viable. This
analysis involves es ma ng the development costs, maintenance costs, poten al benefits,
and return on investment (ROI). It helps stakeholders understand whether the project is
financially jus fied.

4. Scheduling Feasibility: Scheduling feasibility assesses whether the project can be completed
within the required meframe. It considers factors like project scope, resource availability,
and poten al risks that might impact the project schedule.

5. Legal and Regulatory Feasibility: This examines whether the proposed so ware project
complies with legal and regulatory requirements. It may involve data privacy, intellectual
property rights, and industry-specific regula ons.

6. Market Feasibility (if applicable): For commercial so ware projects, market feasibility
examines whether there is a demand for the proposed so ware in the target market. It
involves market research, compe on analysis, and poten al market adop on.

e) types of cohesion.

Ans- Some types of cohesion in so ware engineering include:

 Func onal cohesion

This is when a module's elements are grouped together to accomplish a single, well-defined
purpose. It's considered the highest type of cohesion.

 Sequen al cohesion

This is when the output of one part of a module is used as the input for another part. For example, a
data processing module that reads, processes, and writes data sequen ally.

 Procedural cohesion

This is when a module's methods are grouped together based on the order in which they are
executed. For example, a RemoteMessageSender class that invokes a ping method before sending a
message to ensure the host is alive.

 Communica onal cohesion

This is when mul ple elements in a module operate on the same input data and produce the same
output data.
f) valida on and verifica on tes ng.

Ans- erifica on and Valida on is the process of inves ga ng whether a so ware system sa sfies
specifica ons and standards and fulfills the required purpose. Barry Boehm described verifica on
and valida on as the following:

Verifica on: Are we building the product right?

Valida on: Are we building the right product?

Verifica on

Verifica on is the process of checking that so ware achieves its goal without any bugs. It is the
process to ensure whether the product that is developed is right or not. It verifies whether the
developed product fulfills the requirements that we have. Verifica on is simply known as Sta c
Tes ng.

Sta c Tes ng

Verifica on Tes ng is known as Sta c Tes ng and it can be simply termed as checking whether we
are developing the right product or not and also whether our so ware is fulfilling the customer’s
requirement or not. Here are some of the ac vi es that are involved in verifica on.

 Inspec ons

 Reviews

 Walkthroughs

 Desk-checking

Verifica on and Valida on

Valida on

Valida on is the process of checking whether the so ware product is up to the mark or in other
words product has high-level requirements. It is the process of checking the valida on of the product
i.e. it checks what we are developing is the right product. it is a valida on of actual and expected
products. Valida on is simply known as Dynamic Tes ng.

Dynamic Tes ng

Valida on Tes ng is known as Dynamic Tes ng in which we examine whether we have developed the
product right or not and also about the business needs of the client. Here are some of the ac vi es
that are involved in Valida on.

1. Black Box Tes ng

2. White Box Tes ng

3. Unit Tes ng

4. Integra on Tes ng
i) system tes ng.

Ans- System Tes ng is a type of so ware tes ng that is performed on a completely integrated
system to evaluate the compliance of the system with the corresponding requirements. In system
tes ng, integra on tes ng passed components are taken as input.

 The goal of integra on tes ng is to detect any irregularity between the units that are
integrated. System tes ng detects defects within both the integrated units and the whole
system. The result of system tes ng is the observed behavior of a component or a system
when it is tested.

 System Tes ng is carried out on the whole system in the context of either system
requirement specifica ons or func onal requirement specifica ons or the context of both.
System tes ng tests the design and behavior of the system and also the expecta ons of the
customer.

 It is performed to test the system beyond the bounds men oned in the so ware
requirements specifica on (SRS) . System Tes ng is performed by a tes ng team that is
independent of the development team and helps to test the quality of the system impar al.

 It has both func onal and non-func onal tes ng. System Tes ng is a black-box tes ng .
System Tes ng is performed a er the integra on tes ng and before the acceptance tes ng.

j) McCall’s quality factors.

Ans- This model classifies all so ware requirements into 11 so ware quality factors. The 11 factors
are grouped into three categories – product opera on, product revision, and product transi on
factors.

 Product opera on factors − Correctness, Reliability, Efficiency, Integrity, Usability.

 Product revision factors − Maintainability, Flexibility, Testability.

 Product transi on factors − Portability, Reusability, Interoperability.

k) requirement gathering.

Ans- Requirements gathering is a crucial phase in the so ware development life cycle (SDLC) and
project management. It involves collec ng, documen ng, and managing the requirements that
define the features and func onali es of a system or applica on. The success of a project o en
depends on the accuracy and completeness of the gathered requirements in so ware.

l) prototype model.

Ans- The Prototyping Model is one of the most popularly used So ware Development Life Cycle
Models (SDLC models). This model is used when the customers do not know the exact project
requirements beforehand. In this model, a prototype of the end product is first developed, tested,
and refined as per customer feedback repeatedly ll a final acceptable prototype is achieved which
forms the basis for developing the final product.
M) structure Chart.

Ans- Structure Chart par ons the system into black boxes (func onality of the system is known to
the users, but inner details are unknown).

1. Inputs are given to the black boxes and appropriate outputs are generated.

2. Modules at the top level are called modules at low level.

3. Components are read from top to bo om and le to right.

4. When a module calls another, it views the called module as a black box, passing the required
parameters and receiving results.

d) spiral model.

Ans- The spiral model, ini ally proposed by Boehm, is an evolu onary so ware process model that
couples the itera ve feature of prototyping with the controlled and systema c aspects of the linear
sequen al model. It implements the poten al for rapid development of new versions of the
so ware. Using the spiral model, the so ware is developed in a series of incremental releases.
During the early itera ons, the addi onal release may be a paper model or prototype. During later
itera ons, more and more complete versions of the engineered system are produced.

You might also like