You are on page 1of 52

Birla Vishwakarma Mahavidyalaya

Engineering College
(An Autonomous Institution)
Computer Engineering Department
AY 2023-24, SEMESTER - VI

Lab
Manua
l of
Software Engineering

Subject code: 3CP07

Academic Year 2023-

24

Name:
ID No:
Batch: E batch
Faculty Name: Ami B. Parekh

1
CERTIFICATE

This is to certify that Mr.


of Semester VI,
ID No.: has satisfactorily
completed his term work in
for the term ending
in April 2024.

Number of practicals certified: out of in the


subject of 3CP07: Software Engineering

Signature of the Teacher

Date:

2
INDEX

Sr.
Title Date Sign
No
Study of phases in software development life cycle and
1.
software process models of project.
2. To perform the System Analysis: Requirement analysis, SRS

3. To perform Data Modeling: E-R Diagram


To perform the Scenario Based Modeling: Use Case
4
Diagram
5 To perform the Class Based Modeling: Class Diagram

6 To draw the Behavioral View Diagram: State Diagram

7 To draw the Behavioral View Diagram: Activity Diagram

8 To draw the Behavioral View Diagram: Sequence Diagram

9 Flow-Oriented Modeling: Data Flow Diagram

10 To draw the Component diagram for all use cases.

11 To Determine the Schedule of the Software: Timeline Chart

Study to Find out the cost of the CAD software: Using LOC &
12 FP Approach.

13 Designing Test Suites.

14 Analyze the Risk releted to your Project.

3
PRACTICAL-1

Aim: Study of phases in software development life cycle and software


process models of project.
Software Development Life Cycle (SDLC) is a process used by the software
industry to design, develop and test high quality softwares. The SDLC aims
to produce a high-qualitysoftware that meets or exceeds customer
expectations, reaches completion within times and cost estimates.

 SDLC is the acronym of Software Development Life Cycle.


 It is also called as Software Development Process.
 SDLC is a framework defining tasks performed at each step
in the softwaredevelopment process.

Why SDLC?

 It offers a basis for project planning, scheduling, and estimating


 Provides a framework for a standard set of activities and deliverables
 It is a mechanism for project tracking and control
 Increases visibility of project planning to all
involved stakeholders of thedevelopment process.
 Increased and enhance development speed
 Improved client relations
 Helps you to decrease project risk and project management plan overhead

4
Stage 1: Planning and Requirement Analysis

Requirement analysis is the most important and fundamental stage in SDLC. It is


performed by the senior members of the team with inputs from the customer, the sales
department, market surveys and domain experts in the industry. This information is then
used to plan the basic project approach and to conduct product feasibility study in the
economical, operational and technical areas.

Planning for the quality assurance requirements and identification of the risks associated
with the project is also done in the planning stage. The outcome of the technical
feasibility study is to define the various technical approaches that can be followed to
implement the project successfully with minimum risks.

Stage 2: Defining Requirements

Once the requirement analysis is done the next step is to clearly define and document the
product requirements and get them approved from the customer or the market analysts.
This is done through an SRS (Software Requirement Specification) document which
consists of all the product requirements to be designed and developed during the project
life cycle.

Stage 3: Designing the Product Architecture

SRS is the reference for product architects to come out with the best architecture for the
product to be developed. Based on the requirements specified in SRS, usually more than
one design approach for the product architecture is proposed and documented in a DDS
- Design Document Specification.

This DDS is reviewed by all the important stakeholders and based on various parameters
as risk assessment, product robustness, design modularity, budget and time constraints,
the best design approach is selected for the product.

A design approach clearly defines all the architectural modules of the product along with
its communication and data flow representation with the external and thirdparty modules
(if any). The internal design of all the modules of the proposed architecture should be
clearly defined with the minutest of the details in DDS.

5
Stage 4: Building or Developing the Product

In this stage of SDLC the actual development starts and the product is built. The
programming code is generated as per DDS during this stage. If the design is performed
in a detailed and organized manner, code generation can be accomplished without much
hassle.

