Software Process Model - CS Study Hub

Latest

Thursday, November 20, 2025

Software Process Model

 

Unit 6: Software Process Model (SPM)

Software Project Concept

Software:

Software is a set of programs, procedures, and routines which enable the users to perform some particular specific task and actually use to operate the computer. It directs all of the peripheral devices on the entire computer system, what exactly to do and how exactly to perform a task.

 

System:

System is a set of interacting or interdependent components forming an integrated whole. A system can be described as a set of objects joined together for a common objective.

 

Project:

A project is a planned task with a clear goal and deadline, usually done by a group of people working together. It's like a mission with a plan and a team to achieve it.

 

Software Project:

A software project is the complete procedure of software development from requirement identification to testing and maintenance, carried out according to the execution methodologies, in a specified period of time and budget in order to achieve intended software product.


Information system:

The system which accepts data as Input, process it to generate the information and provides the information to the user as output is the information system. The information system is interrelated components working together to collect data, process it, give output and store using the resources of hardware, software, people, procedure & controlling mechanism.

It helps to support decision making, coordination, control, analysis and visualization in an organization. The major objective of an information system is to provide information on timely basis throughout the organization. So that top level management can make proper decisions and take appropriate courses of action in time.

Types of the information system

In an organization, there are various types of operations that take place. Several operations require several information systems for the effective management of an organization. Senior managers need information to help with the business planning. Middle management need more detailed information to help them monitor and control business activities. Employees with operational roles need information to help them carry out their duties. Hence, business organizations tend to have several information systems operating at the same time. The several information systems are:

Different levels of Information system



1) Transaction processing system (TPS): A TPS is a basic business system which serves the most elementary day-to-day activities of an organization. It supports the operational level of the business that supplies data for higher level management for decisions. A TPS also collects and stores information about transaction and controls some expect of transactions, which includes the collection, modification and retrieving of all transaction data. TPS is also known as real time processing. For example, billing system to send invoices to customers, inventory management system to keep record of purchase, sales and stock.

 

2) Management Information system (MIS): Management information system provides information to managers of an organization which helps them to organize, evaluate and efficiently manage departments within an organization. It is primarily intended for providing information from the data after processing it. The data are generated, collected, recorded, stored, processed and retrieved by MIS after it has been generated by business operation or TPS in an organization. It is the system that provides the information necessary to manage and organization effectively. It has large quantity of input data obtained from TPS and produce summary report as an output. It is used by middle level management. For example, annual budgeting system, auditing system etc

 

3) Decision Support system (DSS): It is a computer-based application that collects, organizes, and analyzes business data to facilitate quality business decision making for management, operation and planning. This system aid decision maker in compiling a variety of data from data from many sources. DSS analysis helps companies to identify and solve problems and make decisions. It is created to help people to make decisions by providing access to information and analysis tools. It supports the decision process so managers can make simulation and prediction. DSS allows users to use different option and find out what the outcome would be so that proper action con be identified. DSS is flexible, adaptable and quick.

 

4) Executive support system: It is also known as executive information system. It is a decision support system used to assist senior executives in the decision-making process. It does this by providing easy access to important data needed to achieve strategic goals in on organization. ESS normally features graphical display on an easy-to-use interface. ElS can be used in many different types of organization to monitor enterprise performance as well as to identify opportunities and problems.

 

Software Development Process

The software development process is a structured way of creating software through stages like planning, designing, coding, testing, and deployment. Its purpose is to deliver a high-quality and reliable product while managing time and resources well.

Software development process defines a sequence of tasks that must be carried out to build new software.

·       It groups the development activities into a sequence of phases.

·       A phase in sequence can only commence on the previous phase has been completed.

·       A report is produced at the end of each phase, describing what has been achieved and outlining plans for the next phase.

 

Fundamental activities for the software development process are

1.      Software Specification: The functionality or software and constraints on its operations must be defined.

2.      Software design and implementation: The software to meet the specifications must be produced.

3.      Software validation: The software must be validated to ensure that it does what the customer wants.

4.      Software evolution: The software must evolve to meet changing customer needs.

 

System Development Life Cycle (SDLC)

SDLC (Software/System Development Life Cycle) is an organized way to develop a software/system. It is a methodology used to develop, maintain, and replace software/information systems.

