You are on page 1of 23

Total No. of Questions: 5] [Total No.

of Pages: 4

Institute of Management Studies, Career Development and Research, Ahmednagar


TERM END EXAMINATION FEBRUARY 2023
MCA (Management)
IT13 - Object Oriented Software Engineering
(2020 Pattern) (Semester – I)

Time: 21/2 Hours] [Max. Marks: 50

Instructions to the candidates:


1) All questions are compulsory.
2) For MCQ select appropriate choice from options.
3) Draw neat diagrams wherever necessary.
4) Figures right indicates full marks.

Q.1) MCQ [10]


i) If a system is being developed where the customers are not sure of what they want, the
requirements are often poorly defined. Which of the following would be an appropriate
process model for this type of development?
A) Prototype B) Waterfall
C) RUP D) RAD

ii) Process sequence in RUP development are___


A) Construction, Inception, transition, Elaboration
B) Elaboration, Construction, Inception, Transition
C) Inception, Elaboration, Constraints, Transition
D) Inception, Elaboration, Construction, Transition

iii) Choose a model for a product/project, which has a fixed time frame and has no cost
barriers.
A) Incremental B) Spiral
C) Waterfall D) RAD

iv) Which the process to gather the software requirements from the client, analyze and
document them is known as…..
A) Software system analyst B) User interface requirements
C) Requirement elicitation process D) Requirement engineering process

v) Which diagram is used to show interactions between messages are classified as?
A) Activity B) State Chart
C) Collaboration D) Use Case

1|Page Dr. Mahesh Potdar, IMSCDR, Ahmednagar


vi) ___________diagram is time-oriented?
A) Collaboration B) Sequence
C) Activity D) Deployment
vii) In which model the Project risk factor is considered?
A) Spiral model B) Waterfall model
C) Prototyping model D) Incremental model

viii) ___ is the layer of application functionality that encapsulates all the interactions within
the database.
A) Business layer B) Presentation layer
C) Application layer D) Access layer

ix) Agile Software Development is based on


A) Incremental Development B) Iterative Development
C) Linear Development D) Both Incremental & Iterative Development

x) User requirements are expressed as __________ in Extreme Programming.


A) Scenarios B) Functionalities
C) Implementation tasks D) Case based

xi) ________________ is delivered at the end of the Sprint.


A) A document containing test cases for the current sprint
B) An architectural design of the solution
C) An increment of done software
D) Wireframes designs for User Interface

xii) What is done during a Sprint Review Meeting?


A) The team discusses the improvements that can be applied for the upcoming sprints
B) Inspect progress towards the Sprint Goal
C) Demo of the Increment & Present the Project’s performance to the Stakeholders
D) Discuss the architectural and technical aspects of the project

xiii) In Scrum, when is a Sprint Over?


A) After completing all the Sprint Backlog Items
B) After completing all the Sprint Backlog tasks
C) After completing the final testing
D) When the time box expires

xiv) Which three framework activities are present in Adaptive Software Development (ASD)?
A) Analysis, Design, Coding
B) Requirements gathering, Adaptive cycle planning, Iterative development
C) Speculation, Collaboration, Learning
D) Analysis, Design, Prototyping

2|Page Dr. Mahesh Potdar, IMSCDR, Ahmednagar


xv) Amongst which of the following is a correct sequence of the user interface design
process,
A) Interface analysis and modelling → interface design → interface construction →
interface validation
B) Interface design → interface construction → interface validation → Interface analysis and
modelling
C) Interface construction → Interface design → interface validation → Interface analysis and
modelling
D) Interface validation → Interface design → Interface construction → Interface analysis and
modelling

xvi) Which of the following property of SRS is depicted by the statement: “Conformity to a
standard is maintained”?
A) Correct B) Complete
C) Consistent D) Modifiable

xvii) Identify the term which is known as a variance from software product specifications?
A) Report B) Defect
C) Review D) Requirement