Developers must follow the coding guidelines defined by their organization and
programming tools like compilers, interpreters, debuggers, etc. are used to generate the
code. Different high level programming languages such as C, C++, Pascal, Java and
PHP are used for coding. The programming language is chosen with respect to the type
of software being developed.

Stage 5: Testing the Product

This stage is usually a subset of all the stages as in the modern SDLC models, the testing
activities are mostly involved in all the stages of SDLC. However, this stage refers to the
testing only stage of the product where product defects are reported, tracked, fixed and
retested, until the product reaches the quality standards defined in the SRS.

Stage 6: Deployment in the Market and Maintenance

Once the product is tested and ready to be deployed it is released formally in the
appropriate market. Sometimes product deployment happens in stages as per the
business strategy of that organization. The product may first be released in a limited
segment and tested in the real business environment (UAT- User acceptance testing).

Then based on the feedback, the product may be released as it is or with suggested
enhancements in the targeting market segment. After the product is released in the
market, its maintenance is done for the existing customer base.

6
SDLC Models: There are various software development life cycle models defined and
designed which are followed during the software development process. These models
are also referred as Software Development Process Models". Each process model
follows a Series of steps unique to its type to ensure success in the process of software
development.
Following are the most important and popular SDLC models followed in the industry:
• Waterfall Model
• RAD Model
• Iterative Model
• V-Model

I. Waterfall Model

The waterfall model is a sequential, plan driven-process where you must plan and
schedule all your activities before starting the project. Each activity in the waterfall
model is represented as a separate phase arranged in linear order.

It has the following phases:


- Requirements
- Design
- Implementation
- Testing
- Deployment
- Maintenance

7
II. RAD Model

The Rapid Application Development (RAD model) is based on iterative development


and prototyping with little planning involved. You develop functional modules in
parallel for faster product delivery. It involves the following phases:

1. Business modeling
2. Data modeling
3. Process modeling
4. Application generation
5. Testing and turnover

The RAD concept focuses on gathering requirements using focus groups and
workshops, reusing software components, and informal communication.

The RAD model accommodates changing requirements, reduces development time, and
increases the reusability of components. But it can be complex to manage.

III. Iterative Model

The iterative development model develops a system through building small portions of
all the features. This helps to meet initial scope quickly and release it for feedback.

In the iterative model, you start off by implementing a small set of the software
requirements. These are then enhanced iteratively in the evolving versions until the
system is completed. This process model starts with part of the software, which is then
implemented and reviewed to identify further requirements.

8
Like the incremental model, the iterative model allows you to see the results at the early
stages of development. This makes it easy to identify and fix any functional or design
flaws. It also makes it easier to manage risk and change requirements.

IV. V Model

The V model (Verification and Validation model) is an extension of the waterfall model.
All the requirements are gathered at the start and cannot be changed. You have a
corresponding testing activity for each stage. For every phase in the development cycle,
there is an associated testing phase.

The V model is highly disciplined, easy to understand, and makes project management
easier. But it isn’t good for complex projects or projects that have unclear or changing
requirements. This makes the V model a good choice for software where downtimes and
failures are unacceptable.

9
10
Software Requirements Specification
for
Online Medicine Ordering System

Version 1.0 approved

Prepared by

Yash Khonde 21CP074 yashkhonde03@gmail.com

Organization: BVM Engineering College, Vallabh Vidyanagar


Instructor: Ami B. Parekh

Course: Software Engineering (3CP07)


Date: 2023 - 24

11
PRACTICAL – 2

Aim: To perform the System Analysis: Requirement Analysis, Software Requirements


Specifications (SRS) document.
Onine Medicine Ordering System

1. Introduction

1.1 Purpose

The purpose of this document is to deliver a detailed depiction of the Online


Examination System. It will explain the function and characteristics of the system, the
boundaries, and purpose of the system, and all the external environment restrictions
under which the system must operate and react successfully. Both the investor and the
developers of the system will use this document for understanding and approval,
respectively.
This software system, an Online Examination System will be designed for an
Examination purpose. The purpose of this system is to combine all the previous
knowledge about different subject in a single database, which will manipulate and
update frequently. It will maintain records of the counter exam , results, and history
levels. It will help users to search for subject, exam , and their results.
More specifically, this designed system will allow registered users to search for specific
exam and their results. The users can see the progress report and history . student will
manage time and resource. It will help student to solve tricky question and improve
your knowledge