·       It is a systematic process of developing any software. It helps in establishing a system, or software or project, or plan. It gives an overall list of processes and sub-processes required for developing a system.

·       SDLC consists of a set of development activities that have a prescribed order. It is the development of software in chronological order.

Importance and the necessity of SDLC

·       It helps to determine the needs of the user.

·       It supports constant communication between the developer and the user.

·       SDLC helps with the easy identification of missing requirements.

·       It ensures that the software meets the needs of its users.

·       It supports proper analysis and design of the software.

·       It ensures proper development and testing.

·       Proper documentation support for future upgrade and maintenance.

·       It provides flexibility for adding features even after the software is developed.

The different phases of SDLC are as follows:

1.      System Study or Preliminary Investigation and Feasibility study.

2.      System analysis or Determination of system requirements.

3.      System design.

4.      System development or development of software.

5.      System Testing.

6.      System Implementation.

7.      System Maintenance and Reviews or Evaluation

 

 


 

1) System Investigation

In this stage, the development team studies the present and identifies the drawbacks. They interact with the users and gathers information from different sources to recognize the problems of present system.

It answers these questions simply:

·       What needs to be done?

·       How will it be done?

·       When will it be done?

·       Who will do it?

 

2) System Analysis

System analysis means studying the current system deeply to understand problems and define what a new system must do. It focuses on finding requirements and avoiding failures by knowing all risks.

The system analyst analyzes the information and proposes the following specifications.

·       Goals and objectives of the proposed system.

·       Fundamental actions that must take place in the software.

·       Outputs to be produced.

·       Inputs to be used.

·       Processes to be performed.

·       Interfaces to be provided.

·       Performance requirements to be met.

·       Organizational and other constraints' to be met.

 

3) Feasibility Study

Feasibility study is the most important activity in the system analysis phase. It analyses the proposed system from different aspects so that it makes clear how practical or beneficial the system will be to the organization. So, it tells us whether the system is feasible to design or not. Thus, it is necessary before system design.

Different types of Feasibility study are as follows

1.      Economic feasibility: it concerns the cost effectiveness of the system. The main objective of economic feasibility is to calculate approximate cost-both the development cost and the operational cost and the benefits from the system.

2.      Technical feasibility: it concerns the availability of the hardware, software and the support equipment for the complete development of the system.

3.      Operational feasibility: it concerns smooth operation of the system. It is all about the problems that may occur during operation of the system after its development.

4.      Behavior feasibility: it concerns with behavior of the users and the society towards the new system. Generally, most of the traditional employees are not easily ready to upgrade them with the new system.

5.      Schedule feasibility: it is the process of splitting projects into tasks and estimate time and resources required to complete each task. It determines the deadline to complete a system and schedule the task accordingly.

6.      Legal feasibility: it concerns the legal issue of the system. If the system is illegal, then the system designing is meaningless. Everything is measured whether it is legal or illegal. It considers copyright law, foreign law, foreign trade, tax, etc.

 

System design

The next step is to develop the logical design of the system. During this phase, the logic of the system, namely, the information requirement of users, and use this to find the necessary database.

System design is concerned with the design of new system. It involves designing of various things such as output design, input design, files design, processing and general program design etc.

Logical Design: Theoretically designing of the system is called logical design. The system could be designed on the basis of the requirements.

Physical Design: The conversion of logical design into designing tools and techniques is called physical design. It is more detail and complex jobs describing the solution of the problem. It uses algorithms, flowcharts, pseudo codes, decision table, decision tree, E-R diagram, Data flow diagram etc
Theoretically designing of the system is called logical design. The system could be designed on the basis of the requirements.

The conversion of logical design into designing tools and techniques is called physical design. It is more detail and complex jobs describing the solution of the problem.

To create a logical design different kinds of tools are used.

Algorithm, Flowchart, Pseudo codes, Structured English, Decision Table, Decision Tree, Data flow diagram, E-R diagram

 

System development

After designing a logical diagram of a system, then next step is to convert into program. This process is called system development. Flowchart, algorithm, Pseudo code, etc. are the outlines of the procedures for taking the input data and processing it into usable output.

 

System testing

It is an investigation conducted to provide stakeholders with information about the quality of the product or service under test. System testing also provides an objective, independent view of the software to allow the business to appreciate and understand the risks of software implementation.

Some of the objectives of system testing are :

·       To check whether developed system fulfills the user requirement or not.