xviii) Which of the following Agile methodology advocates the use of problem domain?
A) Evo B) Scrum
C) Extreme programming (XP) D) Feature-Driven Development (FDD)

xix) Which process model should be used in virtually all situations of web engineering?
A) Incremental Model B) Waterfall Model
C) Spiral Model D) Prototype Model

xx) ___ is a powerful macro substitution and when improperly used can cause serious errors.
A) Abstraction B) Encapsulation
C) Inheritance D) Polymorphism

3|Page Dr. Mahesh Potdar, IMSCDR, Ahmednagar


Q. 2) Prepare SRS in IEEE format for institute’s library process. [8]

Answer:

Front Page of SRS Document:

Software Requirements Specification

For

Library Management System

Prepared by Mr. Ajay

January 30, 2023

Version 1.0

Software Requirements Specification


1. Introduction
1.1 Purpose
This SRS describe the software functional and non-functional requirements for release 1.0 of the
Library Management System (LMS). This document is intended to be used by the members of
the project team that will implement and verify the correct functioning of the system. Unless
otherwise noted, all requirements specified here are high priorities and committed for release 1.0.

1.2 Product Scope


The Library Management System will permit members to Issue/Return Books from the Library.
LMS calculate fine for late submission. LMS provides many reports to the users.

1.3 Definitions, Acronyms and Abbreviations


Term Definition
Member Person who wishes to Issue/Return books from the Library.
Library Staff Helps members during issue/return book process.
SRS Software Requirements Specification
LMS Library Management System

1.4 References
IEEE Std 830-1998 IEEE Recommended Practice for Software Requirements Specifications.
IEEE Computer Society, 1998.

4|Page Dr. Mahesh Potdar, IMSCDR, Ahmednagar


1.5 Overview of Document
st
1 chapter covers introduction.
2nd chapter covers over all descriptions.
3rd chapter covers the external interfaces i.e. user, hardware and software interfaces included in
the Library Management System.
4th chapter covers all the system features.
5th chapter covers non functional requirements i.e. performance, safety, security, quality features

2. Overall Description

2.1 Product Perspective


The Library Management System is a new system that replaces the current manual processes for
issue and return books. The context diagram illustrates the external entities and system interface
for release 1.0. Context diagram give overall view of Library Management System.
Note: In case of web application draw Use Case Diagram

2.2 Product Functions

Context Level Data Flow Diagram for release 1.0 of the Library Management System

2.3 User Classes and Characteristics


1. Member: Who wishes to issue/return books from the Library Management System. There are
about 600 potential members use the Library Management System.
2. Management: Management enter member and book details. Member gives book issue/return
request to management. Management process book return details/fine receipt to member.
Management gives various queries and receive MIS Reports.

2.4 Operating Environment


Hardware Specification:
System : PC
Processor : Pentium 5
Base Memory size : 512 MB RAM (Minimum)
Hard Disk : 80GB
Auxiliary storage medium : Compact disk
Keyboard keys : 107 keys including 12

5|Page Dr. Mahesh Potdar, IMSCDR, Ahmednagar


Monitor : Super VGA 800 * 600
Operating System : Windows 2000
Software : ASP.Net
Database : SQL Server 2010 should be installed on server

2.5 Design and Implementation Constraints


 The system need database SQL Server 2010.

2.6 User Documentation


 The system shall provide an online help.
 User Manual

3. External Interface Requirements

3.1 User Interfaces


The screen layout and color of the user interface should be appealing. When users look at the
screen, it will have a nice vision. Colors will be selected clearly, thus eyes of users won’t be
tired.

3.2 Hardware Interfaces


Library Management System is a standalone system. So any personal computer serve the
purpose.

3.3 Software Interfaces


Operating System Software : Windows 2000
Software : ASP.Net
Database : SQL Server 2010 should be installed on server.
Network : Client Server

3.3 Software Interfaces


A standard called Open Database Connectivity (ODBC) provides an application programming
interface (API).

3.4 Communications Interfaces