1.2 Document Conventions

This document follows the APA 7th edition Format. Sub-headings and emphasized parts
are written in bold text. The words enlisted in glossary are highlighted throughout the
document and italicized text is used to label diagrams and for figure and table captions.
This document provides relevant information to stakeholders and creates an appropriate
mean for dialogue and aids in advanced information on the project concept(s) according
to the context. The report also provides a window for stakeholders to better understand
the project. This document aims at providing user-friendly and accessible system
information available to stakeholders during the course of this system development.

1.3 Intended Audience and Reading Suggestions


12
The document is intended to be read by developers, researchers, professor, students,
marketing personnel, investors, and documentation writers. This document contains
relevant information and requirements for the developers, investors, and customers with
different parts intended for a different purpose. It guides through the necessary
knowledge required for the understanding of the purpose and the functionality of the
software. These requirements are consolidated precisely in a single document in the
order of increasing specificity i.e., the initial overview is intended for marketing
personnel and investors while the later topics are more relevant to the developers.

1.4 Product Scope

This system product is created to allow the admin to manage the record of the subject so
that he can easily update the question details according to the exam available in subject
if a new exam is added or any existing exam is deleted from the subject. The users can
search and select exam by their names. The system will allow student to register
themselves by entering their essential credentials like name, e-mail address, postal
address, and contact number to view the exam in subject and you can see result.
The system will keep a record of all the exam result and will also keep the record of the
exam received by the admin. The system will also generate a monthly report on the
Performance of the student

13
1.5 References
Shamil, P. F. (2020, February 11). Online Examination System Project in PHP or
ASP.NET SRS Document. Retrieved from https://t4tutorials.com/:
https://t4tutorials.com/online- Examination -system-project-in-php-or-asp-net-srs-
document/#
Streefkerk., R. (2020, November 6). APA format for academic papers and essays. Retrieved
from scribbr.com: https://www.scribbr.com/apa-style/format/

2. Overall Description
2.1 Product Perspective

The software product being developed is a web-based system which functions is to buy
and sell medicines. The product is created with the intention to provide case to
customers for buying medicines without visiting the shops. The product works with
other databases to extract and store medicines information.
Following are the main features that are included in the Online Medicine Ordering System:
 Databases: The system is linked with local databases where record of medicines
that were sold, expired, and returned is maintained.

 User account: The system allows the user to register their accounts in the system
and avail the features of updating and viewing profiles.

 Search: It is simply a local search engine based on drug/medicine name.

 Purchase: Only the registered users can order medicines.

 Record: The previous record of registered users can be stored for future use.

 Administration: It maintains database records, sales, and purchases and maintains


the whole system.

14
The external interface includes suppliers, delivery system, and drug store as shown in
the image below,

2.2 Product Functions

The major functions that the product performs are:


1) Database management
Administrator should have permission to update the record of the drugs, delete or add
new drugs, change the password of the login, or to communicate with the customers.
System document must be available for the users to know how to handle the product.
2) Stock management
Operation manager will keep the stock of medicines updated by ordering new medicines
every time the store runs out of them. He will manage the stock of the medicines.
3) User-management module
The product will allow customers to register themselves. Customers should be provided
with restricted access to the product with the facility to view drugs available, their
expiry dates, prices, and detailed information. Effective searching should be facilitated
by a user- friendly interface.
4) Handling billing
The product will generate a bill receipt for both the operation manager and the buyer.
Order verification and confirmation must be made for each order placed. The order
tracking must be available to for the users.

15
2.3 User Classes and Characteristics
Users of the System should have detailed Knowledge of software, there are two main
types of users as show below.

1. User Classes:

o Customers: These are the primary users of the system. They include
individuals seeking to purchase medicines online. Their characteristics include:
Roles: Browsing medicines, placing orders, making payments, and
tracking deliveries.
Responsibilities: Selecting medicines, providing accurate information,
and ensuring secure transactions.
o Administrators: These users manage the system. Their characteristics include:

 Roles: Updating medicine lists, handling customer inquiries, and


