6. Software Process Model [Most Important Questions and Solutions]
IMPORTANT OLD QUESTION OF software
Process Model
2070 Supp Q. No. 6 Explain SDLC with appropriate
diagram. [5]
2072 Set C Q. No. 6 Describe SDLC with diagram.
[5]
2073 Supp Q. No. 6 Explain the system development
phase. [5]
SDLC involves a series of phases (Stages/Steps), each
with specific goals as follows:
1. Planning: The goal of this phase is to
Define the project scope, identify requirements, and create a solid project
plan.
2. System Analysis: The goal of this phase is
to Carefully understand the user requirements and system needs.
3. System Design: The goal of this phase is
to Create a blueprint for the software, outlining its architecture, components,
and user interface.
4. Development (Implementation): The goal of
this phase is to Translate the design into actual code.
5. Testing: The goal of this phase is to
Identify and fix bugs to ensure software quality.
6. Deployment: The goal of this phase is to
Release the software to the production environment.
7. Maintenance: The goal of this phase is to
Keep the software up-to-date and functioning optimally.
2075 GIE Q. No. 6 Explain system analysis phase
of SDLC. [5]
2074 Supp Q. No. 6 List the steps of SDLC.
Explain System Analysis Phase. [2+3]
2071 Set C Q. No. 6 What is system analysis and
design? Describe briefly. [5]
2075 Set B Q. No. 6 List out different stages of
system development life cycle and explain any two stages of them. [1+2+2]
2074 Set B Q. No. 6 What are the software
development process phases in SDLC? Explain any one phase. [2+3]
2079 Set A Q.No.8 What are the major activities
performed to design the software? Describe briefly. [5]
Ans:
The Software Development Life Cycle (SDLC) is
structured and systematic approach used by software development teams to plan,
design, develop, test, deploy, and maintain software applications. It ensures
software is built efficiently, correctly, and meets user requirements.
The steps of SDLC (Software Development Life Cycle) are:
1. Planning
2. System Analysis
3. System Design
4. Development (Implementation):
5. Testing
6. Deployment
7.Maintenance
2. System Analysis Phase:
The System Analysis phase is a crucial phase in software
development that determines what the system needs to do to meet business
objectives. It sets the foundation for a successful project by understanding
requirements, checking feasibility, and planning solutions. The major
activities performed during software analysis are:
1. Requirement Gathering: Understands user needs and
expectations clearly.
2. Feasibility Study: Checks if the project is possible
technically, financially, and operationally.
3. System Modelling: Creates diagrams like Data Flow
Diagrams (DFDs) and Entity-Relationship Diagrams (ERDs) to show system
processes visually.
4. Problem Identification: Analyses current system
problems and suggests improvements.
5. Documentation: Records all findings and requirements
for future reference and development.
This phase ensures that developers and stakeholders have
a clear understanding of what needs to be built before moving to design and
implementation.
3. System Design Phase:
The System Design phase of SDLC focuses on defining the
architecture, components, and user interface of the system based on the
requirements gathered in the System Analysis phase. It acts as a blueprint for
the development process. The major activities performed during software design
are:
1. High-Level Design (HLD): Defines the overall system
structure, including modules, databases, interfaces, and data flow.
2. Low-Level Design (LLD): Gives detailed design of each
module, such as algorithms, functions, and database structures.
3. Database Design: Decides how data will be stored,
organized, and accessed.
4. User Interface (UI) Design: Creates screen layouts and
wireframes for user interaction.
5. Security and Performance Planning: Plans
authentication, encryption, and system efficiency.
6. Design Documentation: Records all design details for
developers and stakeholders.
This phase ensures that the system is well-structured,
scalable, and meets business requirements before moving to the Implementation
(Coding) phase.
2076 GIE Set B Q.No.6 What
are the importances of SDLC in software development process? [5]
2073 Set D Q. No. 7 Write the importance and
necessity of SDLC. [5]
2072 Set E Q. No. 13 Write the importance of
SDLC. [5]
Ans:
The Software Development Life Cycle (SDLC) is important
because it provides a structured and systematic approach to software
development, ensuring the project is completed efficiently, accurately, and
within time and budget.
The importances of SDLC in software development process
and necessity come from the following key benefits:
1. Structured Development: SDLC divides software
development into steps (planning, design, coding, testing, deployment,
maintenance), making it easier and organized.
2. Better Planning and Resource Use: It helps
manage time, money, and resources properly, avoiding delays and extra costs.
3. Improved Quality and Risk Management: Testing
at every stage finds errors early and reduces problems, making the software
better.
4. Clear Roles and Responsibilities: Everyone
knows their job, which improves teamwork and communication.
5. Flexibility with Different Models: SDLC
supports different methodologies like Waterfall, Agile, Spiral, allowing teams
to choose the best approach based on project needs.
6. Maintenance and Updates: Makes it easier to
update or improve software after deployment.
In conclusion, SDLC is important because it
ensures software is developed systematically, meets user requirements,
maintains quality, and is delivered on time and within budget.
2078 NEB Model Q.No. 13 What are the different
stages of software planning? Describe.
Ans: Software planning is a crucial phase
in software development that ensures a structured approach to building a
successful system. The key stages of software planning are as follows:
1. Requirement Analysis: Understanding user needs,
gathering functional and non-functional requirements, and documenting them.
2. Feasibility Study: Evaluating technical,
financial, and operational feasibility to determine if the project is viable.
3. Project Planning: Defining project scope,
objectives, timelines, resources, and risk management strategies.
4. Software Architecture & Design: Creating
system architecture, choosing technology stack, and designing the software
structure.
5. Resource Allocation: Assigning tasks, defining
roles, and allocating budget, time, and workforce.
6. Risk Management: Identifying potential risks,
assessing their impact, and developing mitigation strategies.
7. Scheduling & Timeline Estimation: Setting
deadlines, creating a development roadmap, and estimating completion time.
2081 GIE Set A Q.No. 13 How does the System
Development Life Cycle (SDLC) facilitate the efficient planning and execution
of software development projects?
Ans:
The System Development Life Cycle (SDLC) facilitates
efficient planning and execution of software development projects by providing
a structured, step-by-step approach to software creation. It ensures that
projects are completed on time, within budget, and with high quality. Here’s
how SDLC helps:
Write
importances of SDLC from 2076 GIE Set B Q.No.6
2081 GIE Set B Q.No. 13 Explain the importance of
the system analysis phase of SDLC.
Ans: The System Analysis phase of SDLC is
important because it sets the foundation for a successful project by
understanding requirements, checking feasibility, and planning solutions.
Below are the key reasons why system analysis is
important:
1. Understanding Requirements: Collects and
defines what the system must do, ensuring stakeholders’ needs are clear.
2. Feasibility Study: Checks if the project is
possible technically, financially, and operationally before starting.
3. Identifying Problems and Solutions: Examines
the current system to find issues and design better solutions.
4. Defining System Scope: Sets clear boundaries
for the system to avoid extra work, delays, or cost overruns.
5. Reducing Risks: Finds potential risks early and
ensures legal, security, and performance standards are met.
6. Helping System Design: Provides a clear plan
for the design phase, making development efficient and scalable.
2079 GIE Set B Q.No.13 Explain requirement
analysis phase of SDLC. [5]
Ans:
The Requirement Analysis phase in the Software
Development Life Cycle (SDLC) is a crucial stage where the primary goal is to
gather, analyse, and document the requirements for the software being
developed. Here's a breakdown of this phase:
1) Identify Stakeholders: Determine all
individuals or groups involved in or affected by the software system.
2) Gather Requirements: Collect detailed
functional and non-functional requirements from stakeholders using various
techniques.
3) Document Requirements: Record the gathered
requirements in a structured format, usually in a Software Requirements
Specification (SRS) document.
4) Analyse and Prioritize Requirements: Evaluate
requirements for feasibility, resolve conflicts, and prioritize them based on
importance.
5) Define System Specifications: Establish clear
system specifications, including technical, security, and compliance needs, to
guide development.
In conclusion, the Requirement Analysis phase
ensures that the development team understands what needs to be built, aligning
the software with the business objectives and user needs, laying a solid
foundation for the rest of the SDLC.
2078 Set C Q.No.6 What is feasibility study?
Explain. [5]
2072 Set E Q. No. 6 2070 Set C Q. No. 6 2068 Q. No. 5
2067 Q. No. 5 2064 Q. No. 9 2062 Q. No. 5 What is feasibility study?
Explain different levels of feasibility study. [2+3]
2071 Supp / 2060 / 2061) What is feasibility
study? Why is it necessary before designing a system? [2+3=5]
2071 Set D Q. No. 6 Describe
different levels of feasibility study. [5]
2072 Set D Q. No. 6 Describe the components of
feasibility study. [5]
Ans:
A feasibility study is an analysis conducted to determine
whether a proposed project or system is practical, viable, and worth doing. It
is performed in the initial stage of the Software Development Life Cycle (SDLC)
to ensure that resources, time, and technology are sufficient for successful
project completion.
It aims to determine whether the project is likely to
succeed by evaluating various factors (level/types/components) as
follows:
1. Technical Feasibility: Examines whether the
organization has the required technology, tools, and expertise to develop and
implement the system.
2. Economic Feasibility (Cost-Benefit Analysis):
Compares the costs of developing the system with the benefits it will provide.
It determines if the project is financially worthwhile.
3. Operational Feasibility: Checks if the system
will operate effectively within the organization’s environment.
4. Schedule Feasibility: Evaluates whether the
project can be completed within the planned timeframe.
5. Legal Feasibility: Ensures the project follows
all laws, regulations, and policies. It prevents legal issues after system
deployment.
Some benefits of a Feasibility Study are as follows:
1. Informed Decision-Making: It helps
management make informed decisions regarding the viability and implementation
of the project.
2. Risk Mitigation: It identifies potential
risks and problems early, allowing preventive measures to be planned.
3. Resource Allocation: It ensures optimal
allocation of resources, including time, money, and manpower.
4. Improved Project Planning: It provides a
strong foundation for scheduling, budgeting, and organizing project activities.
5. Enhanced Stakeholder Confidence: It
builds trust and support among stakeholders by demonstrating the project’s
feasibility.
6. Increased Project Success Rate: By analyzing
all critical factors in advance, it improves the chances of completing the
project successfully.
2076 Q. No. 6 Define SDLC. Describe the
feasibility analysis methods. [2+3]
Ans: The Software Development Life
Cycle (SDLC) is structured and systematic approach used by software
development teams to plan, design, develop, test, deploy, and maintain software
applications. It ensures software is built efficiently, correctly, and meets
user requirements. The steps of SDLC are:
1. Planning
2. Analysis
3. Design
4. Development (Implementation):
5. Testing
6. Deployment
7.Maintenance
Feasibility analysis methods are techniques used
to determine whether a proposed project or system is practical, workable, and
worth implementing. Main Methods of Feasibility Analysis are as follows:
Write
different levels of feasibility study from 2071 Set D Q. No. 6
2079 GIE Set A Q.No.13 Explain the importance of
the system testing of the system development life cycle (SDLC).
Below are the key reasons why system testing is
important:
1. Detects Errors Early: Finds bugs, defects, or
errors before the system is released to users.
2. Verifies Requirements: Ensures the software
meets all functional and non-functional requirements.
3. Improves Quality: Confirms that the system is
reliable, secure, and performs well under expected conditions.
4. Reduces Risks: Minimizes the chances of system
failure, financial loss, or user dissatisfaction.
5. Validates Integration: Checks that all
components of the system work together correctly.
6. Supports User Acceptance: Builds confidence
that the system will function properly in the real environment.
In conclusion, System testing is important
because it ensures the software works correctly, meets requirements, is
reliable, and reduces risks before deployment.
2081 Q.No.13 How do various requirement gathering
techniques help in achieving a careful grasp of user needs and requirements
during SDLC’s analysis phase?
Ans: During the analysis phase of SDLC,
requirement gathering techniques play a vital role in achieving a clear and
careful understanding of user needs. Each technique contributes differently,
and together they reduce misunderstanding and project risk. Various
requirement-gathering techniques help achieve a careful grasp of user needs and
requirements during the analysis phase of the Software Development Life Cycle
(SDLC) in the following ways:
1. Interviews help analysts directly understand
user expectations, problems, and priorities.
2. Questionnaires/Surveys collect information from
many users quickly, giving a broader view of requirements.
3. Observation allows analysts to see real work
processes, helping discover hidden or unstated needs.
4. Workshops/Group Discussions bring stakeholders
together to clarify requirements, resolve conflicts, and reach agreement.
5. Document Analysis studies existing systems and
records to understand current operations and constraints.
6. Prototyping shows a sample system to users,
allowing early feedback and correction of misunderstandings.
7. Brainstorming encourages creative ideas and
helps identify additional features or improvements.
2082 / 2080 GIE Set A Q.No.13 What is Requirement
Gathering? Describe the different requirement gathering methods for the
development of software.
Ans:
Requirement gathering (also called requirement
elicitation) is the process of collecting, understanding, and documenting user
needs before designing and developing software. It ensures the system meets
business goals and user expectations. Here are some effective methods for
collecting requirements:
1. Interviews: Conduct one-on-one or group
interviews with stakeholders, end-users, and clients to gather detailed
information and understand their needs and expectations.
2. Surveys and Questionnaires: Distribute
structured surveys or questionnaires to a larger audience to gather
information.
3. Workshops: Organize collaborative workshops
with stakeholders to discuss and prioritize requirements.
4. Observation: Observe users in their natural
work environment to understand their workflows and identify potential
improvements.
5. Prototyping: Develop prototypes or mock-ups of
the proposed system to gather feedback from users.
6. Document Analysis: Review existing
documentation such as manuals, system specifications, and reports to extract
relevant information.
7. Use Cases and User Stories: Create detailed use
cases or user stories to describe how users will interact with the system.
8. Brainstorming: Conduct brainstorming sessions
to generate ideas and requirements with a group of stakeholders.
2078 Set B Q.No.13 Describe the waterfall
software development model with pros and cons. [5]
2074 Set A Q. No. 6 Describe the waterfall model
to explain the SDLC. [5]
2073 Set C Q. No. 6 What are the major activities
in SDLC with based on waterfall model? [5]
Ans:
The Waterfall Model is a linear and sequential approach
to software development, where each phase of the development process 1 must be
completed before moving on to the next 2 one. It's like a waterfall, where the
water flows steadily downwards through different stages.
Phases of the Waterfall Model:
1. Requirements Gathering and Analysis: The
project's goals, scope, and requirements are defined.
2. Design: The system's architecture,
components, and interfaces are designed.
3. Implementation (Coding): The software is
developed based on the design.
4. Testing: The software is rigorously tested
to identify and fix bugs.
5. Deployment: The software is released to the
end-users.
6. Maintenance: Ongoing support and maintenance
of the software.
Advantages of Waterfall Model:
a) Simple
and easy to understand.
b) Clear
structure with well-defined stages.
c) Easy
to manage due to proper documentation.
d) Suitable
for small projects with fixed requirements.
Disadvantages of Waterfall Model:
a) Difficult
to make changes once a phase is completed.
b) Not
suitable for projects with changing requirements.
c) Testing
is done at the end, so errors may be discovered late.
d) Less
customer involvement during development.
Most IMP Q) Explain the prototype software development
methodology in brief.
Ans: The Prototype Software Development Methodology is a system
development approach in which a working model (prototype) of the system is
created first to understand user requirements. The prototype is refined
repeatedly based on user feedback until the final system is developed.
Steps in Prototype Model are as follows:

1. Requirement
Gathering: Basic requirements of the system are collected from users.
2. Quick
Design: A simple design of the system is prepared.
3. Build
Prototype: A working model of the system is developed.
4. User
Evaluation: Users test the prototype and provide feedback.
5. Refinement:
The prototype is improved based on feedback. This process continues until users
are satisfied.
6. Final
System Development: After approval, the final system is developed and
implemented.
Advantages of Prototype Model:
a) Helps
in understanding user requirements clearly.
b) Reduces
development risk and errors.
c) Encourages
user involvement.
d) Improves
system quality.
Disadvantages of Prototype Model:
a) May
increase development cost and time.
b) Users
may think the prototype is the final system.
c) Frequent
changes may create confusion.
2082 GIE / 2080 GIE Set B) Explain the agile software
development methodology in brief.
Ans: Agile Software Development is an
iterative and incremental approach where software is built in small parts with
continuous customer involvement. It focuses on flexibility, teamwork, and
regular delivery of working software, making it suitable for projects where
requirements change frequently.
Core Principles of Agile (as per the Agile Manifesto)
are as follows:
1. Customer
Collaboration: Customers are involved regularly to confirm requirements.
2. Working
Software: Functional software is delivered frequently in short cycles.
3. Individuals
and Interactions: Team communication is valued more than rigid processes.
4. Responding
to Change: Changes in requirements are accepted even late in development.

