0% found this document useful (0 votes)
6 views15 pages

Se Ut1

The document provides a detailed explanation of the SCRUM framework, highlighting its iterative process, lifecycle stages, advantages, and disadvantages. It also covers software engineering processes, characteristics of software, and differentiates between verification and validation in software testing. Additionally, it discusses agile development principles, use case diagrams for ATM systems, data flow diagrams for library management and course enrollment systems, and includes calculations for function points and productivity metrics.

Uploaded by

Shravani Patil
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views15 pages

Se Ut1

The document provides a detailed explanation of the SCRUM framework, highlighting its iterative process, lifecycle stages, advantages, and disadvantages. It also covers software engineering processes, characteristics of software, and differentiates between verification and validation in software testing. Additionally, it discusses agile development principles, use case diagrams for ATM systems, data flow diagrams for library management and course enrollment systems, and includes calculations for function points and productivity metrics.

Uploaded by

Shravani Patil
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

UT-1 Solution

Q1. a. Explain SCRUM in detail.

Scrum
Scrum is the type of Agile framework. It is a framework within which people can address complex adaptive
problem while productivity and creativity of delivering product is at highest possible values. Scrum uses
Iterative process.
Silent features of Scrum are:
 Scrum is light-weighted framework
 Scrum emphasizes self-organization
 Scrum is simple to understand
 Scrum framework help the team to work together

Lifecycle of Scrum:

Sprint: A Sprint is a time-box of one month or less. A new Sprint starts immediately after the completion of
the previous Sprint.
Release: When the product is completed then it goes to the Release stage.
Sprint Review: If the product still has some non-achievable features, then it will be checked in this stage
and then the product is passed to the Sprint Retrospective stage.
Sprint Retrospective: In this stage quality or status of the product is checked.

Instructor: Jayshree Jha Department of Information Technology | APSIT


Product Backlog: According to the prioritize features the product is organized.
Sprint Backlog: Sprint Backlog is divided into two parts Product assigned features to sprint and Sprint
planning meeting.

Advantage of using Scrum framework:


 Scrum framework is fast moving and money efficient.
 Scrum framework works by dividing the large product into small sub-products. It’s like a divide and
conquer strategy
 In Scrum customer satisfaction is very important.
 Scrum is adaptive in nature because it has short sprint.
 As Scrum framework rely on constant feedback therefore the quality of product increases in less
amount of time

Disadvantage of using Scrum framework:


 Scrum framework do not allow changes into their sprint.
 Scrum framework is not fully described model. If you want to adopt it you need to fill in the
framework with your own details like Extreme Programming (XP), Kanban, DSDM.
 It can be difficult for the Scrum to plan, structure and organize a project that lacks a clear definition.
 The daily Scrum meetings and frequent reviews require substantial resources.

b. a) Explain what is Software Engineering process and characteristics of a software?

The term is made of two words, software and engineering. Software is more than just a program
code. A program is an executable code, which serves some computational purpose. Software is
considered to be collection of executable programming code, associated libraries and
documentations. Software, when made for a specific requirement is called software product.
Engineering on the other hand, is all about developing products, using well-defined, scientific
principles and methods.

Software engineering is an engineering branch associated with development of software


product using well-defined scientific principles, methods and procedures. The outcome of software
engineering is an efficient and reliable software product.

Instructor: Jayshree Jha Department of Information Technology | APSIT


Basic Characteristic of software:

There is some characteristic of software which is given below:

1. Functionality
2. Reliability
3. Usability
4. Efficiency
5. Maintainability
6. Portability

c) Differentiate between verification and validation.

Verification and validation are two critical components of software testing and quality assurance. Though
they are closely related, they focus on different aspects of the development process. Here's how they differ:

1. Definition

Verification: Ensures that the product is being developed correctly according to the specified requirements
and design. It answers the question: "Are we building the product right?"

Validation: Ensures that the developed product meets the user's needs and intended purpose. It answers
the question: "Are we building the right product?"

2. Objective

Verification: Focuses on checking documentation, specifications, and code to ensure conformity with the
initial requirements.

Validation: Focuses on ensuring the final product functions as expected in the real-world environment.

3. Techniques Used in Verification:

Reviews (code reviews, design reviews)

Walkthroughs

Inspections

Static testing (analyzing code without executing it)

Instructor: Jayshree Jha Department of Information Technology | APSIT


Validation:

Functional testing

System testing

User acceptance testing (UAT)

Dynamic testing (executing the code)

4. Timing in Development Lifecycle

Verification: Performed during early stages (e.g., requirement analysis, design phase, and coding).

Validation: Performed after verification, often towards the end of the development cycle.

5. Participants

Verification: Typically involves developers, designers, and QA team members.

Validation: Involves end-users, stakeholders, and QA testers.

6. Tools

Verification: Relies on tools for static analysis, like checklists, requirement traceability matrices, and
modeling tools.

Validation: Utilizes tools for dynamic testing, such as test management software and automated testing
tools.

d) What is agility? How agile development help develop quality software.

Agile software engineering embraces a philosophy that encourages customer satisfaction, incremental
software delivery, small project teams (composed of software engineers and stakeholders), informal
methods, and minimal software engineering work products.

 Agile software engineering guidelines stress on-time delivery of an operational software increment
over analysis and design
 Agile software engineering combines a philosophy and a set of deployment guidelines.
 The philosophy encourages customer satisfaction and early incremental delivery of software: small,
highly motivated project teams; informal methods; minimal software engineering work products;
and overall development simplicity.

Instructor: Jayshree Jha Department of Information Technology | APSIT


 The development guidelines stress delivery over analysis communication between developers and
customers.
Agile development help develop quality software because following agility principal points:-
 The highest priority is to satisfy customers through early and continuous delivery of
valuable software
 Welcome changing requirements even late in development, accommodating change is
viewed as increasing the customer’s competitive advantage
 Delivering working software frequently with a preference for shorter delivery schedules
(e.g., every 2 or 3 weeks)
 Business people and developers must work together daily during the project
 Build projects around motivated individuals, given them the environment and support
they need, trust them to get the job done
 Face-to-face communication is the most effective method of conveying information within
Working software is the primary measure of progress
 Agile processes support sustainable development, developers and customers should be
able
to continue development indefinitely

Q2.a. Draw use case diagram for ATM banking system.

Automated Teller Machine (ATM) also known as ABM (Automated Banking Machine) is a banking system.
This banking system allows customers or users to have access to financial transactions. These transactions
can be done in public space without any need for a clerk, cashier, or bank teller. Working and description of
the ATM can be explained with the help of the Use Case Diagram.

Let us understand about designing the use case diagram for the ATM system. Some scenarios of
the system are as follows.

Step-1:
The user is authenticated when enters the plastic ATM card in a Bank ATM. Then enters the user’s name
and PIN (Personal Identification Number). For every ATM transaction, a Customer Authentication use case
is required and essential. So, it is shown as include relationship.
Example of use case diagram for Customer Authentication is shown below:

Instructor: Jayshree Jha Department of Information Technology | APSIT


Step-2:
User checks the bank balance as well as also demands the mini statement about the bank balance if they
want. Then the user withdraws the money as per their need. If they want to deposit some money, they can
do it. After complete action, the user closes the session.
Example of the use case diagram for Bank ATM system is shown below:

Instructor: Jayshree Jha Department of Information Technology | APSIT


Step-3:
If there is any error or repair needed in Bank ATM, it is done by an ATM technician. ATM technician is
responsible for the maintenance of the Bank ATM, upgrades for hardware, firmware or software, and
onsite diagnosis.
Example of use case diagram for working of ATM technician is shown below:

b. Draw the DFD up to Level 1 for Library Management System.

DFD for Library Management System

A Data Flow Diagram (DFD) illustrates how information flows within a system and highlights the
transformations that occur as data enters, moves through, and exits the system. The DFD provides a visual
representation of the system's overall functionality, encompassing the key stages of input, processing, and
output.

Inputs:

 Book Request: This occurs when a student initiates a request for a book, signaling their need for a
specific resource.

 Library Card: The student is required to present or submit their library card as proof of identity,
ensuring that the transaction is authorized and properly recorded.

Processing: Within the system, these inputs are processed to fulfill the student's request. The processing
unit is responsible for managing and coordinating the interactions between the student and the library's
resources.

Outputs:

 Book Issuance: The primary output is the book itself, which is provided to the student once their
request has been processed.

Instructor: Jayshree Jha Department of Information Technology | APSIT


 Book Information Display: Additionally, the library's information system displays relevant details
about the requested book. This feature aids the student in making informed choices when
selecting books, thereby streamlining the borrowing process.