monitoring transactions.
 Responsibilities: Ensuring data accuracy, maintaining inventory,
and resolving issues promptly.
2. Characteristic:

 Availability: The system remains accessible at all times, enabling users


to place medicine orders whenever they need them.
 Medicine Information: Users can retrieve comprehensive details about
various medicines. This includes information on dosage, side effects,
and usage instructions.
 Online Transactions: The system ensures secure payment processing
through credit cards. Users can confidently complete transactions
without compromising their financial data.

2.4 Operating Environment


The software will operate with any operating system (Windows XP, Windows Vista,
and Mac OS.) and browsers like Chrome, Mozilla Firefox, Internet Explorer with full
support for network connectivity. It is web-based so it will require a client and server
GUI.

2.5 Design and Implementation Constraints

The constraints related to design and implementation of this software are specified by
the programming language used for implementation, the software engineering
environment,
16
the programming methodology used, and the availability of supporting tools for
automatic system analysis to keep the patent functions in distinct modules.
The interface of the software is designed to support only English language as it is well
understood nationwide.
User-friendly software interface will be designed. Moreover, the designed software can
be implemented in any operating system and user will not have to do any additional
installation to run this software on his PC. This software requires PCs to have only basic
features installed to run this software.
The system can store data up to 4 terabytes but when the system is busy user may have
to wait for one to two minutes for the pages to load otherwise the medicine ordering
system will work smoothly.
This software system allows more than one user to login and use it at a time. It has no
limitations for the number of users using it. The online medicine ordering system will
operate 24 hours on all weekdays.
Only the developer will be able to view and edit its source code. Moreover, changings in
record and data can only be done by the authorized and permitted users. No
unauthorized access to the system will be permitted.

2.6 User Documentation


This software product will include a quick start guideline user manual covering
complete overview of the product, configuration of SQL server along with other tools,
technical details, and backup procedures. On-line help at
www.medicineorderingsystem.com can be accessed and further detail at contact 051-
*** can also be availed. The tutorials and manual covering step by step guidance to the
product will be delivered along with the software and will also be available at
www.medicineorderingsystem.com.pk

2.7 Assumptions and Dependencies


The accuracy of the information provided by the software regarding the related diseases.
medicines specifications, usages, dosages depends upon the authenticity of primary data
sources. The primary sources need to be independently verified for them to be reliable.
There may arise a need to incorporate a doctor or physician's approval or a health care
facility to prescribe some medications. The medicines available for purchase need to be
provided by a pharmacist with identity verification and having a license of the medical
store. Besides, it is not feasible for doctors and health care professionals to receive
information regarding potential drug interaction problems as they prescribe drugs to
patients who already are consuming other medication that may result in their harmful
cross action.

3. External Interface Requirements

17
3.1 User Interface (UI):

18
 User Registration/Login:
 Allow users to create accounts easily with minimal information.
 Implement secure authentication mechanisms.
 Dashboard:
 Provide a user-friendly dashboard for easy navigation.
 Display order history, prescription uploads, and account details.
 Search and Browse:
 Implement a robust search functionality for medicines.
 Organize medicines into categories for easy browsing.
 Product Pages:
 Include detailed information about each medicine.
 Add options for dosage, quantity, and prescription upload.
 Shopping Cart:
 Enable users to add/remove items easily.
 Show a summary of the order, including costs.
 Checkout Process:
 Simplify the checkout with clear steps.
 Integrate secure payment gateways.
 Prescription Upload:
 Allow users to upload prescriptions securely.
 Ensure compliance with privacy and data protection regulations.
 Order Confirmation:
 Provide a confirmation page with order details.
 Send email/SMS confirmations to users.
3.2 Hardware Interfaces:
 Ensure compatibility with various devices (desktops, tablets, and smartphones).
 Optimize for different screen sizes and resolutions.
 Consider touch interfaces for mobile users.
 Integrate with common hardware components like barcode scanners (if applicable).
3.3 Software Interfaces:
 Payment Gateways:
 Integrate secure and reliable payment gateways (e.g., GPay,PhonePay).
 Database Management:

19
 Implement a robust database for storing user information, orders, and
