CS-31001 (Se) - CS Mid Sept 2024

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

AUTUMN MID SEMESTER EXAMINATION-2024

School of Computer Engineering


Kalinga Institute of Industrial Technology, Deemed to be University
Software Engineering
[CS 31001]
Time: 1 1/2 Hours Full Mark: 20
Answer Any four questions including question No.1 which is compulsory.
The figures in the margin indicate full marks. Candidates are required to give their answers in their
own words as far as practicable and all parts of a question should be answered at one place only.

Q1. Answer all the questions: (1 X 5)

A) Differentiate between Exploratory Style and modern Style of Software


Development.
Solution:
Exploratory program development style: It refers to an informal development style or builds
and fix the style in which the programmer uses his own intuition to develop a program rather
than making use of the systematic body of knowledge of the software engineering discipline.
This style of development gives complete freedom to programmers to choose any activities
which they like to develop software. It does not offer any rules to develop any software.

Modern style of software development: It follows proper sequence of software development


life cycle phases i.e. Requirement Analysis, Design, Coding, Testing, Implementation,
Maintenance etc for a valid software development life cycle model..

B) What is the significance of abstraction in OOP with respect to designing an


object-oriented system?
Solution:
While designing an O-O based system applying the modular hierarchy of various modules of
the system, abstraction helps in achieving this modularization and maintaining the hierarchy.

C) Highlight characteristics of Agile Software Development Process to which you can


attribute its better success of developing a software in lesser time with modest
availability of resources in comparison to traditional SDLC Model(s).
Solution:
1. Less Documentation Needed:Agile models have small teams of six to eight members
associated with the project for the entire project duration, therefore everyone is well aware of
the objectives of the project and their individual responsibilities. Due to this less time is spent
for preparing documentation.
2.Continuous customer feedback:
3. No additional phase required for customer review:
4. Efficient and responsible team members take ownership of their work and enhance quality
through democratic work culture and refactoring.

D) What is meant by phase containment of errors in Software Engineering?


Solution:
The principle of detecting errors within a software development phase as close to its point
of introduction as possible
E) What are meant by the terms Risk and Risk Mitigation in Software Development?
Solution:
Risk: Any adverse circumstance that might hamper successful completion of a software
project.

Risk Mitigation: By anticipating a future probable risk, taking necessary preventive or


alternative route/action so that risk can be avoided or its detrimental effect on project can be
minimized.

Long Questions (Attempt any 3 out of 4 questions provided below):

Q2.
a) What is the major change introduced in Iterative Waterfall Model that was not
present in Classical Waterfall Model and how does it benefit the overall SDLC process?
Solution:
Classical waterfall model is idealistic. It assumes that no defect is introduced (unintentionally)
during any development phase. But in reality, defects get introduced in almost every phase
of the life cycle. Also, defects usually get detected much later in the life cycle e.g., a design
defect might go unnoticed till the coding or testing phase.

Once a defect is detected, we need to go back to the phase where it was introduced and
redo some of the work done during that and all subsequent phases.

Therefore we need feedback paths in the classical waterfall model. In Iterative Waterfall
Model, at any point we can go back to any previous phase and start doing some reworks in
that phase and all subsequent phases in iterative manner. Hence Iterative Waterfall Model
gives facility to solve any defect introduced in any earlier SDLC phase.

b) What are the major features of Spiral Model, and generally what kind of software
development this Model facilitates?
Solution:
Spiral model consists of multiple loops or iterations. Starting from inner loop, each loop may
represent one SDLC phase (e.g., Requirement Analysis, Design, Construction etc.)l; also each
loop is divided in 4 quadrants - 1st quadrant Objective of the loop or iteration is identified, in
2nd quadrant associated risks and risk mitigation strategies are formulated, in 3rd quadrant
actual execution of the activities for that SDLC phase is carried out, in 4th quadrant the
output of the activities of current iteration or loop are jointly reviewed along wit customer
and plan is made for next iteration activities.