No Communication Interfaces have been identified.

4. System Features

4.1 System Feature 1


4.1.1 Member Registration
Member personal information is maintained first like MemberId, MemberName, Address,
City, State, Pin, Phone etc.
4.1.2 Books data entry
4.1.3 Book Issue Transaction
4.1.4 Book Return Transaction
4.1.5 Fine Calculation

6|Page Dr. Mahesh Potdar, IMSCDR, Ahmednagar


4.1.6 Generate Reports

5 Other Nonfunctional Requirements

5.1 Performance Requirements


The system should use the minimum part of memory. The processes of the system should use the
processor most efficiently. User should finish operation in the least time interval. The system
shall provide access to the databases with no more than a 10 second.

5.2 Safety Requirements


When the system is used, system failures are expected. The disruption caused by the failure can
be minimized if the system can be repaired quickly or using backup and restore facility.

5.3 Reliability
The system shall be available throughout the working hours, with no more than 10% down time.

6. Other Requirements
Appendix A: Logical Structure of the Data (E-R Diagram)

7|Page Dr. Mahesh Potdar, IMSCDR, Ahmednagar


OR

Explain all phases of requirement engineering. [8]

Answer:

Requirement Engineering:

Requirements engineering (RE) refers to the process of defining, documenting, and maintaining
requirements in the engineering design process. Requirement engineering provides the
appropriate mechanism to understand what the customer desires, analyzing the need, and
assessing feasibility, negotiating a reasonable solution, specifying the solution clearly, validating
the specifications and managing the requirements as they are transformed into a working system.
Thus, requirement engineering is the disciplined application of proven principles, methods, tools,
and notation to describe a proposed system's intended behavior and its associated constraints.

Requirement Engineering Process:

This includes -

1. Feasibility Study
2. Requirement Elicitation and Analysis
3. Software Requirement Specification
4. Software Requirement Validation
5. Software Requirement Management

1. Feasibility Study:

The objective behind the feasibility study is to create the reasons for developing the software that
is acceptable to users, flexible to change and conformable to established standards.

Types of Feasibility:

1. Technical Feasibility - Technical feasibility evaluates the current technologies,


which are needed to accomplish customer requirements within the time and
budget.
2. Operational Feasibility - Operational feasibility assesses the range in which the
required software performs a series of levels to solve business problems and
customer requirements.
3. Economic Feasibility - Economic feasibility decides whether the necessary
software can generate financial profits for an organization.

2. Requirement Elicitation and Analysis:

This is also known as the gathering of requirements. Here, requirements are identified with the
help of customers and existing systems processes, if available.

8|Page Dr. Mahesh Potdar, IMSCDR, Ahmednagar


Analysis of requirements starts with requirement elicitation. The requirements are analyzed to
identify inconsistencies, defects, omission, etc. We describe requirements in terms of
relationships and also resolve conflicts if any.

3. Software Requirement Specification:

Software requirement specification is a kind of document which is created by a software analyst


after the requirements collected from the various sources - the requirement received by the
customer written in ordinary language. It is the job of the analyst to write the requirement in
technical language so that they can be understood and beneficial by the development team.

The models used at this stage include ER diagrams, data flow diagrams (DFDs), function
decomposition diagrams (FDDs), data dictionaries, etc.

4. Software Requirement Validation:

After requirement specifications developed, the requirements discussed in this document are
validated. The user might demand illegal, impossible solution or experts may misinterpret the
needs. Requirements can be the check against the following conditions -

If they can practically implement


If they are correct and as per the functionality and specially of software
If there are any ambiguities
If they are full
If they can describe

5. Software Requirement Management:

Requirement management is the process of managing changing requirements during the


requirements engineering process and system development.

9|Page Dr. Mahesh Potdar, IMSCDR, Ahmednagar


