Lab Manual 1-5
Lab Manual 1-5
LABORATORY MANUAL
SOFTWARE ENGINEERING
WITH AGILE
&
METHODOLOGY
(AD 403)
IV Semester (AI&DS)
DEPARTMENT OF
Artificial Intelligence & Data Science
CERTIFICATE
Software Engineering with Agile Methodology laboratory, as prescribed by Rajiv Gandhi Proudhyogiki
Vishwavidhyalaya, Bhopal for IV Semester of the AI&DS Department during year 2022-23
Signature of
Faculty In-charge
INDEX
Develop test cases for various white box and black box testing
9 9 techniques
Theory:
Software Requirement Specification (SRS) document usually contains a software vendor understanding of a
customer software requirement. It is created after the initial requirement elicitation phase in which software
vendor interacts with the customer to understand the software needs. Usually, SRS documentation is
prepared by a business analyst who has some technical background.
Functional Requirements
Functional requirements specify the business requirements of the project in detail. Usually, business
requirements are specified in terms of the actions that user performs on the software system. This is known as
the use case model. But not all requirements need to be specified as use cases. Functional requirements
should contain a combination of use cases and plain textual description of system features. System features
are specified at a higher level and use cases attempt to translate into user actions. There is no fixed format for
use case description, but it usually contains the following information.
Use case diagram – For a small system, a single diagram can be used to depict all the use cases in the
system.
List of actors and their details – This identifies the various types of users interacting with the software
system.
Use case description – Purpose of the use case and how and when it is invoked by the user. This should
also include an identifier for easy reference.
Preconditions – List of system states/conditions that must be true for the successful execution of the
use case. This section is optional and could be easily incorporated into the basic steps section.
Basic steps – These indicates the various fine-grained steps required for the execution of the use case.
Alternate steps – These indicate alternate events of the use case being described.
Business validations/rules – These indicates various types of input validations or business rules
required in the use case being described.
Post conditions – Indicates the results of the use case.
Library Management System: A library management system, also known as an automated library system is
software that has been developed to handle basic housekeeping functions of a library.
It is a well-organized software solution for a library.
It helps to provide information on any book present in library to the user as well as staff member.
It keeps a track of book issued, returned and added to library.
Viva Question:
1. What is functional and non-functional requirement?
2. What do you understand by data dictionary?
3. What is the requirement of SRS?
4. Explain the characteristics of SRS.
5. Define types of requirements.
Theory:
Waterfall Model
Waterfall approach was first SDLC Model to be used widely in Software Engineering to ensure success of the
project. In "The Waterfall" approach, the whole process of software development is divided into separate
phases. In this Waterfall model, typically, the outcome of one phase acts as the input for the next phase
sequentially.
Requirement Gathering and analysis − All possible requirements of the system to be developed are
captured in this phase and documented in a requirement specification document.
System Design − The requirement specifications from first phase are studied in this phase and the
system design is prepared. This system design helps in specifying hardware and system requirements and
helps in defining the overall system architecture.
Implementation − With inputs from the system design, the system is first developed in small programs
called units, which are integrated in the next phase. Each unit is developed and tested for its
functionality, which is referred to as Unit Testing.
Spiral model
Spiral model is one of the most important Software Development Life Cycle models, which provides
support for Risk Handling. In its diagrammatic representation, it looks like a spiral with many loops.
As the project manager dynamically determines the number of phases, so the project manager has an
important role to develop a product using the spiral model.
Requirements are gathered from the customers and the objectives are identified, elaborated, and
analyzed at the start of every phase. Then alternative solutions possible for the phase are proposed in
this quadrant.
Identify and resolve Risks:
During the second quadrant, all the possible solutions are evaluated to select the best possible
solution. Then the risks associated with that solution are identified and the risks are resolved using the
best possible strategy. At the end of this quadrant, the Prototype is built for the best possible solution.
Develop next version of the Product
During the third quadrant, the identified features are developed and verified through testing. At the
end of the third quadrant, the next version of the software is available.
Review and plan for the next Phase:
In the fourth quadrant, the Customers evaluate the so far developed version of the software. In the
end, planning for the next phase is started.
The RAD (Rapid Application Development) model is based on prototyping and iterative development
with no specific planning involved. The process of writing the software itself involves the planning
required for developing the product.
• In the RAD model, the functional modules are developed in parallel as prototypes and are integrated to
make the complete product for faster product delivery. Since there is no detailed preplanning, it makes
it easier to incorporate the changes within the development process.
• The business model for the product under development is designed in terms of flow of information and
the distribution of information between various business channels. A complete business analysis is
performed to find the vital information for business, how it can be obtained, how and when is the
information processed and what are the factors driving successful flow of information.
• The information gathered in the Business Modelling phase is reviewed and analyzed to form sets of
data objects vital for the business. The attributes of all data sets is identified and defined. The relation
between these data objects are established and defined in detail in relevance to the business model.
• The data object sets defined in the Data Modelling phase are converted to establish the business
information flow needed to achieve specific business objectives as per the business model. The process
• The actual system is built and coding is done by using automation tools to convert process and data
models into actual prototypes.
• The overall testing time is reduced in the RAD model as the prototypes are independently tested
during every iteration. However, the data flow and the interfaces between all the components need to
be thoroughly tested with complete test coverage. Since most of the programming components have
already been tested, it reduces the risk of any major issues.
Viva Question:
1. What is RAD Model
2. Explain Phases of RAD Model?
3. What is the main purpose of using RAD Model?
4. How it is Differe from Spiral Model
5. Explain advantages and Disadvantages Of RAD Model
Theory:
The meaning of Agile is swift or versatile."Agile process model" refers to a software development
approach based on iterative development. Agile methods break tasks into smaller iterations, or parts
do not directly involve long term planning. The project scope and requirements are laid down at the
beginning of the development process. Plans regarding the number of iterations, the duration and
the scope of each iteration are clearly defined in advance.
1. Requirements gathering: In this phase, you must define the requirements. You should explain
business opportunities and plan the time and effort needed to build the project. Based on this
information, you can evaluate technical and economic feasibility.
2. Design the requirements: When you have identified the project, work with stakeholders to
define requirements. You can use the user flow diagram or the high-level UML diagram to show
the work of new features and show how it will apply to your existing system.
3. Construction/ iteration: When the team defines the requirements, the work begins.
Designers and developers start working on their project, which aims to deploy a working
product. The product will undergo various stages of improvement, so it includes simple,
minimal functionality.
4. Testing: In this phase, the Quality Assurance team examines the product's performance and
looks for the bug.
5. Deployment: In this phase, the team issues a product for the user's work environment.
6. Feedback: After releasing the product, the last step is feedback. In this, the team receives
feedback about the product and works through the feedback
EXPT. No. - 5. Study and usage of any Design phase CASE tool
Theory:
How to Install StarUML on Windows 10 Star UML is a UML (Unified Modeling Language) tool, introduce by
MKLab. It is an open-source modeling tool that supports the UML framework for system and software
modeling. StarUML is based on UML version 1.4, it provides 11 different types of diagram and it accepts UML
2.0 notation. Version 2.0 was released for beta testing under a property license. StarUML is actively supporting
the MDA (Model Driven Architecture). It approaches by supporting the UML profile concept and allowing it to
generate code for multiple languages. It also provides a number of bug fixes and improved compatibility with
the modern versions of the Windows Operating System.
StarUML is mostly used by the Agile and small development teams, professional persons and used by the
educational institutes
Features of StarUML
1. It supports multi-platform such as macOS, Windows, and Linux.
2. It involves UML 2.x.standard compliant.
3. Includes Entity-Relationship diagram (ERD), Data-flow diagram (DFD), and Flowchart diagram
. 4. It creates multiple windows.
5. It has modern UX and dark and light themes.
6. Featured with retina (High-DPI) display support.
CHAMELI DEVI GROUP OF INSTITUTIONS, INDORE DEPARTMENT OF AI&DS
SOFTWARE ENGINEERING WITH AGILE METHODOLOGY LABORATORY - 11 -
7. Includes model-driven development.
8. It has open APIs.
9. Supports various third-party extensions.
10. Asynchronous model validation
11. It can export to HTML docs.
Viva Question:
1. What is Star UML?
2. How to Install Star UML?
3. What is the main purpose of using Star UML?
4. Which Type of Diagram are used in Star UML
5. Explain its Charecterstics.