Escolar Documentos
Profissional Documentos
Cultura Documentos
CSE 314
SUBMITTED TO:
SUBMITTED BY:
KULWINDER KAUR
ROLL NO RB1801A03
SECTION B1801
Advantages: Can be used when customer is not sure about what he wants, Faster way of
finalizing the requirements, Useful for new technologies and domains
3) Iterative Model
4) Spiral Model
1) An evolutionary software process model that couples the iterative nature of prototyping
with the controlled and systematic aspects of the linear sequential model.
3) At final stages, more complete versions of the engineered system are produced.
4) The project manager adjusts the planned number of iterations required to complete the
software.
ANS: Software analysis. The requirements gathering process is intensified and focused
specifically on software. To understand the nature of the program or process to be built, the
software engineer ("analyst") must understand the information domain for the software,
necessary before implementing them in software. Requirements engineering
activities result in the specification of software’s operational
characteristics (function, data, and behavior), indicate software's interface
with other system elements, and establish constraints that software must
meet. Requirements analysis allows the software engineer (sometimes
called analyst in this role) to refine the software allocation and build
models of the data, functional, and behavioral domains that will be
treated by software. Requirements analysis provides the software
designer with a representation of information, function, and behavior that
can be translated to data, architectural, interface, and component-level
designs. Finally, the requirements specification provides the developer
and the customer with the means to assess quality once software is built. The study
understanding of several needs of the client and the users so that the software can be built in
away that all the needs shall be known as analysis. The analyst, who is responsible for the
specifications of the software, must be totally aware of the business processes of the
organization. This is an important factor because if the analyst has the knowledge about the
business processes only then he can change them into the specified requirements or we can
say the required features of the software and the designers can get the same in the software
The analyst is supposed to have knowledge about the questions the clients has and users to
know about how the business processes are going in the organization
QUES 3 Suppose you are a software engineer and a customer defines a set of general
objectives for software but does not identify detailed input, processing, or output
requirements. In other cases, you may be unsure of the efficiency of an algorithm, the
adaptability of an operating system, or the form that human/machine interaction should
take. Which software model, you should use to fulfill the customer requirement.
Elaborate the model properly.
ANS: Prototype Model fulfills the requirements of the customer. The prototyping paradigm
begins with requirements gathering. Developer and customer meet and define the overall
objectives for the software, identify whatever requirements are known, and outline areas
where further definition is mandatory i.e. make a rough prototype. A quick design then
occurs i.e. design and implementation will occur after making the rough prototype. The
quick design focuses on a representation of those aspects of the software that will be visible
to the customer/user like input approaches and output formats. The quick design leads to the
construction of a prototype. The prototype is evaluated by the customer/user and used to
refine requirements for the software to be developed. Iteration occurs as the prototype is
tuned to satisfy the needs of the customer, while at the same time enabling the developer to
better understand what needs to be done.
Prototyping is the process of quickly putting together
a working model in order to test various aspects of a design, illustrate ideas or features and
gather early user feedback. Prototyping is often treated as an integral part of the system
design process, where it is believed to reduce project risk and cost.
1) Developers build a prototype during the requirements phase
2) Prototype is evaluated by end users
3) Users give corrective feedback
4) Developers further refine the prototype
5) When the user is satisfied, the prototype code is brought up to the standards needed for a
final product.
Part B
QUES 4: “Fixing a requirements error after delivery may cost up to 100 times the cost
of fixing an implementation error”. This statement is either true or false. If it is false,
modify this statement. If it is true, explain it with proper example.
Phase Cost(person-hour)
Requirement 2
Design 5
Coding 15
Testing 50
Maintenance 150
By investing additional 100 person hours in the requirement phase, an average of 50 errors
can be detected and removed.
If the error is not solved at the requirement phase then cost of fixing the error after the later
phases is given as:
In other words by investing additional 100 person hours in the requirement phase the
development cost can be reduced by 1152 person hours- a net reduction in cost of 1052
person hours
ANS: Requirements analysis in software engineering encompasses those tasks that go into
determining the needs or conditions to meet for a new or altered product, taking account of
the possibly conflicting requirements of various holders such as beneficiaries or users.
ANS: No, I do not support the statement. The graphical methods have their own advantages
over the textual methods. The customer requirements are what the customer needs and how
the project will serve those needs. Requirements represent a detailed breakdown of the
customer’s expectations for the project, as well as how the project organization will serve
those requirements.
The two graphical methods are:
Data flow diagrams (dfd) and Entity –Relationship (ER) diagram are the validated methods.
The textual forms such as SRS etc acts as legal documents but to give better presentations
and understanding to the clients by the Software developers of the companies these two
method can be used.
The result is a series of diagrams that represent the business activities in a way that is clear
and easy to communicate. A business model comprises one or more data flow diagrams (also
known as business process diagrams). Initially a context diagram is drawn, which is a simple
representation of the entire system under investigation. This is followed by a level 1 diagram;
which provides an overview of the major functional areas of the business. Identifying the
existing business processes, using a technique like data flow diagrams, is an essential
precursor to business process re-engineering, migration to new technology, or refinement of
an existing business process. Data flows and resource flows are allowed between external
entities and processes. Data flows are also allowed between different external entities.
However, data flows and resource flows are not allowed between external entities and data
stores.
ER DIAGRAM
An entity-relationship (ER) diagram is a specialized graphic that illustrates the
interrelationships between entities in a database. ER diagrams often use symbols to represent
three different types of information. Boxes are commonly used to represent entities.
Diamonds are normally used to represent relationships and ovals are used to represent
attributes.