·       To check whether developed system works as expected.

Some testing methods are:

 

a) Black box testing: Black box testing treats the software as a black box without any knowledge of internal implementation. It is also called functional testing because it tests whether a system is functioning or not. Here in this type of testing several known input is provided and checked whether the system generates expected output or not.

 

b) White box testing: In white box testing, procedural details are checked logical path through the software and between several components are tested through codes, statements and syntax analysis. White box testing is used when the tester has to the internal data structure and algorithms including the code that implement this. It is also called glass box testing.

 

Implementation:

implementation involves testing the installed system, converting from the old system to the new one and training the users. This phase consists of implementation of the system into a production environment, and resolution of the problem identified in testing phase.

The main activities of implementation phase are:

·       Testing and proving in all parts of system.

·       Training of data processing and user staff to use the new system.

·       Preparation of documentation of a system.

·       Acquiring all necessary equipment & stationary.

The three system implementation methods:

1) Direct Implementation:

The old system is stopped completely and the new system is started immediately in its place.

 

2) Parallel Implementation:

Both the old system and new system run at the same time for a period until the new one is confirmed to work properly.

 

3) Phased Implementation:

The new system is introduced step-by-step in parts or modules until the full system is fully implemented.

 

Maintenance and review

It begins after the system is implemented. Like any system, there is an ageing process that requires periodic maintenance of hardware and software. The content of the review will include objectives met, cost, performance, standards and recommendation.

The different types of maintenance are:

Corrective maintenance: It corrects the run-time error during the operation.

Adaptive maintenance: It modifies or adds new feature in the system according to environmental change.

Perfective maintenance: It makes the system perfect up to date and improve the life and efficiency of the system.

 

System Analyst

System analysts are people who is involved in analyzing, designing, implementing and evaluating computer-based information systems to support the decision-making activities and operations of an organization.

·       A system analyst is information specialist. To be a system analyst, one must be knowledgeable about the technical aspects of analyzing, designing and implementing computer-based systems.

·       A system analyst is a person who conducts a study, identifies activities and objectives and determines a procedure to achieve the objectives.

The characteristics (attributes) of system analysts are as follows:

·       Knowledge of organization.

·       Technical Knowledge.

·       Interpersonal Communication Skill.

·       Character and Ethics.

·       Problem-Solving Skill.

·       System analysis and Design skills

 

Software Analyst vs Software Engineer

Software Analyst

Software Engineer

1. Deals with overall management of engineering projects during the life cycle.

Designs and develop software applications.

2. Focuses on users and domains.

Primarily focuses on developing software.

3. Applies technical, analytical, communicative, and managerial skills and techniques.

Applies scientific and mathematical principles.

4. Responsible for documenting project progress for quality control.

Focuses on design, development, testing, and evaluation of software.

5. May not be as technical or proficient with programming.

Highly technical and proficient with programming.

6. Needs coding and managerial skills.

Skilled in coding and continuous learning.

7. Fulfills the gap between IT and business.

Strengthens software development.

 

Requirement Collection Methods:

Requirement collection is part of the system analysis phase of the SDLC. It involves gathering and analyzing requirements, which can be divided into functional and non-functional requirements. Different methods are used for gathering requirements:

  • Interview
  • Survey/ Questionnaire
  • On-site Observation
  • Brainstorming
  • Document Analysis
  • Focus Group
  • Prototyping
  • Requirement Workshop

 

Explain requirement collection methods:

During system analysis, data are collected from various available sources by using different methods, some of them are:

1.      Interview:

Interviews of stakeholders and users are critical to developing great software. Without understanding the goals and expectations of the users and stakeholders, we are very unlikely to satisfy them.

 

2.      Survey / Questionnaire:

Individual interviews present several challenges: They can be tricky to schedule and time consuming for the interviewer. So, we can collect information from many people by doing a survey or questionnaire.

3.      On-site Observation:

By observing users and the work process, an analyst can identify process flow, steps, pain points, and opportunities for improvement.

 

4.      Brainstorming:

Brainstorming is used in requirement gathering to get as many ideas as possible from a group of people. Generally used to identify possible solutions to problems, and clarify details of opportunities.

 

5.      Document Analysis:

Reviewing the documentation of an existing system can help when creating requirement documents as well as driving gap analysis for scoping migration project.

 