Advantages:
a) Ensures
faster delivery of software.
b) Adapts
easily to changing requirements.
c) Improves
customer satisfaction.
d) Encourages
effective communication and teamwork.
Disadvantages:
a) Requires
active involvement of customers.
b) Difficult
to estimate total cost and completion time.
c) May
not be suitable for large projects with fixed requirements.
2078 Set B Q.No.7 Describe the desirable
characteristics of a system analyst. [5]
2072 Set D Q. No. 7 Who is system analyst? List
out characteristics of system analyst. [1+4]
Ans: A System Analyst is a
professional who analyses and designs information systems to meet the needs of
an organization, acting as a bridge between stakeholders and the technical
development team.
The desirable characteristics of a system analyst are as
follows:
1. Analytical Skills: The ability to analyse
complex systems, identify inefficiencies, and translate business requirements
into technical solutions.
2. Communication Skills: Strong verbal and written
communication to interact with stakeholders and convey technical details
effectively.
3. Documentation Skills: The capability to create
clear and detailed documentation for system requirements, workflows, and
project reports.
4. Problem-Solving Skills: The skill to identify
issues in systems and develop efficient, scalable, and secure solutions.
5. Collaboration Skills: The ability to work with
diverse teams, coordinate efforts, and align stakeholders with project
objectives.
In conclusion, a system analyst must possess a
combination of analytical, communication, documentation, problem-solving, and
collaboration skills to effectively analyse, design, and implement efficient
systems.
2076 Set A Q.No.8 What are roles of system
analyst in SDLC phase? [5]
2075 Set B Q. No. 7 Describe the major role and
responsibility of system analyst in SDLC phase. [5]
2075 Set A Q. No. 6 2073 Set D Q. No. 6 2065 Q. No.
5 Who is system analyst? Explain the role of system analyst. [1+4]
Ans: A System Analyst is a
professional who analyses and designs information systems to meet the needs of
an organization, acting as a bridge between stakeholders and the technical
development team.
Role and responsibilities of a System Analyst in SDLC
phases are as follows:
1. Requirement Gathering and Analysis: Gather,
analyse, and document stakeholder requirements.
2. Feasibility Study: Evaluate technical,
economic, and operational feasibility.
3. System Design: Create detailed design
documents, including architecture and data models.
4. Communication and Coordination: Act as a
liaison between stakeholders and the development team.
5. Documentation: Prepare comprehensive
documentation, including requirements and user manuals.
6. Validation and Verification: Ensure the system
meets specified requirements and functions as intended.
7. Support and Maintenance: Provide ongoing
support and maintenance after deployment.
8. Change Management: Manage changes in
requirements and scope during the project.
2075 GIE / 2075 Set A / 2073 Supp) Define the terms
DFD and E-R diagram.
Ans:
1. Data Flow Diagram (DFD):
A Data Flow Diagram (DFD) is a graphical representation used to model how data
moves through a system and how it is processed. It focuses on the flow of data
between processes, data stores, and external entities.
Purpose:
The main purpose of a DFD is to illustrate how data enters the system, how it
is transformed by processes, and how it is stored or sent to external entities.
Focus:
It shows internal processes, data storage, and interactions with external
entities.
Key Components:
a) Processes: Processes represent actions that transform
incoming data into output data. They are usually represented by circles or
rounded rectangles.
b) Data Flow: Data flow is shown by arrows indicating the
direction in which data moves within the system.
c) Data Stores: Data stores represent places where data
is stored. They are shown as open rectangles.
d) External Entities: External entities are the sources
or destinations of data, such as users or other systems. They are represented
by rectangles.

