0% found this document useful (0 votes)
8 views

Chapter-2 (12)

This is computer pdf

Uploaded by

arslansumra2008
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)
8 views

Chapter-2 (12)

This is computer pdf

Uploaded by

arslansumra2008
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/ 14

1

Chapter No. 2
System Development Life Cycle (SDLC)
MCQs …………………………………………………………… Page 2

Short Questions/Answer ………………………………. Pages 3 - 8

Long Questions …………………………………………….. Pages 9–14

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
2

Multiple Choice Questions (MCQs)


Note: - Select the best answer for the following MCQs.

i. The first step in System Development Life Cycle is:


A. Analysis B. Design
C. Development and Documentation D. Problem Identification
ii. The organized process or set of steps that needs to be followed to develop an
information system is known as:
A. Analytical Cycle B. Design Cycle
C. System Development Life Cycle D. Program Specifications
iii. Enhancements, upgradation and bug fixation are done during the step in the
SDLC.
A. Maintenance and Evaluation B. Problem Identification
C. Development and Documentation D. Design
iv. The determines whether the project should go forward or not?
A. Feasibility B. Problem Identification
C. System Evaluation D. Program Specification
v. spend most of their time in the beginning stage of the SDLC, talking with
end-users, gathering requirements, documenting systems and proposing solutions.
A. Project Managers B. System Analysts
C. Network Engineers D. DataBase Administrators
vi. The entities having a positive or negative influence in the project completion are known
as .
A. Stakeholders B. Stake Supervisors
C. Stake Owners D. None of these
vii. System maintenance is performed in response to .
A. Business changes B. H/W and S/W changes
C. User’s requests for additional features D. All of these
viii. An algorithm is a:
A. Computer program B. Programming language
C. Sequence of steps D. set of symbols
ix. Which symbol is used at the beginning and end of a flowchart?
A. Oval B. Rectangle
C. Diamond D. Parallelogram
x. What is the final phase in SDLC?
A. Design B. Implementation
C. Coding D. Maintenance

Answers
i. D ii. C iii. A iv. A v. B
vi. A vii. D viii. C ix. A x. D

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
3

Short Questions/Answers (Q/A)


1. What is system?

Ans: - A system is a set of components (hardware and software) for collecting, creating, storing,
processing and distributing information. A system can be developed by applying a set of methods,
procedures and routines in a proper sequence to carry out some specific task.

2. What is the importance of SDLC?

Ans: - SDLC is important for the development of software due to the following reasons.

 SDLC is a systematic way of developing a successful system.


 It delivers quality software which meets the organization requirements.
 It ensures that the requirements for the development of the software system are well
defined and subsequently satisfied.
 It delivers cost-effective system.
 It maximizes the productivity.

3. What are the objectives of SDLC?

Ans: - The three primary objectives of SDLC are:

 To ensure that high quality systems are delivered


 To provide strong management controls over the projects
 To maximize the productivity

4. What do you mean by stakeholders of SDLC?

Ans: - Stakeholders of SDLC are those entities or groups which are either within the organization or
outside of the organization that sponsor, plan, develop or use a project. Stakeholders may be users,
managers and developers. It is the duty of the project management team to identify the
stakeholders, determine their requirements, expectations and manage their influence in relation to
the requirements to ensure a successful project. Some important stakeholders of System
Development Life Cycle (SDLC) includes Project Manager ,System analyst, Programmer, Software
Tester and customer.

5. List different phases of SDLC?

Ans: - The names of ten different phases of SDLC are:

 Defining Problem
 Planning
 Feasibility Study
 Analysis
 Requirement Engineering
 Design
 Coding / Construction
 Testing / Verification
 Deployment / Implementation

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
4

 Maintenance / support

6. What is the significance of defining phase (Problem definition) in SDLC?

Ans: - In Defining phase of SDLC, the problem to be solved is clearly defined. All requirements are
documented and approved from the customer or the company. The project is designed and
developed according to these requirements. It is important to identify all requirements in order to
develop the project successfully.