6.      Focus Group:

A focus group is a gathering of people who are representative of the users or customers of a product to get feedback.

 

7.      Prototyping:

Prototyping is a relatively modern technique for gathering requirements. In this approach, we gather preliminary requirements that we use to build an initial version of the solution — a prototype. We show this to the client, who then gives you additional requirements.

 

8.      Requirement Workshops:

Workshops can be very effective for gathering requirements structured than a brainstorming session; involved parties collaborate to document requirements.

 

 

Software and Quality:

Software quality is the ability of software to function as per user requirements. Key aspects of software quality include:

  • Good Design
  • Reliability
  • Durability
  • Consistency
  • Maintainability
  • Value for Money

 

Software Development Model

A software development methodology/model or system development methodology/model in software engineering is a framework that is used to structure, plan and control the process of developing an information system. The different types of most popular system development model are as follows:

1. Waterfall model

It is a systematic and sequential model to develop software that begins with system requirements and progress through planning, modeling, construction. In this phase, once the development is completed in each stage the turn goes to next step/stage and there is no any turning back. It works as downhill structure. The diagram below shows waterfall model with its stages.



Figure1: Waterfall model

In this model, the stages of SDLC are organized in a linear order. The new stage of SDLC begins only after the completion of the previous stage.

The fundamental processes of waterfall model are as follows:

  1. Requirements analysis and definition: It is the first stage of waterfall model. In this stage, the developer should identify the actual requirements of the given problem.
  2. System design: In this stage the systems design process partitions the requirements to either hardware or software systems.
  3. Implementation and unit system: During this stage, the system design is realized and tested as a complete system to ensure that the software requirements have been met.
  4. Operation and maintenance: In this stage, the system is installed to the desired location. The maintenance involves correcting errors which were not discovered in earlier stages of the life cycle, improving the implementation of system units, and enhancing the system’s service as new requirements are discovered.

Advantages of Waterfall Model

  • The waterfall model is very easy to understand and use.
  • Managing this model is simple because every phase has fixed tasks and a review process.
  • Each phase happens one after another, so two phases do not run at the same time.
  • It is suitable for small projects where the requirements are already clear and well-defined.

 

Disadvantages of Waterfall Model

  • After the project reaches the testing stage, it becomes very hard to go back and fix mistakes made in earlier stages.
  • A working version of the software is created only at the end of the process.
  • There is a lot of risk and uncertainty.
  • It is not a good choice for complex or object-oriented projects.
  • It does not work well for long-term or continuous projects.
  • It is not suitable for projects where the requirements may change often.

Prototype model

The prototype model is an iterative software development model that focuses on creating a working prototype of the software early in the development process. It involves building a simplified version of the final product to gather feedback, validate requirements, and refine the design. The prototype model consists of the following key steps:



Figure 2: Diagram Representation of Prototype Model


Requirements Gathering: Initially, the requirements of the software are collected through discussions with stakeholders, end-users, and other relevant parties. These requirements are used as a basis for creating the prototype.

 

Prototype Design (Quick Design): In this phase, a basic design and structure for the prototype are developed. The emphasis is on creating a representation of the core functionality or features that address the primary user needs.

 

Build a Prototype: The prototype is built using rapid development techniques. The focus is on creating a functional prototype that demonstrates key aspects of the software's intended functionality. The development process may involve using low-fidelity or high-fidelity prototypes depending on the level of detail required.

 

Prototype Evaluation: The developed prototype is shared with stakeholders, including end-users and clients, to gather feedback and evaluate its usability, functionality, and design. The evaluation can involve user testing, surveys, interviews, or any other suitable methods to gather feedback.

 

Refinement and Iteration: Based on the feedback received during the evaluation phase, the prototype is refined and improved. Changes are made to address any shortcomings or enhancements suggested by the stakeholders. This iterative process of refinement and iteration continues until the prototype meets the desired requirements and user expectations.

 

Prototype Evolution: Once the prototype is refined and validated, it serves as the foundation for the development of the final software product. The insights gained from the prototype help in creating detailed specifications, architecture, and design for the actual software development.

 

The advantages of the prototype model include:

1.      Enhanced user involvement and feedback throughout the development process.

2.      Early detection and resolution of design flaws and requirements ambiguities.

3.      Stakeholders understand and approve the final product better because it is improved step by step.