Q. 3) Draw the Use Case and Class diagram based on following description
An Engineering College has organized an International Research Conference with various
subject tracks. A website is developed by the college where all the conference details are
uploaded. The participant has to register online under category – Student, Faculty, Research
Scholar, and Corporate. He has to upload an abstract of his paper. If it get selected, he has to
upload final paper along with the registration fee. The registration fee varies according to the
category of the registrant. The payment can be done online or through DD. The paper
presentation schedule is put up on the website under the defined tracks. After the conference the
participant can give his feedback online. [20] Use Case Diagram

Registration

Login

Forgot Password

Change Password

Update User Profile

View Registered Users

Maintain Subject Details

Submit Paper Anstract

Admin

Participant
View and Select/Reject Paper
Abstract

View List of Selected Papers

Upload Final Paper

Student Faculty Research Scholar Corporate


Make Registration Fee Payment

View Fee Payment Details

Finalized Trackwise Presentation

Display Paper Presentation


Schedule

Give Conference Feedback

View Feedback

10 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


Class Diagram

11 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


OR

A) Draw State Transition Diagram for Elevator (Lift). [10]

12 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


B) Draw Activity Diagram for Online Hotel Room Booking. Write your own assumptions. [10]

Answer: Activity Diagram for Online Hotel Room Booking

13 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


Q. 4) Attempt any two. [8]

a) Compare prototyping and spiral model

Prototype Model Spiral Model

A prototype model is a software The spiral model is a risk-driven software


development model in which a prototype is development model and is made with features
built, tested, and then refined as per of incremental, waterfall, or evolutionary
customer needs. prototyping models.

It is also referred to as a rapid or closed- It is also referred to as a meta model.


ended prototype.

Phases- Phases-
1. Requirements 1. Planning Phase
2. Quick Design 2. Risk Analysis Phase
3. Build Prototype 3. Engineering Phase
4. User Evaluation 4. Evaluation Phase
5. Refining Prototype
6. Implement and Maintain

It does not emphasize risk analysis. It takes special care about risk analysis and an
alternative solution is undertaken.

In the prototype model, customer In the spiral model, there is no continuous


interaction is continuous until the final customer interaction.
prototype is approved.

It is best suited when the requirement of It is best suited when the customer
the client is not clear and is supposed to be requirements are clear.
changed.

Cost-effective quality improvement is very Cost-effective quality improvement is not


much possible. possible.

In the Prototype model, improvement of In the Spiral model, improvement of quality


quality does not increase the cost of the can increase the cost of the product.
product.

14 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


Prototype Model Spiral Model

Large-scale project is maintained. Low to medium project size is maintained.

When to use- When to use-


 When end users need to have high  Continuous risk analysis is required for the
interaction like in online platforms and software
web interfaces.  In large projects
 Whenever end-user input in terms of  If Significant changes are required by the
feedback on the system is required. software
 In complex project requirements

b) Explain factors to be considered in web engineering

Answer: Factors to be considered in web engineering

1. Site purpose

Like a mission statement, a website’s purpose gives the primary reason for the site’s existence in
the world. Whether for education, advocacy, service provision, community organizing, etc., the
main purpose of the site will ultimately inform design and content decisions.

2. Target audiences

“Who is your target audience?”- it’s a simple fact that you cannot design with “everyone” in
mind (that’s why there are so many different kinds of cars, clothes, computing devices, etc.). If
you identify and design to your top two audiences, the site is more likely to accomplish your
organization’s goals.

3. Site objectives

Like the objectives in your organization’s strategic plan (and if you don’t have one of those, you
have bigger concerns than your website!), the objectives for your website outline the main goals
of the site. I like to ask my nonprofit clients to answer these questions for each target audience:
What actions will this audience want to perform when they visit your website? What actions
does your organization want this audience to perform when they visit your website? Be sure to
re-visit your objectives during the design and content creation processes to ensure they are being
met.

15 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


4. Responsive, mobile-friendly design

Responsive design means that a website’s design automatically re-sizes to fit the screen size on
which it’s being viewed. Unfortunately, it can be difficult to retrofit an existing site with
responsiveness; and it’s mostly more cost-effective to do a complete re-design. The days of two
separate websites – one for viewing on a monitor and one for viewing on a mobile device – are
over.