Example: - A Student Examination System is needed to be developed that covers all the aspects
from Examination taking to Student’s result generations.

7. Give some activities of planning phase.

Ans: - Some activities of planning phase are:

 It determines the purpose of the project.


 It considers all the requirements for producing the new product.
 It prepares an estimate of resources for the new product such as personnel and cost.
 After analyzing, it assembles all the information into project plan and presents it to the
management for approval.

8. What is the purpose of analysis phase?

Ans: - During analysis phase the project team determines the end-user requirements. The current
system is studied in detail to find how it works and how to improve it. It is typically done by
interacting with the existing system users who will provide an explanation of their needs and
expectations from the new/prosed system. In this phase, the project manager must decide whether
the project should go ahead with the available resources or not.

The project team asks the following questions during the analysis.

 Can the proposed system be developed with the available resources and budget?
 Will this system significantly improve the organization?
 Does the existing system even need to be replaced etc?

Example: - The Student Examination System is analyzed for the development. The team may visit
the educational institute to study existing system to suggest improvements.

9. Differentiate between functional and non-functional requirements.

Ans: - Functional requirements: - Functional requirements specify the software functionality that
the developers must build into the product to enable users to accomplish their tasks.

Non-functional requirements: - Non-functional requirements specify criteria for the judgment of the
operation of a system. It describes that how well the system performs its duties.

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
5

10. Design phase is considered as the “architectural” phase of SDLC. Give reasons.

Ans: - Design phase is considered as “architectural” phase of SDLC because:

 It determines the most logical design and structure for data flow and storage.
 It is used to design user interface layouts.
 It also includes preparation of algorithms and flowcharts.

11. Briefly describe Algorithm.

Ans: - An algorithm is a specific step by step procedure for carrying out the solution of a problem.

Example: - An algorithm to find out the result of a student on the basis of percentage marks.

1. Start
2. Read Percentage
3. If Percentage> = 40 Then Print “Pass” Else Print “Fail”
4. End

12. Briefly describe Flowchart.

Ans: - A flowchart is a type of diagram that represents an algorithm or a process. It shows the steps
of the algorithm with the help of different symbols. These symbols are linked with arrows that show
the flow of process. This graphical representation of the algorithm gives a step-by-step solution to a
given problem. Flowchart is designed according to the defined rules. Some of the flowchart symbols
are oval, rectangle, diamond etc.

13. Explain flowchart symbols.

Ans: - Some most commonly used flowchart symbols are as follows.

Symbol Name Function


Start / Stop An oval / Terminal symbol represents Start / Stop of
flowchart.

Input / Output A parallelogram symbol represents input or output.

Process A rectangle symbol represents a process.

Arrows A line with arrow head connects the symbols and

shows the direction of flow.

Decision A diamond symbol indicates a decision.

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
6

14. Develop/draw a flowchart to find out the result of a student on the basis of percentage marks.

Ans: -
Start

Read Per

Is Yes
Per
>=40?

No Print “Pass”

Print “Fail”

Stop

15. What is the use of construction/coding phase in SDLC?

Ans: - The construction/coding phase is used to execute the plan that is prepared in design phase.
The developers write code for data flow process. They also design the actual user interface screens.
The code is written in programming languages. The coding task can be divided into smaller units as
modules. Coding is also called computer programming.

Example: -A coding (program) in C ++ to find out the result of a student on the basis of percentage
marks.

# include <iostream.h>
# include <conio.h>
void main (void)
{
clrscr ( );
int percentage;
cout<<”Enter Percentage marks of a student = ”;
cin>> percentage;
If (percentage >= 40)

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
7

cout<<“\n Pass” ;
else
cout<<”\n Fail” ;
getche ( );
}
16. What is the purpose of Testing/Verification phase?

Ans: - The process of executing programming modules to find errors is called testing. The testing
phase is used to test all aspects of the system to ensure its functionality and performance. The
testing is done by giving simple data to the system as input and checking the output.