product details.
 Prescription Verification:
 Integrate a system for verifying uploaded prescriptions.
 Collaborate with healthcare providers for prescription validation.
3.4 Communication Interfaces:
 User Notifications:
 Implement push notifications for order updates.
 Send email/SMS alerts for order confirmation, shipping, and delivery.
 Customer Support:
 Provide chat support for real-time assistance.
 Integrate a ticketing system for issue resolution.
 Integration with Pharmacy:
 Establish communication protocols with pharmacies for order processing.
 Ensure secure data exchange between the platform and pharmacies.
4. System Features

1. User Registration and Profile Management:


 Allow users to create accounts with basic information.
 Provide the ability to manage profiles, including personal details and prescription
history.

2. Search and Browse Functionality:


 Implement a powerful search engine for medicines based on name, category, or
condition.
 Enable users to browse through categories and filter results.

3. Product Information:
 Display detailed information about each medicine, including dosage, side effects,
and usage instructions.
 Include images and user reviews if available.

20
4. Prescription Upload:
 Allow users to securely upload prescriptions.
 Implement a validation system to ensure the authenticity of prescriptions.

5. Shopping Cart and Checkout:


 Enable users to add/remove items from the shopping cart easily.
 Provide a clear and concise checkout process with secure payment options.
 Offer the option to save multiple delivery addresses.

6. Order Tracking:
 Implement a real-time order tracking system.
 Provide status updates from order confirmation to delivery.

7. User Notifications:
 Send push notifications, emails, or SMS for order confirmations, shipment details,
and delivery status.
 Notify users about prescription verification status.

8. Payment Integration:
 Integrate secure payment gateways for online transactions.
 Provide multiple payment options, including credit/debit cards and digital wallets.

9. Security and Privacy:


 Implement secure authentication and authorization mechanisms.
 Comply with data protection regulations and ensure the confidentiality of user
information.

10.Feedback and Ratings:


 Allow users to provide feedback on products and services.
 Display ratings and reviews for medicines.

11.Responsiveness:

21
 Design the platform to be responsive on various devices like laptop,Computer,and
especially mobile phones and tablets.

5. Other NON functional Requirements:

5.1 Performance Requirements:


 Response Time:
 The system should respond to user interactions (search, add to cart, checkout)
within 2 seconds.
 Transaction Processing:
 Process a minimum of 1000 transactions per hour during peak times.
 Scalability:
 The system should scale horizontally to handle a 20% increase in user traffic
during promotional events.
5.2 Safety Requirements:
 Prescription Verification:
 Implement a robust prescription verification process to ensure the safety of
users.
 Medicine Recalls:
 Provide a mechanism to quickly disable the ordering of recalled medicines.
5.3 Security Requirements:
 Data Encryption:
 All user data, especially personal and health information, must be encrypted
during transmission and storage.
 Access Control:
 Implement role-based access control to ensure that only authorized personnel
can access sensitive information.
 Secure Payment Processing:
 Use industry-standard encryption for all payment transactions to protect
financial data.
 User Authentication:
 Employ multi-factor authentication for user logins to enhance security.

22
5.4 Software Quality Attributes:
 Reliability:
 The system should have an uptime of at least 99.9%.
 Usability:
 The user interface should be intuitive, and user satisfaction surveys should
indicate a score of at least 85%.
 Maintainability:
 Code should follow best practices, and updates should be deployable without
disrupting service.
 Performance Efficiency:
 Optimize database queries and ensure quick response times to maintain a
seamless user experience.

5.5 Business Rules:


 Prescription Requirement:
 Users must provide a valid prescription for prescription medicines.
 Delivery Zones:
 Specify geographical areas for delivery and clearly communicate these zones
to users.
 Return Policy:
 Clearly define the return policy for medicines and communicate it to users
during the checkout process.

6. Other Requirements:
 Cross-Browser Compatibility:
 Ensure the platform is compatible with major web browsers (Chrome, Firefox,
Safari, Edge) to offer a seamless experience to users.
 Offline Functionality:
 Implement a feature allowing users to view previously accessed information, such
as order history and prescription details.

23
PRACTICAL – 3