5. Fresh content

Imagine if museums never changed up their exhibits. Why would you ever return after your first
visit? We go back to museums over and over because of new exhibits and programming – new
stuff to see. We go back to websites if we know the content will change and there will be new
stuff for us to view. Work on a content strategy for your site that will ensure people keep coming
back.

6. Engaging content

It’s a documented fact that people only read about 20-28% of the text on a web page. Hence the
shift to shorter blocks of text, lots of photos, and the use of multimedia on websites. The great
thing about non-text content these days is that all you really need is a decent smartphone, and
you can quickly create your own photo and video content.

7. Features

Features are the elements that make a site dynamic and interesting, like donation buttons, online
forms, embedded video or podcasts, online quizzes, social media buttons/integration, and all
other manner of gadgets and widgets. It’s important to figure out as many of these in advance as
you can for the sake of a more coherent design. (As opposed to figuring out later that you really
wanted social media buttons and now don’t have a good place to put them without removing or
squishing other elements.)

8. Search engine optimization (SEO)

48% of Internet users start their online experience with a search engine. This means you’ll want
to make sure your site is optimized for search. While there are companies that do SEO and
nothing but, their services tend to be beyond the budget of most nonprofits.

9. Site maintenance

There are two main costs associated with a website design project: the cost of site design and
development and ongoing site maintenance costs. Site design tends to be a lump sum cost. Site
maintenance can vary greatly, depending on the developer.

10. Accessibility

Websites should be accessible to its uers.

16 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


c) Explain principles of agile process

Any Agile Software method is characterized during a manner that addresses a variety of key
assumptions concerning the bulk of software projects:
 It is troublesome to predict before that software needs will persist and which can
amendment. it’s equally troublesome to predict however client priorities can amendment
because of the project payoff.
 For many sorts of software, style and construction are interleaved. That is, each activity
ought to be performed in order that style models are verified as they’re created. it’s
troublesome to predict what proportion design is critical before construction is employed to
prove the look
 Analysis, design, construction, and testing aren’t as inevitable (from a designing purpose of
view) as we’d like.

Given these 3 assumptions, a crucial question arises: however will we produce a method which
will manage unpredictability? the solution, as I’ve got already noted, lies in method ability (to
quickly dynamic project and technical conditions). the associate agile method, therefore,
should be adaptable.

But continual adaptation while not forward progress accomplishes very little. Therefore, the
associate agile software method should adapt to incrementally. To accomplish progressive
adaptation, the associate agile team needs client feedback (so that the suitable variations are
often made).

17 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


A good catalyst for client feedback is an associate operational paradigm or a little of an
operational system. Hence, associate progressive development strategy ought to be instituted.
software increments (executable prototypes or parts of the associated operational system)
should be delivered in brief time periods in order that adaptation keeps pace with the
amendment (unpredictability).
This unvarying approach permits the client to evaluate the package increment frequently, offer
necessary feedback to the software team, and influence the method variations that are created
to accommodate the feedback.
Agility Principles:

The Agile Alliance defines twelve lightness principles for those that need to attain agility:
1. Our highest priority is to satisfy the client through early and continuous delivery of
valuable computer software.
2. Welcome dynamical necessities, even late in development. Agile processes harness
modification for the customer’s competitive advantage.
3. Deliver operating computer software often, from a pair of weeks to a couple of months,
with a preference to the shorter timescale.
4. Business individuals and developers should work along daily throughout the project.
5. The build comes around actuated people. offer them the setting and support they have, and
trust them to urge the task done.
6. The foremost economical and effective methodology of conveyancing info to and among a
development team is face-to-face speech.
7. Working computer software is the primary live of progress.
8. Agile processes promote property development. The sponsors, developers, and users got to
be able to maintain a relentless pace indefinitely.
9. Continuous attention to technical excellence and smart style enhances nimbleness.
10. Simplicity—the art of maximizing the number of work not done—is essential.