The purpose of testing is to evaluate the program or system to determine whether it meets the
required results. It checks the consistency of the program by evaluating the results against pre-
defined requirements.

17. What is software deployment/implementation?

Ans: - Software deployment is a set of activities that are used to make the software/system
available for use. The deployment is also called implementation. A system can be implemented after
it has been tested. The following methods are used for system deployment/implementation.

 Direct implementation
 Parallel implementation
 Phased implementation
 Pilot implementation

18. Give main activities of implementation phase.

Ans: - The following are the main activities that are involved during implementation/deployment
phase.

 Installation and activation of the hardware and software.


 Training of the users and the computer operation personals on the developed software
system.
 Replacing the old system with the new developed system (conversion)

19. Disrobe different methods of implementation phase.

Ans: - The following are the different methods of implementation/deployment.

 Direct Implementation: - In this type of implementation the old system is directly replaced by
the new system. The old system is no longer available. It is the most risky implementation and
may be used when time is very short. It is also called crash implementation.

 Parallel Implementation: -In this type of implementation both new and old systems operate
together for a period of time. It is the safest method of implementation because the major

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
8

problems with the new system can be encountered and corrected without the loss of data. It is
the most expensive way of implementation.

 Phased Implementation: - This is a type of implementation in which the individual components


of new system are implemented one by one. The old system is progressively discarded.

 Pilot Implementation: - In this method the new system is installed for a small number of users.
These users learn, use and evaluate the new system. Once the new system is deemed to be
performing satisfactorily then the new system is installed and used by all.

20. Which method of implementation is the safest? Justify your answer also.

Ans: - The safest method of implementation is parallel implementation. The reason is that in this
method the old and new systems work together for a period of time which allows any major
problems in the new system can be encountered and corrected without any loss of data.

21. What is the importance of maintenance/ support phase in SDLC?

Ans: - The system maintenance is an important and ongoing process in SDLC. The maintenance can
be repairing, modification or enhancement in the system. It is used to monitor the system
performance continuously in accordance with the user requirements. It may results in modifying the
system if any problem is identified with its performance. The system may enter the planning phase if
any modifications are required. This process continues until a complete solution is provided to the
customer.

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
9

Long Questions/Answers
1. Define software/System Development Life Cycle (SDLC). What are its objectives?

Ans: - SDLC: - Software/System Development Life Cycle (SDLC) is a problem-solving process


through which a series of steps or phases helps to develop a new computer system. It is an
organized way of developing successful systems. It is commonly used in software engineering to
create or alter information system.

The three primary objectives of SDLC are:

 To ensure that high quality systems are delivered


 To provide strong management controls over the projects
 To maximize the productivity

2. What is system? Where exactly the Testing activities begin in SDLC?

Ans: - System: - A system is a set of components (hardware and software) for collecting, creating,
storing, processing and distributing information. A system can be developed by applying a set of
methods, procedures and routines in a proper sequence to carry out some specific task.

The testing activities start in Testing/Verification stage of SDLC.

Testing/Verification: - The process of executing programming modules to find errors is called


testing. The testing phase is used to test all aspects of the system to ensure its functionality and
performance. The testing is done by giving simple data to the system as input and checking the
output.

The purpose of testing is to evaluate the program or system to determine whether it meets the
required results. It checks the consistency of the program by evaluating the results against pre-
defined requirements.

3. Why software development life cycle is important for the development of software?

Ans: - SDLC is important for the development of software due to the following reasons.

 It delivers quality software which meets the system requirements.


 It ensures that the requirements for the development of the software system are well
defined and subsequently satisfied.
 It delivers cost-effective system..
 It maximizes the productivity.

4. Who are stakeholders of SDLC? Describe their responsibilities.

Ans: - Stakeholders of SDLC are those entities or groups which are either within the organization or
outside of the organization that sponsor, plan, develop or use a project. Stakeholders may be users,
managers and developers. It is the duty of the project management team to identify the
stakeholders, determine their requirements, expectations and manage their influence in relation to
the requirements to ensure a successful project.