Aim: To perform Data Modelling: E-R Diagram.


Entity-Relationship model is used to represent a logical design of a database to be
created. In ER model, real world objects (or concepts) are abstracted as entities, and
different possible associations among them are modeled as relationships. We represents
the attributes, entities and relation using the ER diagram. Using this ER diagram, table
structures are created, along with required constraints. Finally, these tables are
normalized in order to remove redundancy and maintain data integrity. Thus, to have data
stored efficiently, the ER diagram is to be drawn as much detailed and accurate as
possible.

24
 ER Diagram of the System:

25
PRACTICAL – 4

Aim: To perform Scenario Based Modelling: Use Case Diagram.

Use case diagrams are a common way to communicate the major functions of a software
system. A use case diagram at its simplest is a representation of a user's interaction with
the system that shows the relationship between the user and the different use cases in
which the user is involved. A use case diagram can identify the different types of users
of a system and the different use cases and will often be accompanied by other types of
diagrams as well.

Use cases are nothing but the system functionalities written in an organized manner.
Now another thing which is relevant to the use cases are the actors. Actors can be
defined as something that interacts with the system.

So in brief, the purposes of use case diagrams can be as follows:


• Used to gather requirements of a system.
• Used to get an outside view of a system.
• Identify external and internal factors influencing the system.
• Show the interacting among the requirements are actors.

 Symbols used in Use Case diagram:

26
 Use Case Diagram of the System:

27
PRACTICAL – 5

Aim: To perform the Class Based Modelling : Class diagram.


The class diagram is the main building block of object-oriented modelling. It is used
both for general conceptual modelling of the systematics of the application, and for
detailed modelling translating the models into programming code. Class diagrams can
also be used for data modeling. The classes in a class diagram represent both the main
elements, interactions in the application, and the classes to be programmed.

In the diagram, classes are represented with boxes that contain three compartments:

The top compartment contains the name of the class. It is printed in bold and centered,
and the first letter is capitalized.

The middle compartment contains the attributes of the class. They are left- aligned and
the first letter is lowercase.

The bottom compartment contains the operations the class can execute. They are also
left- aligned and the first letter is lowercase.

In the design of a system, a number of classes are identified and grouped together in a
class diagram that helps to determine the static relations between them. With detailed
modelling, the classes of the conceptual design are often split into a number of
subclasses.

 Symbols used in Class diagram:

28
29
 Class Diagram of the System:

30
PRACTICAL – 6

Aim: To draw the behavioural view diagram : State Diagram.


The name of the diagram itself clarifies the purpose of the diagram and other details. It
describes different states of a component in a system. The states are specific to a
component/object of a system. A State diagram describes a state machine. Now to
clarify it, state machine can be defined as a machine which defines different states of an
object and these states are controlled by external or internal events. As State diagram
defines states it is used to model lifetime of an object.

State diagram is one of the UML diagrams used to model dynamic nature of a system.
They define different states of an object during its lifetime. And these states are changed
by events. So State diagrams are useful to model reactive systems. Reactive systems can
be defined as a system that responds to external or internal events.

State diagram describes the flow of control from one state to another state. States are
defined as a condition in which an object exists and it changes when some event is
triggered. So the most important purpose of State diagram is to model life time of an
object from creation to termination. State diagrams are also used for forward and reverse
engineering of a system. But the main purpose is to model reactive system.

Following are the main purposes of using State diagrams:

• To model dynamic aspect of a system.


• To model life time of a reactive system.
• To describe different states of an object during its life time.
• Define a state machine to model states of an object.

31
 State Diagram of the System:

32
PRACTICAL – 7

Aim : To draw the behavioural view diagram : Activity

diagram. Activity diagram:

An activity denotes a particular action taken in the logical flow of control.This could
simply be invocation of a mathematical function, alter an object's properties and so on.
An activity is represented with a rounded rectangle, as shown in figure. A label inside
the rectangle identifies the corresponding activity.