d) Explain and compare extreme programming and scrum

Scrum Extreme Programming (XP)

In the Scrum framework, teamwork in iterations In Extreme Programming(XP), teamwork


is called Sprint which is 2 weeks to 1 month long. for 1-2 weeks only.

Scrum models do not allow changes in their Extreme Programming allows changes in
timeline or their guidelines. their set timelines.

18 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


Scrum Extreme Programming (XP)

Extreme Programming emphasizes strong


Scrum emphasizes self-organization. engineering practices

In Extreme Programming, the team has to


In the Scrum framework, the team determines the follow a strict priority order or pre-
sequence in which the product will be developed. determined priority order.

The Scrum framework is not fully described. If Extreme Programming(XP) can be directly
you want to adopt it then you need to fill the applied to a team. Extreme Programming
framework with your frameworks methods like is also known for its Ready-to-
XP, DSDM, or Kanban. apply features.

Extreme Programming (XP) emphasizes


Scrum does not put emphasis on software programming techniques that developers
engineering practices that developers should use. should use to ensure a better outcome.

It is very strict in adopting engineering


It requires developers to be conscious of adopting methods such as pair programming, simple
engineering methods to ensure better progress or design, restructuring to ensure better
quality. progress or quality.

In the preference of features, demand and priority In the preference of features, the demand
do not have to be in line with one another. corresponds to the priority.

In scrum, the scrum master asks the owner of the In XP, customer decides the job priorities
product to prioritize the tasks according to their being the owner of the product and then
requirements. analyses the releases.

The tasks are prioritized by the owner of the The tasks are prioritized by the customer

19 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


Scrum Extreme Programming (XP)

product but with the flexibility that the priorities and the task priorities cannot be changed
can be changed later on by the development team by the development team.
if required.

Values- Values-

Openness Communication

Focus Simplicity

Commitment Feedback

Customer involvement is more in the


Customer involvement is less in the project. project.

20 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


Q. 5) Design a user interface for admission form of MCA - I admission of the institute [4]

Answer:

21 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar


OR

Explain golden rules of user interface design [4]

Answer:

Regardless of the domain, user interface, or intended device (computer, tablet or phone) for a
particular website or application, there are certain universal “Golden Rules” of user interface
design. These golden rules have been discussed in numerous publications over the years.

The golden rules are divided into three groups:

1. Place Users in Control


2. Reduce Users’ Memory Load
3. Make the Interface Consistent

Each of these groups contains a number of specific rules. The rules (and a keyword for each rule)
for each group are:

1. Place Users in Control

1. Use modes judiciously (modeless)


2. Allow users to use either the keyboard or mouse (flexible)
3. Allow users to change focus (interruptible)
4. Display descriptive messages and text(Helpful)
5. Provide immediate and reversible actions, and feedback (forgiving)
6. Provide meaningful paths and exits (navigable)
7. Accommodate users with different skill levels (accessible)
8. Make the user interface transparent (facilitative)
9. Allow users to customize the interface (preferences)
10. Allow users to directly manipulate interface objects (interactive)

2. Reduce Users’ Memory Load

1. Relieve short-term memory (remember)


2. Rely on recognition, not recall (recognition)
3. Provide visual cues (inform)
4. Provide defaults, undo, and redo (forgiving)
5. Provide interface shortcuts (frequency)
6. Promote an object-action syntax (intuitive)
7. Use real-world metaphors (transfer)
8. User progressive disclosure (context)
9. Promote visual clarity (organize)
22 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar
3. Make the Interface Consistent

1. Sustain the context of users’ tasks (continuity)


2. Maintain consistency within and across products (experience)
3. Keep interaction results the same (expectations)
4. Provide aesthetic appeal and integrity (attitude)
5. Encourage exploration (predictable)

23 | P a g e Dr. Mahesh Potdar, IMSCDR, Ahmednagar

You might also like