b.v. patel institute of business management, computer & … · 2016. 9. 3. · ans: flowchart,...
TRANSCRIPT
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Unit – 1
1 Mark Questions
1. Write the categories of classification of a system?
Ans: physical system, open and closed system, deterministic and probabilistic system,
man-made information system
2. Which type of system is based on the organization chart?
Ans: Information system
3. Which type of applications is used less time consuming?
Ans: Computerised applications
4. Write the full form of
ans:
a. BIS Business Information Systems
b. CBIS Computer Based Information Systems
c. OAS Office Automation Systems
d. TPS Transaction Processing Systems
e. MIS Management Information Systems
f. DSS Decision Support Systems
g. SSADM Structured System Analysis and Design Methodology
h. IS Information System
i. SDLC Software Development Life Cycle
5. Which characteristics of structured specification is use for diagrams?
Ans: Graphic
6. Who is a key member of systems development project?
Ans: System analyst
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
7. List tools and techniques used for designing.
Ans: Flowchart, DFD, data dictionary, Structured English, decision table, decision
tree
8. Which activity is also known as the feasibility study?
Ans: Survey
9. Mention software life cycle model.
Ans: The slum dunk life cycle, the baroque approach, the waterfall approach, the
prototyping approach.
10. List types of prototyping.
Ans: Patched-up prototype, Non-operational prototype, First-of-a-series prototype,
selected features prototype.
2 Mark Questions
1. Define system.
Ans: System is defined as a collection of elements or components that are organized for a
common purpose.
2. List components of system.
Ans: Inputs,
Outputs,
Feedback,
System Boundary,
Environment,
Interface with other system.
3. What is feedback?
Ans: The outputs would be used as a control element to balance between the actual and
standard performances defined within a system is called feedback.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
4. Define subsystem.
Ans: A system may comprise of many smaller systems or a system may be made up of
different levels are called subsystem.
5. What is system analysis?
Ans: System analysis involved a detailed study of the current system, leading to
specifications of a new system. Or System analysis is a detailed study of various
operations performed by a system and their relationships within and outside the system.
6. Define system analyst.
Ans: Individuals perform the systems investigation as distinct from those merely
involved in the detailed computer programming are called system analysts.
7. Define system designer.
Ans: The system designer is the person (or group of people) who will receive the output
of the system analysis work.
8. Define SDLC.
Ans: A software life cycle is a model used to explain and help understand software
development and maintenance process.
9. What is the purpose of system analysis?
Ans: The purpose of the system analysis is to transform its major inputs, user policy and
project charter into structured specification.
10. Mention tools for prototyping.
Ans: Fourth-generation languages
Application generators
Program generators
Reusable code
Data dictionary systems
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
5 Marks Questions
1. Explain components of system.
Ans: Other system
Inputs: inputs are anything to be captured by the system from its environment. Inputs are
the elements (material, human resources, information) that enter the system for
processing.
Outputs: anything produced and sent into its environment is called output. Outputs are
the outcome of the processing.
Feedback: The outputs would be used as a control element to balance between the actual
and standard performances defined within a system. Feedback may be positive or
negative, routine or informational. Positive feedback reinforces the performance of the
system. It is routine in nature. Negative feedback generally provides the controller with
information for action.
System Boundary: It defines the scope (internal and external). A system should be
defined by its boundaries the limits that identify its components, processes and
interrelationships when it interfaces with other system. For example, a teller system in a
commercial bank is restricted to deposits, withdrawals and related activities of customer’s
checking and saving accounts.
Environment
System Boundary
Input Output
Feedback
Process
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Environment: It is the outside world in which the system exists. It is the source of
external elements that impinge on the system. In fact it often determines how a system
must function. For example, organizations environment consisting of vendors,
competitors and other may provide constraints and consequently influence the actual
performance of the system.
Interface with other system: Systems in real life do not operate in isolation. One system
has interface with one or more systems that are in their active pahse of life cyle. Output
of one system is listed as an input by other systems: these interfaces are often expressed
in form of information interchange by way of inputs and outputs. In case of management
information system, it is possible to identify such interface by person, activity, function,
department or another system with which the management information system has
interface by way of input, output or both input and output.
2. Write a short note on characteristics of system.
Ans: Based on the definition of a system, it is observed that following characteristics are
present in all systems.
a. Organisation: Organisation implies structure and order. It is the arrangement of
components that helps to achieve objectives. In the design of a business system,
for example, the hierarchical relationships starting with the president on top and
leading downward to the blue-collar workers represents the organisation structure.
Likewise a computer system is designed around an input device, a central
processing unit, an output device and one or more storage units. When these units
are linked together they work as a whole system for generating information.
b. Interaction: Interaction refers to the procedure in which each components function
with other components of the system. In an organisation for example, purchasing
must interact with production, advertising with sales and payroll with personnel.
In a computer system also, the central processing unit must interact with other
units to solve a problem. In turn the main memory holds program and the data that
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
the arithmetic unit uses for computation. The inter-relationship between these
components enables the computer to perform.
c. Interdependence: Interdependence means that component of the organisation or
computer system depends on one another. They are coordinated and linked
together in a planned way to achieve an objective.
d. Integration: integration is concerned with how a system is tied together. It is more
than sharing a physical part or locations. It means that parts of the system work
together within the system even though each part performs a unique function.
Successful integration will typically produce a better result as a whole rather than
if each component works independently.
e. Central Objective: Central Objective is the last characteristic of a system.
Objectives may be real or stated. Although a stated objective may be the
objective, it is quite common that organisation may set one objective and operate
to achieve another. The important point is that users must be aware about the
central objective well in advance.
3. Describe classification of system.
Ans: A system can be classified into following categories, namely:
1. Physical or Abstract Systems
2. Open and Closed Systems
3. Deterministic and Probabilistic Systems
4. Man-made information Systems
Physical or Abstract Systems:
Physical systems are tangible entities that may be static or dynamic in operation. For
example the physical parts of the computer centre are the offices, desks and chairs that
facilitate operation of the computer. They can be seen and counted: they are static. In
contrast a programmed computer is a dynamic system. Data, programs, output and
applications change as the user’s demands or the priority of the information requested
changes.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Abstract systems are conceptual or non-physical entities. They may be as straightforward
as formulas of relationship among sets of variables or models the abstract
conceptualization of physical situations. A model us a representation of a real or a
planned system.
Open and Closed System:
The name itself is self-explanatory. Systems can be classified on the basis of their
interfaces with the environment in which they operate. The systems that have interface
with the environment are considered as open system. These systems are either open to
inputs from the environment or are open to provide output to the environment. In real life
systems many have multiple interfaces with the environment. Since these systems are
interacting with the environment in which they operate they are called as open system.
The systems that do not have any interaction with the outside world are called as closed
systems. Closed systems have no interaction with the environment in which they operate.
Deterministic and Probabilistic System:
Just as systems are classified on the basis of their interactions with the environment open
and closed systems, systems can also be classified on the basis of their results. There are
systems whose results can be predicted and there are systems whose results cannot be
predicted. Systems can also be classified into deterministic and probabilistic systems
based on the predictability of the results. The systems whose results can be predicted are
called as deterministic system. The systems whose results cannot be predicted are called
as probabilistic systems.
Man-made Information Systems:
It is generally believed that information reduces uncertainty about a state or event. For
example, information that the wind is clam reduces the uncertainty that a trip by boat will
be enjoyable. An information system is the basis for interaction between the user and the
analyst. It determines the nature of relationship among decision makers. In fact it may be
viewed as a decision centre for personnel at all levels. Form this basis, an information
system may be defined as a set of devices, procedures and operating systems designed
around user-based criteria to produce information and communicate it to the user for
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
planning, control and performance. Many practitioners fail to recognise that a business
has several information systems: each is designed for a specific purpose. The major
information systems are:
Formal information systems
Informal information systems
Computer based information system
A formal information system is based on the organisation represented by the organisation
chart. The chart is a map of positions and their authority relationships, indicated by boxes
and connected by straight lines. It is concerned with the pattern of authority,
communication and work flow.
PLANNIG, CONROLLING DECISION MAKING
AND DECISION MAKING
SALES,RECEIPT CLERICAL TASKS
An informal information system is an employee-based system designed to meet personnel
and vocational needs and to help in the solution of work-related problems. It also funnels
information upward through indirect channels. In this way it is considered to be a useful
system because it works within the framework of the business and its stated policies.
MIS DSS
COMPUTER DATA APPLICATION
PROGRAM
[
TPS OAS
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Third category of information system depends mainly on the computer for handling
business applications. System analysts develop several different types of information
system to meet a variety of business needs.
4. What are tools for structured specification?
Ans:
1. Data flow diagrams: A data processing system involves both data and
processing. The modelling that is being carried out can be described in a number
of ways:
a. What function must the system perform? What are the interactions
between the function?
b. What transformation must the system carry out? What inputs are
transformed into what outputs?
c. What kind of work does the system do? Where does it get the information
to do its work? Where does it deliver the results of its work?
The modelling tool that is used to describe the transformation of inputs into
outputs is a dataflow diagram. The DFD provides a convenient over view of
the major functional components of the system; it does not provide any detail
of these components. To show the details of what information is transformed
and how it is transformed, two supporting textual modelling tools are needed
data dictionary and process specification.
2. Data dictionary: A data dictionary is an organized collection of logical
definitions of all data elements that occur in the system. In a typical systems
development project there are likely to be several thousand such data definitions.
3. Process specifications: The purpose of process specifications is to allow the
analyst to describe the business policy represented by each of the bottom level
bubbles in the bottom level of DFDs. At the same time the description is intended
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
to be comprehensible to the end-user. The process specification can be written in
a variety of forms- Structured English, decision tables, action diagrams etc.
4. Entity relation diagrams: The purpose of ERD is to highlight the major objects
or entities of stored data that the system must deal with, as well as highlight the
relationships among those objects. Specifically, these are the relationships that
must be remembered by the system. If the relationship can be computed or
calculated by the system automatically, it need not be shown in the diagram. The
DFD and ERD, highlight two different aspect of the same system. Specifically
each data store down on the DFD should correspond to an object or a relationship
on the ERD. The data dictionary can also be used to maintain appropriate
information about objects and relationships.
5. State transition diagram: This modelling tool characterizes the systems as real
systems. In these systems, the time dependent behaviour of the system is
important. The end user has business policy requirements concerning the
sequences activity the response time required to respond to various external
signals and so on. To help highlight these aspects of the system the state transition
diagram is used.
5. Discuss the role of a system analyst in designing and developing a business information
system.
Ans: A system analyst is a key member of any systems development project, he plays
several roles:
a. An archaeologies and scribe: One of the main jobs of the systems analyst is to
uncover detail and document business policy that may exist only as tribal folklore.
A systems analyst must have a fairly good idea of his final system at the raw
material stage itself. He prepares the blue print, modifies, improves and provides
aesthetic values of his product.
b. An innovator: The system analyst must separate the symptoms of the user’s
problem from the true causes. With his knowledge of computer technology, he
must help the user to explore useful new applicatons of the computers and new
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
ways for the user to conduct the business. A systems analyst works towared the
future. Future is uncertain and different. Change is the only thing which is
permanent and the systems analyst has to prepare a vehicle to work in that
changing environment.
c. A mediator and a motivator: It is the system analyst who often finds himself in
the middle of users, managers, programmers, auditors, etc. The analyst’s primary
job is to achieve consensus that requires the delicate art of diplomacy and
negotiation because acceptance cannot be forced down the throats of system
users.
d. A project leader: Since the system analyst is usually more experienced that the
programmers on the project and since he is assigned to the project management
responsibilities he needs more than just the ability to draw flowcharts and other
technical diagrams. He needs people skill to interview users, mediate
disagreements, and survive the usual political battles that surround all but the
unimportant project.
e. An organizer: The system analyst needs a logical, organized mind. He must be
able to view a system from many different perspectives, he must be able to
partition it into levels of subsystems and he must be able to think of a system in
abstract terms as well as physical terms. He has to be clear about all activities of
the system. The sequence of activities their purpose and their consequences must
be clear to him.
f. An intelligent salesperson: A good system analysts is one who can sell an air
conditioner at the north pole of the earth. System selling is harder than that
because the systems analyst has to sell it to a user, who knows the existing system
in and out? To sell his system he should be a good communicator and genuinely
interested in understanding the real need of the user.
6. Explain SDLC.
Ans: Structured system development life cycle is a well-designed approach in the form of
methodology. The structured methodology of structured life cycle has overcome most of
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
the disadvantage of the classical life cycle. There are nine activates in structured system
development life cycle.
1. The survey: This activity is also known as the feasibility study or the initial
business study. Typically it begins with the user request that one or more portions
of his business be automated. The major purpose of the survey activity are as
follows:
i. Identify the responsible users and develop an initial scope of the system.
ii. Identify current deficiencies in the user’s environment.
iii. Establish goals and objectives for a new system.
iv. Determine whether it is feasible to automate the system and, if so, suggest
some acceptable scenarios.
v. Prepare a project charter that will be used to guide the remainder of the
project.
2. System analysis: The primary purpose of the analysis activity is to transform its
major inputs, user policy and project charter into structured specification. This
involves modelling the user’s environment with dataflow diagrams, entity
relationship diagrams, state-transition diagrams and some other tools.
3. Design: The activity of design is concerned with allocating portions of the
specification to appropriate processors and to appropriate tasks within each
processor. Within each task the design activity is concerned with the development
of an appropriate hierarchy of program modules and interfaces between those
modules to implement the specification created in analysis activity.
4. Implementation: This activity includes both coding and the integration of
modules into a progressively more complete skeleton of the ultimate system. Thus
this activity includes both structured programming and top down implementation.
5. Acceptance test generation: the structured specification should contain all the
information necessary to define an acceptable system from the user’s point of
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
view. Thus once the specification has been generated, work can commence on the
activity of generating a set of acceptance test cases from the structured
specification.
6. Quality assurance: Quality assurance is also known as final testing or acceptance
testing. This activity requires, as its inputs, acceptance test data generated in the
activity 5 and the integrated system produced by activity 4. The system analysts
and members of the user organizations take the responsibility of this activity.
7. Procedure description: one of the important activities to be performed is the
generation of a formal description of those portions of the new system that will be
manual as well as the description of how users actually will interact with the
automated portion of the new system.
8. Database conversion: in some projects, database conversion may involve more
work than the development of compute programs for the new system. In some
projects, there may not be any existing database to convert.
9. Installation: The final activity is installation. Its inputs are user’s manual, the
converted database and the accepted system. This activity also includes new
hardware installation and training to the members about the new system.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Unit – 2
1 Mark Questions
1. Which fact finding techniques help to gather vital facts?
Ans: Interviews
2. Which types of requirements are used in graphical document?
Ans: Functional requirements
3. Write the full form of:
a. FFT Fact Finding Techniques
b. SyRS System Requirements Specification
c. SRS Software Requirements Specification
d. PFD Process Flow Diagrams
e. DFD Data Flow Diagrams
f. DD Data Dictionary
g. ERD Entity Relationship Diagram
4. How many levels are there in specification review?
Ans: two levels
5. What we are avoiding during flowcharting?
Ans: Avoid crossed flow
6. Which symbol is used to represent an external entity?
Ans: Square
7. How many classes are there in data items?
Ans: Three classes.
8. Which description include in name of entity?
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Ans: External entities.
9. How many types of relationships are there in e-r diagram?
Ans: Three.
10. Which symbol is used to represent relationship in e-r diagram?
Ans: Diamond symbol
2 MarksQuestions
1. Mention types of feasibility study.
Ans: Technical feasibility
Operational feasibility
Economic feasibility
Social feasibility
Management feasibility
Legal feasibility
Time feasibility
2. What is cost-saving benefit?
Ans: Cost-savings benefits lead to reductions in administrative and operational costs.
3. What is functional requirement?
Ans: Functional requirements are the activities that system must perform that are the
business uses to which the system will be applied.
4. What is software requirement specification?
Ans: A software requirement specification is a requirements specification for a
software system. It is a complete description of the behaviour of system to be
developed.
5. List types of flowchart.
Ans: System outline chart
System flowchart
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Computer run flowchart
Computer procedure flowchart or program flowchart
6. What is the purpose of DFD?
Ans: Provide a graphic tool which can be used by the analyst to explain his
understanding of the system to the user and they can be readily converted into a
structured chart which can be used in design.
7. What is data structure?
Ans: A group of data elements handled as a bunch is a data structure.
8. Define data dictionary.
Ans: A data dictionary is created to define the contents of each data flow, each data
store, each process to avoid ambiguity or confusion about what particular data is
collected and stored.
9. Define E-R diagram.
Ans: An entity-relationship diagram is to facilitate communication between the
database designer and the end user during the requirements analysis.
10. What is relationship in e-r diagram?
Ans: A relationship is a meaningful association or linkage or connection between
entities.
5 Marks Questions
1. Discuss the steps in feasibility study.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Ans: Total seven steps are in feasibility study and they are following:
a. Technical feasibility: This is concerned with specifying equipment and
software that will successfully satisfy the user requirement. The technical
needs of the system may vary considerably, but might include:
i. The facility to produce outputs in a given time
ii. Response time under certain conditions
iii. Ability to process a certain volume of transaction at a particular speed
iv. Facility to communicate data to distant location
In examining technical feasibility, configuration of the system is given more
importance than the actual make of hardware. The configuration should give
the complete picture about the system’s requirements: how many workstations
are required, how these units are interconnected so that they could operate and
communicate smoothly.
b. Operational feasibility: It is mainly related to human organizational and
political aspects. The points to be considered are:
i. What changes will be brought with the system?
ii. What organizational structures are disturbed?
iii. What new skills will be required? Do the existing staff member have
these skills?
iv. If not can they be trained in due course of time?
Generally project will not be rejected simply because of operational
infeasibility but such considerations are likely to be critically affected the
nature and scope of the eventual recommendations. This feasibility study is
carried out by a small group of people who are familiar with information
system techniques.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
c. Economic feasibility: Economic analysis is the most frequently used technique
for evaluating the effectiveness of a proposed system. More commonly known
as cost benefits analysis the procedure is to determine the benefits and savings
that are expected from a proposed system and compare them with costs.
d. Social feasibility: Social feasibility is a determination of whether a proposed
project will be acceptable to the people or not. This determination typically
examines the probability of the project being accepted by the group directly
affected by the proposed system change.
e. Management feasibility: It is a determination of whether a proposed project
will be acceptable to management. If management does not accept a project or
gives a negligible support to it the analyst will tend to view the project as a
non-feasible one.
f. Legal feasibility: Legal feasibility is a determination of whether a proposed
project violates on known acts, statutes, as well as any pending legislation.
Although in some instances the project might appear sound, on closer
investigation it may be found to violate on several legal areas.
g. Time feasibility: Time feasibility is a determination of whether a proposed
project can be implemented fully within a stipulated time frame. If a project
takes too much time it is likely to be rejected.
2. ‘Interviewing is the most productive fact finding technique for a system analyst’.
Explain.
Ans: This method is used to collect the information from groups or individuals. By
studying this organisation chart, the analyst can confidently schedule interviews with
key personnel involved with the system. There should be preliminary interviews.
Later he will conduct a detailed interview with all the people who actually operate the
system. Not only will these people use the newly developed system but they also may
be the ones most afraid of change especially if they feel the computer might replace
them. For such king of situations brainstorming techniques is used. Brainstorming
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
techniques is used for generating new ideas and obtaining general information
requirement. A participant is asked to define ideal solutions and then the most feasible
solution is selected. This method is appropriate for bringing out non conservative
solution to the problem.
The following questions can help accomplish this goal.
1. Who is involved with what you do?
2. What do you do?
3. Where do you do it?
4. When do you do it?
5. Why do you do it the way you do?
6. How do you do it?
7. Do you have suggestions for change?
Interviews help gather vital facts about existing problems such as lack of quality
control or sufficient security, but they also allow the analyst to involve people in
change, easing them into it. After all it is the user’s system, not the analyst’s.
The information collected is quite accurate and reliable as the interviewer can clear
and cross check the doubts there itself. This method also helps gap the areas of
misunderstandings and help to discuss about the future problems.
3. What is cost-benefit analysis?
Ans: Since cost plays quite an important role in deciding the new system, it must be
identified and estimated properly. Costs vary by type and consist of various distinct
elements. Benefits are also of different type and can be grouped on the basis of
advantages they provide to the management. The benefits of a project include four
types:
i. Cost-savings benefits
ii. Cost-avoidance benefits
iii. Improved-service-level benefits
iv. Improved-information benefits
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Cost-savings benefits lead to reductions in administrative and operational costs. A
reduction in the size of the clerical staff used in the support of an administrative
activity is an example of a cost-saving benefit.
Cost-avoidance benefits are those which eliminate future administrative and
operational costs. No need to hire additional staff in future to handle an administrative
activity is an example of cost-avoidance benefits.
Improved-service level benefits are those where the performance of a system is
improved by a new computer-based method. Registering a student in fifteen minutes
rather than an hour is an example of this third type of benefit.
Improved-information benefits are where computer based methods, Icad to better
information for decision making. For example a system that reports the most-
improved fifty customers, as measured by an increase in sales is an improved-
information. This information makes it easier to provide better service to major
customers.
4. Write a note on system requirement specification.
Ans: In software engineering this categorization is useful because only functional
requirements can be directly implemented in software. The non-functional
requirements are controlled by other aspects of the system. For example in a computer
system reliability is related to hardware failure rates and performance is controlled by
CPU and memory. Non-functional requirement can in some cases be decomposed into
functional requirement for software. For example a system level non-functional safety
requirement can be decomposed into one or more functional requirements.
A software requirement specification (SRS) is a requirements specification for a
software system. It is a complete description of the behaviour of a system to be
developed. It includes a s set of description of steps or actions between a user and a
software system which lead the user towards something useful. The user might be a
person or an external software system or manual process. It is a software modelling
techniques that helps developers determine which features to implement and how to
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
gracefully resolve errors. The specifications also describe all the interactions the users
will have with the software.
The most general organization of an SRS is as follow:
1. Introduction
a. Purpose
b.Scope
c. Definitions
d.System overview
e. Reference
2. Overall Description
a. Product perspective
b.Product functions
c. User characteristics
d.Constraints, assumptions and dependencies
3. Specific Requirements
a. External interfaces
b.Functions
c. Performance requirements
d.Logical database requirements
e. Design constraints
5. Explain data flow diagram with logical DFD and physical DFD.
Ans: Armed with interview results, tabulated questionnaires and experience through
personal observations the analyst is ready to describe the current system in narrative
form, with a data flow diagram or with a system flowchart. Data flow diagrams are
most commonly used way of computing the process of current and required systems.
Data flow diagram is a graphical aid for defining systems inputs, procedures and
outputs. It represents flow of data into, around and out of a system. The DFDs are
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
used in modern method of system analysis. They are simple to the extent that the
types of symbols and rules are very few. DFDs serve two purposes:
Provide a graphic tool which can be used by the analyst to explain his
understanding of the system to the user.
They can be readily converted into a structured chart which can be used in
design.
Physical DFD: It is an implementation dependent view of the current system showing
what tasks are carried out and how they are performed. It shows how the various
functions are performed and who does them.
The most comprehensive and useful approach to developing an accurate and complete
description of the current system is first developing a physical DFD.
Logical DFD: It is an implementation dependent view of system, focusing on the flow
of data between processes without regard for the specific devices, storage locations or
people in the system.
6. Describe data dictionary.
Ans: Data flow diagrams consists of the names of major elemetns like data flows,
processe and data stores but does not provide any further information about these
major elements. The following questions are often asked.
What do individual data flows actually represent?
How does the client know what a Data Flow name means?
How do analysts and clients know they are talking about the same data
flowing around an organisation?
A data dictionary provides the answers. Data dictionary contains the information
about the data of a system. There is an entry in the data dictionary to every element of
DFD. Thus DFDs and DDs complement one another. A data dictionary describes the
data items found in data flow diagrams and entity relationship diagrams. It is
maintained and expanded throughout the entire system analysis and design process.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
A data dictionary is created to define the contents of each data flow, each data store,
each process to avoid ambiguity or confusion about what particular data is collected
and stored. Also the structures and elements are organised alphabetically in a
document called the data dictionary. There is only one entry for each name used. For
each data element data flow or data store similar information is documented.
Data dictionary include
The name of the item
Description or purpose
Data type (alphabetical, numeric, decimal)
Data length (number of characters including spaces, or decimal points)
Mandatory characters
Display (0 or 2 decimal places)
Example and often statements about where each data element appears
within the data modelling diagrams
Unit – 3
1 Marks Questions
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
1. How many types of statements used in structure English?
Ans: Three
2. Write the full form of:
a. UNF Un-normalized Form
b. FNF First Normal Form
c. SNF Second Normal Form
d. TNF Third Normal Form
e. SE Structured English
f. RFP Request For Proposal
3. Which kinds of module obtain information from their subordinates?
Ans: Input module
4. What involves first in system design?
Ans: Logical design
5. Who is partitioning of the system into black boxes?
Ans: Modularity
6. Which symbol is used to avoid crossing line in the chart?
Ans: Connectors symbol
7. How many types of classification are available in form?
Ans: three
8. Which type of coupling share a common area of main memory?
Ans: Common coupling
9. How many steps are there in transaction analysis?
Ans: seven steps
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
10. What is the first step of requirement?
Ans: Requirement analysis
2 Marks Questions
1. Define normalization.
Ans: Normalization is a formal process for determining which fields belong in which
tables in a relational database. It is the process of simplifying the relationship between
data elements in a record.
2. What is a sequential structure?
Ans: Sequential structure is single declarative statements that denote a single step or
action in a process.
3. What is structured programming?
Ans: The structured programming philosophy aims to provide a well-defined, clear
and simple approach to program design.
4. Mention types of module.
Ans: Input module
Output module
Transform module
Co-ordinate module
Composite module
5. What is the use of system structure?
Ans: The use of structuring permits decomposition of a large system into smaller,
more manageable units with well-defined relationships to the other units in the
system.
6. What is the purpose of code design?
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Ans: The purpose of codes is to make the task easy for identification and retrieval of
items of information.
7. List any four types of file.
Ans: Master file
Transaction file
Table file
Report file
Back-up file
Archival file
Dump file
Library file
8. Define temporal cohesion.
Ans: A temporally cohesion module is one whose elements are involved in activities
that are related in time.
9. Define transform analysis.
Ans: Transform analysis is a strategy for deriving initial structured designs that
usually are good in modularity and generally require only a modest restructuring to
arrive to a final design.
10. What is RFP?
Ans: A request for proposal is a report by the user requesting selected vendors of
hardware and software to bid on a proposed system.
5 Marks Questions
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
1. Write a short note on guidelines for constructing a decision table.
Ans: To construct a Decision Table:
1. Draw boxes for the top and bottom left quadrants. List the conditions in the
top, left quadrants. When possible, phrase the conditions as questions that can
be answered with a Y for yes and N for no. this type of decision table is
known as a limited entry table. When decision table requires more than two
values for a condition it is known as an extended entry table.
2. List the possible actions in the bottom, left quadrant.
3. Count the possible values for each condition and multiply these together to
determine how many unique combinations of conditions are present. Draw one
column in the top and bottom right quadrants for each combinations.
4. For example, if there are two conditions and the first conditions has two
possible values while the second has three possible values, draw six (2*3)
columns.
5. Enter all possible combinations of values in the columns in the top, right
quadrant of the table.
6. For each column mark an X in the bottom, right quadrant in the appropriate
action row. The X marks the intersection between the required action and each
unique combination of condition values.
7. Ensure that the Table is complete.
2. Illustrate advantages and disadvantages of structured programming.
Ans:
Advantages:
1. Clarity: structured programs generally have a clarity and logical pattern to
their control structure which is a great advantage throughout the process of
design.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
2. Productivity: programmers who use structured techniques show a significant
increase in instruction coded per man-hour of work.
3. Fixed style: structured programming tends to limit the coding to a few straight
forward design approaches. This helps the designer and the associates and
successors in understanding the design.
4. Maintenance: the clarity and modularity of a structured design is of great help
in finding an error and redesigning the offending section of code.
5. Redesign: most large software products are subject to occasional redesign. The
clarity and modularity of structure design maximizes the amount of code
which can be reused.
Disadvantages:
1. Reactionary attributes: there are many programmers who hesitate to learn
new techniques.
2. Inefficiency: in certain cases it can be clearly shown that structured
programs require more memory.
3. Non structured languages: many current languages do not have all the
control concepts needed for structured programming and thus require some
additional effort to simulate missing construct.
3. Explain the key elements of structure charts.
Ans: In structure design the results of structured analysis which are expressed as data
flow diagrams are transformed into a structure chart. A structure chart represents the
software architecture that is various modules making up the system, the dependencies
of the modules and the parameters that are passed among different modules.
The structure chart mainly depends on the module structure of software and the
interaction among the modules. Some of the elements or symbols commonly used in
the structure chart given below.
Module: A module is shown as a rectangular box with its name inside.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Linking modules: the two modules are connected by an arrow. The action of the
connecting arrow indicates that during program of the connecting arrow.
Calling module
Called module
Data flow arrows: data flow arrow represent the named data moving from one module
to the other in the direction of the arrow.
While data is processed, a flag is not really processed.
In fact data relates to the problem itself for example,
GET. Student details is directly related to fine student
name, that is, a data has more relevance to the outside
world. On the other hand a flag is one step removed
from the problem world. For example, the flag validates
whether the Roll No. is a valid roll no., it communicates
information about a piece of data.
Library Modules: Library comprises of the frequently called modules and is usually
represented by rectangle with double edges. It is also named as predefined module.
Selection / Decision Representation: The diamond symbol represents that one module
or several modules connected with the diamond symbol is / are invoked depending
upon the condition satisfied.
Compute Total
marks of the
student
Get student details
Find student name
Get student
details
Find student
name
Print student
identity card
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Representation of Iteration: A loop around the control flow arrows denotes that the
respective modules are invoked iteratively.
Module C is invoked repetitively
From Module A
Connectors and page continuity: Connectors are
normally used to avoid crossing line in the chart.
4. State the design principles of output design.
Ans: A system designer should try to incorporate the following design principles for
output.
1. Principle of starting with output.
2. Principle of acceptability of reports.
The end user has to accept these outputs since they are the people who will be
using it for their desired purpose. Hence it is ideal to have their participation in
the output design phase for the greater success of the system.
3. Principle of timely output.
A stich in time saves nine. This is very true for information output. An output
in time can help to make better decisions.
4. Principle of enhancing the decision making process.
After all the systems are designed for the manager and the other personnel to
make better decisions. Naturally the output report must be prepared keeping
this principle constantly in mind.
Module A
Module B
Module C
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
5. Principle of practicing ‘Management by Exception’. Management controls
through completed tasks. The report should be designed not only for what has
happened but for what deviations were there from actual plans. Significant
deviations as and when it occurs should be brought to the notice of the
management through exception reports of the system.
6. Principle of duplication reduction in reports.
Duplication or unnecessary information in the reports should be minimized to
the extent possible. This automatically reduces the cost of processing.
7. Principle of simplicity in reports.
Reports should be concise, simple and self-explanatory.
5. Write a note on principles of coupling.
Ans: The coupling between modules is to be reduced that is the complexities of the
connections between the modules must be as less as possible. Yourdon and
Constantine (1978) gave the following principles.
1. Create narrow connections: An example of narrow coupling would be a
state in which the pair of modules communicates only two pieces of data from
one to the other.
This is in contrast to board connections in which a pair of modules may be
communicating large pieces of data back and forth.
2. Direct connections: The interface between two modules is better
understandable if a person can comprehend it directly without having to refer
to several other pieces of information. The reason for this insistence for human
comprehension is because people ware cost of computer system happens to be
very large. Hence, we are talking about issues of human here.
Module A Module B
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
3. Local connections: In the case of local connections, all the information
required to understand the connection between two modules is presented with
a connection itself.
4. Obvious connections: Obvious connection is one, which is easier to
understand. The obvious connection is the dream of any designer, but
obscurity enters as the complexities of the problem under consideration
increases.
5. Flexible connections: If the mechanism to make the connation between the
modules is rigid then it is very difficult for making changes or to hook a
module to module other than those to which it is already attached. Hence the
rigid connection leads to more difficulties for the system maintenance.
Hence we look forward to a narrow, direct, local, obvious and flexible
connection in order to reduce the cost of system maintenance.
6. Explain software selection with its criteria for selection.
Ans: Software selection is a critical aspect of system development. There are two
ways of acquiring software: custom – made or ‘off-the-shelf’ package today, there is
greate demand for these packages because they are quite cheap. There are other
benefits also.
i. A good package can get the system running quickly.
ii. MIS personnel are released for other projects.
iii. ‘Home-grown’ software can take more time and its cost cannot be
predicted.
iv. Package can be tested before purchasing it.
Some of drawbacks of software packages are:
i. These packages may not meet user requirements in all respect.
ii. Extensive modifications of a package usually results in loss of the
vendor’s support.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
It can be observed that price alone cannot determine the quality of software. A
systematic review is crucial for selecting the desired software. Prior to selecting the
software, the project team must set up criteria for selection. The criteria for software
selection are:
a. Reliability: gives consistent results without any failure for a specified
time period.
b. Functionality: functions to standards.
c. Capacity: satisfies volume requirements of the user.
d. Flexibility: adapts to the changing needs.
e. Usability: is user-friendly.
f. Security: maintains integrity and prevents unauthorised user.
g. Performance: delivers the results as expected.
h. Serviceability: has good documentation and vendor support.
i. Ownership: has right to modify and share use of package.
j. Minimal costs: is justified and affordable for intended applications.
Unit – 4
1 Marks Questions
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
1. Who consist of multiple test cases?
Ans: Test suite
2. Write the full form of
a. FP Function Point
b. QA Quality Assurance
c. SQA Software Quality Assurance
d. LOC Line of Code
e. V&V Verification & Validation
3. What is another name of black box testing?
Ans: Functional testing
4. Which testing is also called component testing?
Ans: Unit testing
5. What is the major aspect of conversion?
Ans: The preparation of the system site.
6. Who consumes a large portion of conversion time?
Ans: Data and File preparation
7. Which type of documentation describes overall design?
Ans: System documentation
8. Which maintenance technique includes housekeeping task?
Ans: Adaptive maintenance
9. Who is developed gantt chart?
Ans: Henry L. Gantt
10. Who suggest W5HH principle?
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Ans: Barry Bohen
2 Marks Questions
1. Define failure.
Ans: The inability of a system or component to perform its required functions within
specified performance requirements is known as failure.
2. What is validation?
Ans: Validation refers to the process of using software in a live environment in order
to find errors.
3. What is beta testing?
Ans: when a system is to be tested as a software product, a testing process called beta
testing.
4. Mention types of changeover.
Ans: The parallel-system method
The dual system method or Phase-in method
The direct method
Pilot approach
5. Define user training.
Ans: User training deals with the operation of the system itself, with proper attention
given to data handling techniques.
6. List documentation methods.
Ans: System documentation
Programming documentation
Operations documentation
User documentation
Management documentation
Training documentation
Implementation plans
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Appendix
7. What is change management?
Ans: Change management is the process of planning and coordinating the
implementation of all changes any planned alteration.
8. Define personal requirements plan.
Ans: Under this plan, all activities involving system personnel and staff members
associated with the system are evaluated.
9. What is risk management?
Ans:Risk management is the process of measuring or assessing risk and then
developing strategies to manage the risk.
10. Define SQA.
Ans: Software quality assurance encompasses the entire software development
process, which includes processes such as requirements analysis, software design,
coding, source code control, code reviews, testing, release management and product
integration.
5 Marks Questions
1. Explain system testing pieces.
Ans: Testing is necessary because the existence of faults in software is inevitable.
Beyond fault-detection the modern view of testing holds that fault-prevention like
early detection/removal from requirements designs etc. through static tests is at least
as important as detecting faults in software by executing dynamic tests. Software
testing process can produce several by-products produced during the development of
software. They are as under:
Test Case: It is a set of input values, test execution preconditions, expected
results and execution post conditions developed for a particular objective or
test condition, such as to verify compliance with a specific requirement. Test
cases are often referred to as test scripts, particularly when written.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
Test Script: It is automated short program written in a programming language
used to test part of the functionality of a software system. It is the computer
readable instructions that automate the execution of a test procedure. Test
scripts may be created or automatically generated using test automation tools,
programmed using a programming language, or created by a combination of
recording, generating, and programming.
Test Scenario: It is a document specifying a sequence of actions for the
execution of a test.
Test Plan: It is an automated testing tool for testing interactive web systems.
Test Harness: It is a system of test drivers and other tools to support test
execution.
Test Suites: a test suite consists of multiple test cases i.e procures and data
that are combined and often managed by a test harness.
2. Explain direct and pilot conversion.
Ans: Conversion is the process of changing from the old system to the new one.
The Direct Conversion Method: This method converts from the old to the new
system abruptly, sometimes over a weekend or even overnight. The old system works
till a planned conversion day when it is replaced by the new system. There are no
parallel activities. There is no failing back to old system. But this method requires
careful planning and training sessions must be scheduled and maintained. In the case
of hotel reservation, airline reservation etc this method is moer suitable. The
organization relies fully on the new system. The main disadvantages of this approach
are no other system to fall back on, if difficulties arise with new system. Secondly
wise and careful planning is required.
Pilot Approach Method: Pilot approach is often preferred in the case of the new
system which involves new techniques or some drastic change in organization
performance. In this method a working version of the system is implemented in one
part of the organization such as in a particular department. The users know that it is
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
pilot testing and hence they can experiment to improve the system. When the system
is deemed complete it can be installed throughout the organizations either by direct
method or by phase-in method. This approach provides experience and live test before
implementation.
3. Write a note on need of documentation.
Ans: Preparation of documentation is quite important as it depicts what the system is
supposed to be and how it should perform its functions. It illustrates both technically
and economically how a system would better serve the objective and goals of the
company. Documentation improves overall operation in addition to management and
audit control. The purposes for documentation are:
1. Without proper documentation, effective communication of who, what ,
where, when and how of the system is difficult.
2. Audit ability and control are difficult to achieve without documentation.
3. If changes are made then it will not be clear to those who try to comprehend
the system later on.
4. While converting from one system to another system if there is no proper
documentation, there will be chaos.
It also serves the following purposes:
i. Reviews the progress or development of application software.
ii. Communicates facts about system to users.
iii. Communicates between personnel working on a development project.
iv. Provides necessary guidelines to allow correction or revision of a system
or its computer programs.
v. Provides operating instruction to users and operating staff.
vi. Assists in the reconstruction of the system in case it is destroyed.
vii. It helps the management to determine if the new design achieves the
objectives of the company within the established constraints and if it is
justifiable from a cost standpoint.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
viii. Documentation serves as a focal point from which the analyst’s design can
be assessed and as a standard to be utilized as a reference once the system
is implemented.
4. Discuss different type of maintenance.
Ans: There are four main types of systems maintenance. They are as follows:
1) Adaptive Maintenance
2) Corrective Maintenance
3) Perfective Maintenance
4) Preventive Maintenance
Adaptive Maintenance: This is performed with a view to keeping the software
current. As internal and external business conditions change, the data-processing
requirement also changes. Naturally, an organization must modify its operational
software accordingly.
The adaptive maintenance begins with the request for service from the user. This may
be assessed by a committee. Once approved it goes to the maintenance programmers
who treat this as a mini systems development assignment. The maintenance
programmer must define system modification requirements, after the record
modifications to terms used in constructing system diagrams and input/output
formats.
In addition, adaptive maintenance also includes other housekeeping tasks. This is
done with the help of housekeeping utility programs which include file copying and
back-up, purging in active customers, file reorganization, file conversion, table update
to include employees pay rates, revised tax rates, depreciation rates etc.
Corrective Maintenance: This is performed in response to software failure. The
errors that occur can be classified as:
i. Program logic errors such as inadequate data validation procedures,
data types error, inconsistent use of variable names, incomplete logical
paths etc.
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
ii. System errors may consist of hardware problem or with software
design.
iii. Operations error can be traced to computer operations, computer
schedules and members of the operating staff. The errors may be
loading incorrect tap file, improper back up of computer files failure to
change printer ribbons etc.
iv. User errors can be directly traced to user groups. These errors suggest
deficiencies in training demonstration and user guides.
A solution to this is in form of module repairing which is the redesign of error
prone modules is an implemented software system.
Perfective Maintenance: This is performed to improve or maintain program
efficiency. Modifying program data structures is one way to improve overall
program efficiency. Backing records, storing recomputed results, and eliminating
temporary work files are examples of ways to shorten processing run-times.
Another way to improve efficiency is to modify expensive parts of a system,
improving loops, test comparisons; calls to external procedures and evaluation of
algebraic expressions illustrate ways of improving overall of processing.
By working more on adaptive and perfective maintenance tasks and less on
corrective maintenance programmer strikes toward corrective the ideal.
Preventive Maintenance: Similar to perfective maintenance, preventive
maintenance involves changing some aspect of the system to prevent failures. It
may include the addition of type checking, the enhancement of fault handling, or
the addition of a ‘catch-all’ statement to case statement, to make sure the system
can handle all possibilities. Preventive maintenance usually results when a
programmer or code analyser finds an actual or potential fault that has not yet
become a failure and takes action to correct the fault before damage is one.
5. Explain project management with its tools.
Ans: Project management involves the planning, monitoring, and control of people,
process, and events that occur during software development. Software design
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
&development project needs to be managed because it is a complex undertaking with
a long duration time, substantial Human Resource and financial investments. Project
management spans the entire life cycle of a project. A tool for effective project
management is essential for the success of a large project. The project management
tool could very well be integrated in a CASE tool kit, because much of the
information required for Project Management is available at the various stages of
Software Development Life Cycle.
Some tools that can be used for project management are:
1. Bar Chart Drawing: A tool for drawing bar charts can be effectively used for
planning time, cost and resources. Such a tool facilitates updating changes to
plans, and maintaining records of variance between plan and actual.
2. Skills Inventory: A skills inventory system can be very useful for selection of
suitable manpower for a project.
3. Project Costing: The cost of the project may be estimated. With these
estimates available, and with manpower allocation using a skills inventory
system, manpower costing can be easily automated. Costing of other resources
can also be estimated from the drawing tool. Any records maintained here can
be very useful for sizing and estimating future projects.
4. Software Metrics: A tool for maintenance of software metrics can record
errors detected at each stage of testing for future risk prediction.
5. Quality Assurance Calendar: A tool could help set up a quality assurance
calendar. This tool could also maintain QA.
6. Discuss the four P’s.
Ans:
B.V. Patel Institute of Business Management, Computer & Information
Technology, UkaTarsadia University
Question Bank 030100603: Software Engineering
1. People: This is the most important element of a successful project. They are
players like senior managers, technical mangers, practitioners, customers, end-
users. The activities are recruiting, selection of software developers,
performance management of the team members, training, compensation,
career development, organization, work design, team/culture development, etc.
They use team leadership model for motivation, organization, skill usage. The
characteristics of effective project managers are problem solving, managerial
identity, achievement, influence and team building.
2. Product: It is the software to be built. It include product objectives, scope of
the software in the context of information objectives, functions and
performance of the software, alternative solutions of the software problems
and problem decomposition i.e partitioning or problem elaboration. Here focus
is on functionality to be delivered and the process used to deliver it.
3. Process: It is the framework activities populated with tasks, milestones, work
products and QA points. Process model chosen must be appropriate for the
customers and developers, characteristics of the product, and project
development environment. Project planning begins with combining the
product and the process. Each function to be engineered must pass though the
set of framework activities defined for a software organization. The job of the
software engineer is to estimate the resources required to move each function
through the framework activities to produce each work product.
4. Project: This is planning, monitoring, controlling of software. The activities
include the start of the project on the right foot, maintain force, track progress
of the software development, make smart decisions and conduct a post-
mortem analysis. Here all work required to make the product a reality.