There are two special types of activity nodes: initial and final. They are represented with
a filled circle, and a filled in circle with a border respectively. Initial node represents the
starting point of a flow in an activity diagram. There could be multiple initial nodes,
which mean that invoking that particular activity diagram would initiate multiple flows.
A final node represents the end point of all activities. Like an initial node, there could be
multiple final nodes. Any transition reaching a final node would stop all activities. A
flow is represented with a directed arrow. A decision node, represented with a diamond,
is a point where a single flow enters and two or more flows leave. This is represented
with a diamond shape, with two or more flows entering, and a single flow leaving out.
Fork is a point where parallel activities begin. A join is depicted with a black bar, with
multiple input flows, but a single output flow. Physically it represents the
synchronization of all concurrent activities.

33
34
 Activity Diagram of the System:

35
36
PRACTICAL – 8

Aim:To draw the Behavioral View Diagram: Sequence Diagram

Sequence diagram represents the behavioral aspects of a system. Sequence diagram


shows the interactions between the objects by means of passing messages from one
object to another with respect to time in a system.

Sequence diagram contains the objects of a system and their life-line bar and the
messages passing between them. Objects appear at the top portion of sequence
diagram. Object is shown in a rectangle box. Name of object precedes a colon ‘:’
and the class name, from which the object is instantiated. The whole string is
underlined and appears in a rectangle box. A down- ward vertical line from object-
box is shown as the life-line of the object. A rectangle bar on life- line indicates
that it is active at that point of time. Messages are shown as an arrow from the life-
line of sender object to the life-line of receiver object and labelled with the message
name.

Symbols used in Sequence diagram:

37
 Sequence Diagram of the System:

38
PRACTICAL – 9

Aim: Flow-Oriented Modeling: Data Flow Diagram

0 Level DFD:

39
40
41
42
43
44
PRACTICAL – 10

Aim : To draw the Component diagram for all use cases.

45
PRACTICAL – 11

Aim: To Determine the Schedule of the Software: Timeline Chart


Number Task to Complete Estimated time

1 Project Initialization 1 Weeks

2 Documentation 1 Weeks

3 Requirement Gathering 1 Weeks

4 Estimation and Scheduling 4 Weeks

5 Design Analysis 2 Weeks

6 Validate and update 2 Weeks

7 Development 3 Weeks

8 Testing and Validation 2 Weeks

W1 W2 W3 W4 W5 W6 W7 W8 W9 W10 W11 W12 W13 W14 W15 W16


Project
Initialization
Documentation
Requirement
Gathering
Estimation and
Scheduling
Design
Analysis
Validate and
update
Development
Testing and
Validation

46
PRACTICAL – 12

Aim: Study to Find out the cost of the CAD software : Using LOC & FP
Approach.

 Size of the Software:


Estimate the number of lines of code required for the Online Medicine Ordering
System. This can be based on the functionalities required for user registration,
browsing medicines, adding to cart, checkout process, payment integration,
order tracking, and user management.

 Complexity of the Software:


Assess the complexity of the system's design and architecture. This may include
complexities related to user authentication, inventory management, prescription
verification, integration with third-party APIs (e.g., payment gateways), and
ensuring compliance with healthcare regulations (e.g., HIPAA).

 Development Team's Experience:


Evaluate the experience and expertise of the development team members.
Consider their familiarity with web development frameworks (e.g., Django,
Ruby on Rails), database management systems (e.g., MySQL, PostgreSQL),
experience with e-commerce platforms, and knowledge of pharmaceutical
regulations and practices.

 Software Development Environment:


Assess the software development environment in terms of available tools and
technologies. This may include IDEs (Integrated Development Environments),
version control systems (e.g., Git), testing frameworks, and deployment
pipelines. Consider any specific requirements related to data security and
privacy in the healthcare domain.

COCOMO Equation:

Effort = A * (Size) ^ B * (Complexity) * (Team experience) * (Development


environment)

Where:

A, B are constants depending on the type of project.


Size is the estimated number of lines of code required for the project.
Complexity is a rating of the system's complexity on a scale from very low to
extra high.

47
Team experience is a rating of the development team's experience on a scale
from very low to very high.
Development environment is a rating of the software development environment
on a scale from very low to very high.

To calculate the cost of the CAD software using Lines of Code


(LOC) approach:
Cost per LOC = Rs. 20
LOC for the project = 1700

So, the total cost for the project would be:


Total Cost = Cost per LOC * LOC for the project
Total Cost = Rs. 20 * 1700 = Rs. 34,000

let's proceed with the Function Point (FP) approach.

Assuming you have the number of function points for the project and
the cost per function point, let's say:

Number of Function Points (FP) = 100


Cost per Function Point = Rs. 500
Now, we can calculate the total cost using the FP approach:

Total Cost = Number of FP * Cost per FP


= 100 * Rs. 500
= Rs. 50,000

So, if the number of function points for the project is 100 and the cost
per function point is Rs. 500, then the total cost of the CAD software
would be Rs. 50,000.

48
PRACTICAL – 13

Aim: Designing Test Suites.


Interface Testing

This section lists the functional requirements used for creating the testcase
table, the test cases that were used to verify the interface table, and the results
for the test-cases table.

Functional Requirement Functional Requirement Short Description


Number
F01 The online medicine ordering system shall have two
types of authentication : User authentication and
Admin authentication.
F02 Users shall be able to browse the available medicines
and their details.
F03 Users shall be able to search for medicines based on
name, category, or other criteria.
F04 Users shall be able to add medicines to their shopping
cart and proceed to checkout.
F05 Admins shall be able to add new medicines to the
system.
F06 Admins shall be able to view and manage orders
placed by users.

49
Test Cases:

Test Case Description Input Expected Valid Range


ID Output
Test 01 To test the Username Valid Username
Login/Authentication and Destination and Password
interface Password Page
Test 02 To test if users can Navigate to List of -
browse available medicines available
medicines page medicines
with details
Test 03 To test if users can Search query Search results Search query
search for medicines for a specific of medicines
medicine according to
query

Test 04 To test if users can add Add Confirmation -


medicines to cart and medicines to of successful
proceed to checkout cart, proceed order
to checkout placement

Test 05 To test if admins can Input details New medicine Information


add new medicines of new added to the provided
medicine system

Test 06 To test if admins can Navigate to List of orders -


view and manage orders page with options
orders for
management

50
PRACTICAL – 14

Aim: Analyze the Risk related to your Project.

Here are some points,

 Regulatory Compliance:
Consider pharmaceutical regulations for online prescription verification and
distribution.

 Data Privacy and Security:


Protect sensitive user data (such as medical and personal information) against
data breaches and cyberattacks.
Implement encryption for data storage and transfer.

 System Availability and Reliability:


Ensure high system availability to avoid downtime, which could impact users'
access to critical medications.
Implement backup and disaster recovery plans.

 Supply Chain Management:


Ensure reliable supply chain logistics for timely delivery of medications.
Mitigate risks of supply chain disruptions due to various factors such as
weather, geopolitical issues, or supplier failures.

 Quality Assurance:
Ensure quality and authenticity of medicines through trusted suppliers and
proper inventory management.
Implement quality control checks in the ordering and fulfillment process.

 User Authentication and Authorization:


Establish secure user authentication methods, such as multi-factor
authentication. Define appropriate user roles and permissions to prevent
unauthorized access to sensitive data.

 Scalability and Performance:


Design the system to handle a growing number of users and transactions.
Monitor performance and optimize system resources to maintain user
satisfaction.

 Fraud Prevention:

51
Implement mechanisms to detect and prevent fraudulent activities, such as false
orders or payment fraud.
Monitor user activities for suspicious patterns.

 Usability and Accessibility:


Ensure the system is user-friendly and accessible to all users, including those
with disabilities.
Conduct usability testing to identify and resolve potential issues.

 Technical Risks:
Stay updated with the latest technology trends and best practices to avoid
obsolescence.
Manage risks associated with third-party integrations and dependencies.

 Project Management Risks:


Monitor and manage risks associated with project schedule, budget, and
resources.
Mitigate risks of team communication breakdowns and scope creep.

 Legal and Ethical Risks:


Address potential legal disputes, such as intellectual property rights and liability
claims.
Follow ethical practices in user data handling and advertising.

 Customer Satisfaction:
Ensure customer satisfaction by providing accurate and timely deliveries and
good customer service.
Collect feedback to improve the system and address issues.

52

You might also like