The disadvantages of the prototype model are:

1.      The project can keep expanding because of constant changes and updates.

2.      Increased time and cost associated with prototype development and refinement.

3.      It can be hard to convert the prototype into a complete working system if the process isn’t handled well.

 

Spiral Model

The Spiral Model is an iterative software development model that combines elements of Waterfall and Prototype models. It develops the system in repeated cycles called spirals, where each spiral consists of planning, risk analysis, development, and evaluation. The model allows for progressive refinement of the software through repeated cycles, accommodating changes and mitigating risks throughout the development process.

 

It focuses heavily on risk analysis and continuous improvement in every phase.

The key components of the spiral model include:

Phases: The spiral model consists of four main phases, which are repeated in each iteration:

 


Planning: In this phase project objectives, requirements, and constraints are defined. Risks are identified and prioritized, and a plan is formulated to address them.

 

Risk Analysis: The identified risks are assessed, and strategies are developed to mitigate them. This involves analyzing alternatives, considering risk impact, and developing risk management plans.

 

Engineering and Development: In this phase, the software is designed, developed, and tested. Iterative prototyping, if required, can be employed to gather user feedback, and refine the design.

 

Evaluation: The software is evaluated based on the defined objectives and requirements. This includes user testing, feedback collection, and assessing the overall performance and quality of the software.

 

Advantages Of Spiral Model

1.      It is good for big and complex projects

2.      It can be added at the mid-level of projects.

3.      It has strong controls on documentation.

4.      In this phase, it has more chances to produce software in the early software life cycle.

 

Disadvantages Of Spiral Model

1.        This model can be costly to use.

2.        It should require high expertise in risk analysis.

3.        The dependency on risk analysis is high due to the project’s success.

4.        It is not suitable for small projects.

 

Uses

1.        This model is useful when costs and risk evaluation required.

2.        When there is a medium to the high-risk project at that time we can use this model.

3.        When customers are not clear about their requirements.

4.        When rapidly changes expected

5.        Requirements are complex.

 

Agile development model

The agile model is a combination of iterative and incremental process models. In the Agile model, the requirements are decomposed into many small parts called iterations or sprints that can be incrementally developed. The Agile model adopts Iterative development. Each incremental part is developed over an iteration. Each iteration is intended to be small and easily manageable and can be completed within a couple of weeks only. At a time one iteration is planned, developed, and deployed to the customers. Long-term plans are not made.

The steps involved in agile SDLC models are:



Requirement Gathering: - In this step, development team must gather the requirements, by interaction with the customer. development team should plan the time and effort needed  to build the project. Based on this information you can evaluate technical and economical feasibility.

Design the Requirements: - In this step, development team will use user-flow-diagram or high level UML diagrams to show the working of the new features and show how it will apply to the existing software. Wireframing and designing user interfaces are done in this phase.

 Construction / Iteration: - In this step, development team members start working on their project, which aims to deploy a working product.

Testing / Quality Assurance: - Testing involves unit testing, Integration testing, system testing. Brief introduction of these three testing are as follows:

Unit Testing: - Unit testing is the process of checking small pieces of code to ensure            that the individual parts of a program work properly on their own. Unit testing is used     to test individual blocks (units) of code.

Integration Testing: - Integration testing is used to identify and resolve any issues                that may arise when different units of the software are combined.

 System Testing: - Goal is to ensure that the software meets the requirements of the               users and that if works correctly in all possible scenarios.

5. Deployment:- In this step, development team will deploy the working project to end users.

 

6. Feedback:- This is the last step of Agile Model. In this, team receives feedback about the product          and works on correcting bugs based on feedback provided by the customer.




Figure 4: Agile Model

Advantages of Agile Model

·       Highly flexible and adaptive to changing requirements.

·       Faster delivery of working software in small increments.

·       Continuous customer involvement increases satisfaction.

·       Early detection and resolution of issues.

·       Better communication and collaboration within the team.

·       Reduced project risk due to frequent testing and review.

 

Disadvantages of Agile Model

·       Difficult to estimate final cost and time in advance.

·       Requires experienced and skilled team members.

·       Customer involvement is required throughout.

·       Documentation may be weak or incomplete.

·       Frequent changes can cause confusion if not properly managed.

 

 

System Design