Level of Detail:
A DFD can be divided into multiple levels, such as Level 0 (Context Diagram)
and Level 1, to provide more detailed information about system processes.
2. Entity-Relationship Diagram (ERD):
An Entity-Relationship Diagram (ERD) is a graphical representation used to
describe the data structure and relationships between entities in a database
system.
Purpose:
The purpose of an ERD is to design and organize the structure of a database by
identifying entities and their relationships.
Focus:
It focuses on representing entities and the relationships among them for
database design.
Key Components:
a) Entities: Entities represent real-world objects or
concepts, such as Customer or Order.
b) Attributes: Attributes are the properties or
characteristics of an entity, such as Customer Name or Order Date.
c) Relationships: Relationships define how entities are
connected to each other, such as "Customer places Order."
d) Primary Keys: A primary key is a unique identifier
used to distinguish each instance of an entity.
Level of Detail:
An ERD provides a detailed view of how data is structured and organized within
a system, mainly for database design purposes.
2075 Set B) What is E-R diagram? Write the meaning of
graphical symbols used in E-R diagram. [5]
Ans:
An E-R (Entity-Relationship) Diagram is a graphical
representation of entities, their attributes, and the relationships between
them in a database. It is widely used in database design to visualize the
structure of a system before implementing it.
The meaning of graphical symbols used in E-R diagram are
as follows in tabular form:
2079 NEB Model Q.No. 13 Write down any five
qualities of good software.
Ans:
Software quality refers to how well a software system
meets specified requirements, user needs, and expectations. High-quality
software is reliable, efficient, secure, and easy to use. Five qualities of
good software are as follows:
1. Reliability: The software should function correctly
and consistently under different conditions without failures.
2. Maintainability: It should be easy to modify, update,
and debug the software to fix issues or enhance functionality.
3. Efficiency: The software should use system resources
(CPU, memory, disk, etc.) optimally for better performance.
4. Usability: It should have a user-friendly interface
and be easy to learn and operate.
5. Security: The software should protect data and user
information from unauthorized access and threats.
6. Scalability: It should be able to handle increased
workload or users without performance issues.
7. Portability: The software should work across different
platforms and environments with minimal modifications.
Asmita Sample Model Q) What is system testing? Explain
different types of testing techniques during system development.
Ans: System testing is a phase in the
Software Development Life Cycle (SDLC) where the complete system is tested to
ensure it works according to requirements. It is important because it helps
deliver reliable, error-free, and high-quality software.
Types of Software Testing are as follows:
1. Unit Testing:
It tests individual modules or components of a program to ensure each part
works correctly.
2. Integration Testing:
It tests the interaction between combined modules to check whether they
function together properly.
3. System Testing:
It tests the complete system as a whole to verify that it meets all functional
and non-functional requirements.
4. Acceptance Testing:
It is performed by users or clients to confirm that the system is ready for
delivery.
Ø
Alpha Testing (by developers)
Ø
Beta Testing (by real users)
5. Black Box and White Box Testing:
Ø
Black Box Testing: Focuses on input and
output without knowing internal code.
Ø
White Box Testing: Examines internal
logic and program structure.





0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home