Some important stakeholders of System Development Life Cycle (SDLC) are as follows.

 Project Manager

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
10

 System analyst
 Programmer
 Software Tester
 Customer

Management Personnel/Team: - The management team is responsible to satisfy the customers. It


makes sure that high quality software is developed according to the customer’s expectations. The
project must be delivered within allotted time and cost. The team also reduces the risks associated
with the project.

The roles of a good management team are:

 To provide consistency of success of the software with regard to Time, Cost and Quality
objectives.
 To ensure that customer expectations are met.
 To collect historical information and data for future use.
 To provide a method of thought for ensuring all requirements are addressed through
comprehensive work definition process.
 To reduce risks associated with the project.

Project Manager: - A project manager is a professional responsible for planning, execution, and
closing of any project. A project manager has management skills with software development
experience. Project manager must have the knowledge of Software Development Life Cycle (SDLC).

The roles of project manager are:

 Developing the project plan


 Managing the project budget
 Managing the project stakeholders
 Managing the project team
 Managing the project schedule
 Managing the project conflicts

System Analyst: - A system analyst is a software development professional. System analyst studies
the problems, plan solutions, recommends software systems and manages project development.
System analyst typically has expertise in a variety of programming languages, Operating Systems and
computer hardware platforms.

The roles and responsibilities of system analyst are:

 To plan a system flow.


 To interact with customers to learn and document requirements those are then used to
produce business requirements documents.
 To define technical requirements.
 To interact with designers to understand software limitations.
 To help programmers during system development phase.
 To manage system testing.
 To documents requirements and contribute to user manuals.

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
11

Programmer: - A programmer is a technical person who writes computer programs in computer


programming languages to develop software. A programmer is responsible to write, test, debug and
maintain the code.

The responsibility of programmer includes:

 Writing, testing and maintaining the instructions of computer programs.


 Updating, modifying and expanding existing programs.
 Testing the code by running to ensure its correctness.
 Preparing graphs, tables and analytical data displays which shows the progress of a
computer program.

Software Tester: - A software tester is a computer programmer with expertise in testing the
computer programs using different techniques. Software tester is responsible for understanding
requirements, creating test scenarios, test scripts, preparing test data, executing test scripts and
reporting defects as well as results.

Customer: - A customer is an individual or an organization that is a current or potential buyer and


user of the software product. The customers are also called clients. The difference between a
customer and a client is that the customer purchases software products and the clients purchase
services. Customers are the real evaluators of a software product by using it and identifying its
merits and demerits.

5. What is feasibility study? Explain its different types.

Ans: - Feasibility study is used to assess the strength and weaknesses of a proposed
software/system and present directions of activities which will improve a project and to achieve
desired results. Feasibility study is the analysis and evaluation of a proposed project/system to
determine whether it is technically, financially/economically, legally and operationally feasible
within the estimated cost and time. It is divided into the following types.

 Technical feasibility
 Economic feasibility
 Operational feasibility
 Legal feasibility
 Schedule feasibility

Technical feasibility:- Technical feasibility assesses the current resources (such as hardware and
software) and technology which are required to accomplish user requirements in the software
within the allotted time and budget.

Economic feasibility:- In Economic feasibility cost-benefit analysis is done in which expected costs
and benefits are evaluated. It determines whether the system can be developed within the budget
or not.

Operational feasibility:- Operational feasibility determines that how well the proposed system will
work in the organization. It also determines the acceptability of the proposed system in the end
users and management.

Legal feasibility:- Legal feasibility is used to determine the ethical and legal issues related to the
system such as Cyber law, copyright etc.

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
12

Schedule feasibility:- Schedule feasibility determines whether the proposed system can be
completed within the deadline or not. In schedule feasibility time is allocated for separate module
development in proposed system.

6. What is the purpose of Requirement Engineering phase? Explain its various steps in detail.