Generally Spiral model is selected for quite complicated software development which
undergoes many iterations and takes substantial amount of time for development
completion (I.e., in one iteration development of entire software is not possible because of
its high level of complexity and dependencies on several dynamic factors, also it may need
continuous risk analysis and risk mitigation strategies).
(3 + 2)
Q3.
a) What does the term Software Crisis indicate? Detail about Software Crisis
situations prevalent in Software Industry.

(b)Mention in detail how Software Crisis affects the software industry and what are
the impacts of this crisis situation.

(c) As per your Idea, what should be resolution approaches for this situation?

Solution:
(a) Considerable deviation of software project plans and their actual executions
characterized by overrun of software projects in terms of its schedule, effort, budget
indicates software crisis. The dynamic situation and lack of control of the execution of
software projects which defy any software project management and planning related rules
are great concerns of IT organizations, and are characteristics of Software Crisis.

(b) High uncertainty of meeting objectives of software projects, achieving its goals and
success, successful completion of the software projects, maintaining profitability of the
projects and organization - all are effect of software crisis on software industry. Client
dissatisfaction, challenges of retaining clients and obtaining their future projects, lack of
predictability of business growth and organization sustainability in dynamic and competitive
business environment - all are caused by the Software Crisis prevailing in the software
industry.

(c) Systematic approach of software development and design, adherence to software


engineering principles, risk identification and mitigation, proper and effective project
planning and management - all these are to be followed rigorously and in true sense to avoid
software crisis situation.

(2 + 2 + 1)

Q4.
Explain how does Structured Analysis and Design differ from Object-Oriented Design?
Which among these 2 different approaches for software development is gaining more
momentum in recent time and why? (3+2)
Solution:
Structure Analysis and Design is process and function based approach. Object oriented
Design is Object based approach.
Structure Analysis and Design focuses on identifying Context Diagram, entities, various level
DFDs, data flows etc. Object Oriented Design focuses on finding out Class Diagram, Object
Diagram, State Transition Diagrams, Sequence Diagrams, Activity Diagrams, Deployment
Views etc.

In recent decades Object Oriented Analysis and Design has got more prominence as it
represents the real word with existence of numeral objects and interaction between
them while doing Software Analysis and Design, classify the objects in proper classes, try
to leverage re-usability of behaviour for different hierarchy of objects/classes,
implement important properties like polymorphism, abstraction, inheritance etc.
Q5.
Answer either part A or part B of the following question:
A. Consider a software called Automobile Spare Parts Shop Automation Software
(AAS) which is required by a retail automobile spare parts shop. The retail shop deals
with a large variety of automobile spare parts procured from various manufacturers.
The shop owner maintains different parts in wall mounted and numbered racks.
Whenever new supplies arrive, the shop owner should be able to update the
inventory.
Whenever any sales occurs, the shop owner would enter the code number of the
parts and the corresponding quantities sold. AAS should print out the cash receipt,
and adjust the inventory.
The computer should also generate report of the revenue for any specified day
and month, when queried by the owner.
Draw the use-case diagram for the above software.
Draw the sequence diagrams for any three use cases.
Draw the class diagram.

Solution:
.
OR

B. Consider a software project scenario that has the following activities and their
duration in weeks.
Activity Duration Immediate Predecessor (s)
A 4 -
B 5 -
C 3 B
D 12 A
E 6 C
F 9 B
G 4 E,F

(i) Draw the activity network diagram.


(ii) Identify the critical path and slack time for all paths.
(iii) Find the critical path (2 + 1.5 + 1.5)

Solution:

I) Refer to Activity Network Diagram drawn above


Ii) Three possible paths (A-D of 16 weeks; B-C-E-G of 18 weeks; B-F-G of 18 weeks).
There should be two critical paths B-C-E-G and B-F-G as both paths have same
duration i.e., 18 weeks. Slack time for the CPs will be 0 and for path A-D, it
will be 2 weeks.
Iii) There should be two critical paths B-C-E-G and B-F-G

You might also like