System design is the process of defining the architecture, modules, interfaces, and data for a system to satisfy specific requirements. It's about figuring out how to build a system that meets the user's needs, often focusing on non-functional requirements like scalability, reliability, performance, and security.

 

Use Cases of System Design

System design is essential for:

  • Guidance for Development: Provides a clear plan and structure for the development team, ensuring everyone is building towards a unified vision.
  • Predicting Costs and Effort: Helps estimate the required resources, time, and budget for the project.
  • Risk Mitigation: Allows identifying and addressing potential issues (e.g., performance bottlenecks, security vulnerabilities) early in the development lifecycle.10
  • Documentation: Serves as a primary reference for system maintenance, future upgrades, and onboarding new team members.
  • Ensuring Non-Functional Requirements (NFRs): Guarantees the system will handle load, be highly available, and perform as expected.

 

 

Different Modeling Tools used for system design are follows:

1. Data Flow Diagram (DFD)

Definition: A graphical representation of the flow of data through a system. It shows how data is input, processed, stored, and output.

DFD stands for "Data Flow Diagram" through which we can represent the flow of data graphically in a Information System.

By using DFD We can easily understand the overall functionality of system because diagram represents the incoming data flow, outgoing data flow and stored data in a graphical form.

It describes how data is processed in a system in terms of input and output. A DFD model uses a no. of notations or symbols to represent flow of data:





Rules of DFD:

1. Each Process should have at least one input and one output.

Example:

2. Each data store should have at least one data flow in and one data flow out.

Example:

3. All processes in a DFD go to either another process or data store.

Example:

4. All the external entities must be connected through a process and entity can provide something to the software s/w as well as the entity can consume some data from the s/w

DFD can be categorized in the following forms:

1. Oth Level DFD:

It is a diagram which provides the entire systems data flows and processing with a single process is call as context Diagram/Context DFD/Level 0 DFD.

Example:

 

2. 1st Level DFD:

This is a more detailed version of the previous level that includes the database and various important units and processes.

Example:

 

2. Entity-Relationship Diagram (ER Diagram)

  • Definition: A graphical representation that illustrates the structure of a database, showing the entities (things) within a system, their attributes (properties), and the relationships between them.

 

3. System Flow Diagram (SFD)

  • Definition: A diagram that shows the physical or logical flow of control and data through the major components of a system, often focusing on the sequence of operations and the documents or media used.

 

4. Decision Tree

·       Decision Tree is a graph which uses a branching method in order to display all the possible outcomes of any decision.

·       It Helps in processing logic involved in decision making and corresponding actions taken.

·       It is a diagram that shows conditions and their alternative actions within horizontal tree framework.

·       It helps analysts to consider the sequence of decisions and identifies the accurate decision that must be made.

 

 




 

5. Decision Table

·       Decision Table is just a tabular representation of all conditions and actions. They are used to define clearly and concisely the decision statement of a problem in tabular form.

·       It is used to describe complex problems in a precise manner which is easily understandable.

·       We can derive decision table from decision tree.

·       It helps testers to search the effects of combinations of different inputs and other software states that must correctly implement business rules.

 

Components of Decision Table:

Condition Stub(section): It is the upper left quadrant which lists all the conditions to be checked.

Action Stub: It is the lower left quadrant which lists all the actions to be carried out to meet such conditions.

Condition Entry: It is the upper right quadrant which provides answers to questions asked in condition stub quadrant.

Action Entry: it is the lower right quadrant which provides the appropriate action resulting from the answers to the conditions in the condition entry quadrant.

 






 

 

 

UML

 

 

Use Case


Why documentation is essential in developing a system? Explain its types in brief.

Documentation is an essential part of developing a system as it helps to ensure that stakeholders have a clear understanding of the system's requirements, design, and implementation. It provides a record of the project's progress and helps to communicate important information to stakeholders, such as developers, testers, and end-users. Documentation can also be used to identify problems or potential issues in the system, and to provide a basis for future improvements or modifications. Here are some of the most common types of documentation in system development:

a)  User documentation: This type of documentation is intended for end-users of the system. It provides instructions on how to use the system, including step-by-step guides, user manuals, and help files.

b) Technical documentation: This type of documentation provides technical information about the system, including specifications, design documents, and API documentation. It is intended for developers, engineers, and other technical professionals.

c) Requirements documentation: This type of documentation captures the functional and nonfunctional requirements of the system. It includes details such as user stories, use cases, and acceptance criteria to ensure that the system meets stakeholder needs.