Ans: - The purpose of requirement engineering is to determine user expectations for a new or
modified system/software. It is a set of activities that identify and communicate the purpose of a
software system and the framework in which it will be used. It has the following steps.

 Requirement gathering
 Requirement validation
 Requirement management

Requirement Gathering: - Requirement gathering is usually the first part of any software/system
development process. In this step meetings with the customers are arranged to analyze market
requirements and trends. Requirement gathering have two types.

 Functional Requirements:- Functional requirements specify the software functionality that


the developers must build into the product to enable users to accomplish their tasks.
 Non-functional Requirements: - Non-functional requirements specify the criteria for the
judgment of the operations of a system. It describes that how well the system performs its
duties.

Requirement Validation: - Requirement validation is concerned with examining the requirements to


certify that they meet the intentions of the stakeholders. The validation differs from verification in
the sense that verification occurs after requirements have been accepted. In requirement validation,
the requirements gathered are reviewed to check that requirements are complete and accurate.

Requirement Management: - Requirement management is performed to ensure that the software


continues to meet the expectations of the acquirer and users. Requirement management needs to
gather new requirements that arise from changing expectations, new regulations or other sources of
change.

7. Which personnel are involved in SDLC? Explain their role briefly.

Ans: - SDLC activities are performed by different groups of people and individuals called personnel.
The personnel are professionals in performing their particular jobs. These include:

 Management Personnel
 Project Manager
 System analyst
 Programmer
 Software Tester
 Customer

Management Personnel/Team: - The management team is responsible to satisfy the customers. It


makes sure that high quality software is developed according to the customer’s expectations. The

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
13

project must be delivered within allotted time and cost. The team also reduces the risks associated
with the project.

The roles of a good management team are:

 To provide consistency of success of the software with regard to Time, Cost and Quality
objectives.
 To ensure that customer expectations are met.
 To collect historical information and data for future use.
 To provide a method of thought for ensuring all requirements are addressed through
comprehensive work definition process.
 To reduce risks associated with the project.

Project Manager: - A project manager is a professional responsible for planning, execution, and
closing of any project. A project manager has management skills with software development
experience. Project manager must have the knowledge of Software Development Life Cycle (SDLC).

The roles of project manager are:

 Developing the project plan


 Managing the project budget
 Managing the project stakeholders
 Managing the project team
 Managing the project schedule
 Managing the project conflicts

System Analyst: - A system analyst is a software development professional. System analyst studies
the problems, plan solutions, recommends software systems and manages project development.
System analyst typically has expertise in a variety of programming languages, Operating Systems and
computer hardware platforms.

The roles and responsibilities of system analyst are:

 To plan a system flow.


 To interact with customers to learn and document requirements those are then used to
produce business requirements documents.
 To define technical requirements.
 To interact with designers to understand software limitations.
 To help programmers during system development phase.
 To manage system testing.
 To documents requirements and contribute to user manuals.

Programmer: - A programmer is a technical person who writes computer programs in computer


programming languages to develop software. A programmer is responsible to write, test, debug and
maintain the code.

The responsibility of programmer includes:

 Writing, testing and maintaining the instructions of computer programs.


 Updating, modifying and expanding existing programs.

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar
14

 Testing the code by running to ensure its correctness.


 Preparing graphs, tables and analytical data displays which shows the progress of a
computer program.

Software Tester: - A software tester is a computer programmer with expertise in testing the
computer programs using different techniques. Software tester is responsible for understanding
requirements, creating test scenarios, test scripts, preparing test data, executing test scripts and
reporting defects as well as results.

Customer or End user: - A customer is an individual or an organization that is a current or potential


buyer and user of the software product. The customers are also called clients. The difference
between a customer and a client is that the customer purchases software products and the clients
purchase services. Customers are the real evaluators of a software product by using it and
identifying its merits and demerits.

Second Year Computer Notes By Riaz Khattak APS & C (Boys) Peshawar

You might also like