By mapping out these components, the DFD not only clarifies the system’s operational flow but also
emphasizes how the system interacts with its users to meet their needs efficiently.

Level 1 DFD – Detailed Processing Overview

At the Level 1 Data Flow Diagram (DFD), the system provides a more detailed view of the essential
processes involved in its operation. This level breaks down the primary functions into more specific tasks,
allowing for a deeper understanding of how data is managed and transformed within the system.

Key Processes:

 Book Delivery: This process involves the steps necessary to ensure that a requested book is located,
retrieved, and delivered to the student. It encompasses everything from verifying the request to
physically handing over the book.

 Search by Topic: This process allows users to search for books based on specific topics. It involves
querying the system's database to retrieve a list of books that match the search criteria.

Essential Information: For these processes to function effectively, the system requires access to various
types of information, including:

 List of Authors: A comprehensive database of authors whose works are available in the library. This
allows users to search for books by a particular author.

 List of Titles: A catalog of book titles available in the library, enabling students to locate a specific
book.

 List of Topics: An organized list of topics or categories under which books are classified, facilitating
topic-based searches.

 Bookshelf Locations: Information about the physical location of books within the library, indicating
the specific shelves where books can be found.

Instructor: Jayshree Jha Department of Information Technology | APSIT


Data Stores: These pieces of information are stored in the system's data stores, which are repositories
where data is organized and maintained. Data stores play a critical role in ensuring that the necessary
information is readily accessible during the execution of the processes, enabling the system to function
smoothly and efficiently.

By detailing these processes and the associated information, the Level 1 DFD provides a clearer picture of
the system's inner workings, helping stakeholders understand how each component contributes to the
overall functionality.

Instructor: Jayshree Jha Department of Information Technology | APSIT


c)Draw DFD up to level 1 for the Course Enrolment System.

Instructor: Jayshree Jha Department of Information Technology | APSIT


Instructor: Jayshree Jha Department of Information Technology | APSIT
Instructor: Jayshree Jha Department of Information Technology | APSIT
3 a. Given the following values, compute function point when all complexity adjustment factor (CAF)
and weighting factors are average. User Input = 50, User Output = 40, User Inquiries = 35, User Files = 6,
External Interface = 4

User Input = 50
User Output = 40

Instructor: Jayshree Jha Department of Information Technology | APSIT


User Inquiries = 35
User Files = 6
External Interface = 4
Explanation:
 Step-1:
TDI = 14 * scale
Scale varies from 0 to 5 according to character of Value Adjustment Factor (VAF). Below
table shows scale:
0 - No Influence
1 - Incidental
2 - Moderate
3 - Average
4 - Significant
5 - Essential
As Value adjustment factor is average (given in question), hence scale = 3.
TDI = 14 * 3 = 42
 Step-2:
VAF = 0.65 + (0.01 * 42) = 1.07
 Step-3: As weighting factors are also average (given in question) hence we will multiply each
individual function point to corresponding values in TABLE.

UFP = (50*4) + (40*5) + (35*4) + (6*10) + (4*7) = 628

 Step-4:

Instructor: Jayshree Jha Department of Information Technology | APSIT


Function Point = 628 * 1.07 = 671.96
This is the required answer.

b) Compute the function point value for a project with the following data. User Input=24(Avg), User
Output = 46(low), User Inquiries = 08(high), User Files = 4(Avg), External Interface = 2(High). Various
processing complexity factors are: 4, 1, 0, 3, 3, 5, 4, 4, 3, 3, 2, 2, 4, 5.

UFP=24*4+46*4+8*6+4*10+2*10=388

TDI=sum of all fi (i ← 1 to 14) = 4 + 1 + 0 + 3 + 5 + 4 + 4 + 3 + 3 + 2 + 2 + 4 + 5 = 43

FP=Count-total*[0.65+0.01*∑(fi)]
=378*[0.65+0.01*43]
=388*[0.65+0.43]
= 388 * 1.08 = 419

Productivity (P) = FP /Effort

=419.04/36.9
=11.35

Total Page of Documentation (PD) = Software Technical Documents + User related documents = 265 +
122 = 387 pages

Documentation (D) = PD/FP

= 387/419.04 = 0.923

Cost of each Functionalities = COST/Productivity

=$7744/11.35

=$682.29

Instructor: Jayshree Jha Department of Information Technology | APSIT

You might also like