d) Design documentation: This type of documentation describes the architecture and design of the system. It includes diagrams, flowcharts, and other technical details that provide a clear understanding of how the system works.

e) Test documentation: This type of documentation outlines the testing strategy and approach for the system. It includes details such as test cases, test scenarios, and expected results to ensure that the system meets the requirements and is free from defects.

f) Maintenance documentation: This type of documentation provides information on how to maintain the system, including details such as how to troubleshoot common issues, perform upgrades, and manage backups.

 

              

Software Process Model – Objective Questions

MULTIPLE OF CHOICE QUESTIONS (1 MARK)

  1. 2081 Q.No. 9
    Which model of SDLC is characterized by a linear progression of phases from requirements gathering to maintenance?
    a. Waterfall model
    b. Agile model
    c. Spiral model
    d. RAD model
  2. 2080 GIIE Set A Q.No.8
    Conducting feasibility analysis is done in which phase of SDLC?
    a. Planning
    b. Analysis
    c. Design
    d. Implementation
  3. 2080 GIIE Set B Q.No.8
    What does the term “QA” stand for in the software development process?
    a. Quality Assurance
    b. Quality Analysis
    c. Quality Assessment
    d. Quantity Assurance
  4. 2080 Q.No.8
    Which SDLC phase is used to ensure quality software?
    a. implementation
    b. maintenance
    c. testing
    d. system design
  5. 2079 GIIE Set A Q.No.9
    In which phase of SDLC software code is done?
    a. Analysis
    b. Design
    c. Development
    d. Maintenance
  6. 2079 GIIE Set B Q.No.8
    What software development approach follows plan, develop, test, repeat?
    a. Agile
    b. Waterfall
    c. V-Model
    d. Prototype
  7. 2079 Set A Q.No.8
    Which of the following is discovering requirement from a user in the requirement collection process?
    a. Feasibility study
    b. Requirement Elicitation
    c. Requirement Specification
    d. Requirement validation
  8. A set of programs written for a computer to perform a particular task is called…
    a. hardware
    b. software
    c. both a & b
    d. none of the above
  9. ___ defines sequence of tasks that must be carried out to build new software.
    a. computer
    b. hardware
    c. software development process
    d. none of the above
  10. SDLC stands for…
    a. software development life cycle
    b. software/system development life cycle
    c. software/system life cycle
    d. scheme design life cycle
  11. ___ is also called a preliminary investigation or need analysis phase.
    a. system design
    b. system study
    c. system development
    d. system testing
  12. ___ is to determine whether the whole process of system analysis leading to computerization would be worthwhile for the organization or not.
    a. Feasibility study
    b. system design
    c. system development
    d. testing

 

 

SHORT ANSWER QUESTIONS (5 MARKS)

  1. 2081 Q.No.13 How do various requirement gathering techniques help in achieving a careful grasp of user needs and system requirements during SDLC’s analysis phase? [5]
  2. 2080 GIIE Set A Q.No.13 Describe the different requirement collection methods for development of software. [5]
  3. 2080 GIIE Set B Q.No.13 Explain the agile software development methodology in brief. [5]
  4. 2080 Q.No.13 Explain the importance of the system testing phase in software development life cycle (SDLC). [1+4]
  5. 2079 GIIE Set A Q.No.13 Explain requirement analysis phase of SDLC. [5]
  6. 2079 GIIE Set B Q.No.13 Describe the waterfall software development model with pros and cons. [5]
  7. 2079 Set A Q.No.13 What are the major activities performed during requirements analysis phase? Explain in brief. [5]
  8. 2078 Q.No.6 What is feasibility study? Explain. [5]
  9. 2077 GIIE Set B Q.No.6 Describe the desirable characteristics of a system analyst. [5]
  10. 2076 GIIE Set A Q.No.6 What are roles of system analyst in SDLC phase? [5]
  11. 2076 GIIE Set B Q.No.6 What are the importances of SDLC in software development process? [5]
  12. 2076 Q.No.6 Define SDLC. Describe the feasibility analysis methods. [2+3]
  13. 2075 GIIE Q.No.6 Explain system analysis phase of SDLC. [5]

 

https://mycsstudyhub.blogspot.com/

 

 

 


No comments:

Post a Comment