Systems Analysis and Design Overview
Systems Analysis and Design Overview
Management
UNIT-II
1. Systems Analysis and Design Techniques
• Systems Analysis and Design (SA&D) is a structured approach to
understand, improve, and create information systems to meet
organizational needs by identifying problems, gathering requirements,
and then designing a solution. It involves systems analysis, which
focuses on understanding the current system and its problems, and
systems design, which creates a plan for a new or improved system to
solve those problems. The goal is to enhance efficiency, effectiveness,
and overall system performance, leading to better business
outcomes.
System Analysis:
• Problem Identification: Analyzing existing processes to identify
inefficiencies, bottlenecks, and areas for improvement.
• Information Gathering: Collecting data about the current system,
stakeholders, and user needs.
• Requirement Definition: Determining the specific functions and
features a new system must have to meet business objectives.
System Design:
• System Architecture: Creating a high-level overview of the system's
structure, components, and how they will interact.
• Detailed Design: Specifying the technical requirements, user
interfaces, and data structures for the new system.
• Solution Development: Planning how the new system will be built,
implemented, and maintained to achieve its goals.
Types of Systems
• Open Systems: An open system is the one that interacts freely with the
external factors. These systems are capable of adapting the changes
made within the system.
Example: business organizations.
• Closed Systems: A closed system is one which is contained within
itself. It does not have any interaction with the environment.
Example: A computer system.
• Adaptive Systems: Adaptive systems are those that change their
behavior with the changing environment.
Example: constantly changing market.
• Dynamic Systems: Dynamic systems are those that change and evolve
over a period of time.
[Link]
• The System Development Life Cycle (SDLC) provides a well-
structured framework that gives an idea, of how to build a system. It
consists of steps as follows - Plan, Analyze, Design, Develop, Test,
Implement and Maintain. In this article, we will see all the stages of
system development.
Stage 1: Planning
• The Planning phase sets the foundation for the entire SDLC. This stage
involves identifying the system's objectives, defining the scope, setting
timelines, and allocating necessary resources. Effective planning ensures
that the development process aligns with the organization's goals,
guiding the project in a clear and structured direction.
Stage 2: Analysis
• In the Analysis phase, the focus is on understanding and documenting
the system’s requirements. This involves gathering input from
stakeholders, reviewing current processes, and identifying the system’s
needs. The data collected forms the basis for developing a system that
addresses both user expectations and organizational challenges.
Stage 3: Design
• The Design phase translates the requirements gathered during Analysis
into a detailed technical blueprint. This includes designing the system’s
architecture, database models, user interfaces, and defining system
components. The outcome of this phase provides the technical structure
needed to guide the upcoming development and implementation
activities.
Stage 4: Development
• In this phase, the actual coding and development of the system take place.
Developers build the system according to the design specifications, implementing
features, creating databases, and writing code. This phase also includes initial
internal testing to ensure the system functions as expected and adheres to design and
functional requirements.
Stage 5: Testing
• Testing is a crucial phase that ensures the system is free of errors and functions
correctly under various conditions. This phase includes multiple types of testing,
such as unit testing, integration testing, system testing, and user acceptance testing.
The goal is to identify and fix any issues before the system is deployed.
Stage 6: Implementation
• The Implementation phase involves deploying the developed system into a live
environment. Key activities include system installation, migrating data, training
users, and configuring infrastructure. This phase requires thorough planning to
ensure a smooth transition from the existing system to the new one with minimal
disruptions.
Stage 7: Maintenance
• Maintenance is an ongoing phase where the system is monitored, maintained, and
updated as needed. This includes bug fixes, performance enhancements, security
patches, and responding to user feedback. Proper maintenance ensures the system
remains efficient, secure, and adaptable to future business needs.
3. System design
• System design is the process of planning, structuring and defining
the architecture of Software System.
• Involves translating user requirements into a detailed blueprint that
guides the implementation phase.
• The goal is to create a well-organized and efficient structure that
meets the intended purpose while considering factors
like scalability, maintainability, and performance.
High-Level Design (HLD)
• It lays out the overall architecture of the system — how major components
interact, what services or modules will exist, and how data flows among
them.
• Gives you the big picture: how the system fits together, its core structure,
and major decisions.
• Done by architects, stakeholders and managers
Prerequisite Technical Knowledge for HLD
• Basic Coding Skills (Data Structures and Algorithms)
• Compared to Low Level Design, High Level Design is typically done by
more senior people who have hands-on experience on software projects.
• Knowing the roles of components like databases (SQL and NoSQL), caches
(Redis, Memcached, CDNs), and APIs.
• Low Level Design (Object Oriented Programming and Design Patterns)
• In-depth understanding of Functional Requirements (What the system must
do e.g., user registration, streaming) and Non-Functional Requirements
(How the system should perform—scalability, latency, availability, security,
etc)
• Networking and Security Fundamentals like DNS, protocols (TCP/UDP,
HTTP, WebSockets), OAuth, JWT, TLS/SSL, rate-limiting, API security,
and basic DDOS protection.
Low-Level Design (LLD)
• It covers how each part works & is implemented internally
• Gives developers a clear, actionable blueprint to build each
component.
• Once a High Level Design is built by stakeholders, it is the job of
senior developers and designers to create a low level design.
Prerequisites / What You Should Know First:
• Basic Coding Skills (Data Structures and Algorithms)
• Strong grasp of OOP concepts (Encapsulation, inheritance,
polymorphism & abstraction)
4. AGILE Model
• The Agile methodology is a project management
approach that involves breaking the project into phases
and emphasizes continuous collaboration and
improvement. Teams follow a cycle of planning,
executing, and evaluating.
1. Requirement Gathering
• The project team identifies and documents the needs and expectations
of various stakeholders, including clients, users, and subject matter
experts.
• It involves defining the project’s scope, objectives, and requirements.
• Establishing a budget and schedule.
• Creating a project plan and allocating resources.
2. Design
• Developing a high-level system architecture.
• Creating detailed specifications, which include data structures,
algorithms, and interfaces.
• Planning for the software’s user interface.
3. Development (Coding)
• Writing the actual code for the software. Conducting unit testing to
verify the functionality of individual components.
4. Testing
• Integration Testing: Ensuring that different components work
together.
• System Testing: Testing the entire system as a whole.
• User Acceptance Testing: Confirming that the software meets user
requirements.
• Performance Testing: Assessing the system’s speed, scalability, and
stability.
5. Deployment
• Deploying the software to a production environment.
• Put the software into the real world where people can use it.
• Make sure it works smoothly in the real world.
• Providing training and support for end-users.
6. Review (Maintenance)
• Addressing and resolving any issues that may arise after deployment.
• Releasing updates and patches to enhance the software and address
problems.
5. Waterfall Model
• The Waterfall Model is a Traditional Software Development
Methodology. It was first introduced by Winston W. Royce in 1970.
It is a linear and sequential approach to software development that
consists of several phases. The waterfall model is a Software
Development Model used in the context of large, complex projects,
typically in the field of information technology. It is characterized by
a structured, sequential approach to Project Management and
Software Development.
1. Requirements Analysis and Specification
• Requirement Analysis and specification phase aims to understand
the exact requirements of the customer and document them properly.
This phase consists of two different activities.
Requirement Gathering and Analysis: Firstly all the requirements
regarding the software are gathered from the customer and then the
gathered requirements are analyzed.
Requirement Specification: These analyzed requirements are
documented in a software requirement specification (SRS) document.
2. Design
• The goal of this Software Design Phase is to convert the
requirements acquired in the SRS into a format that can be coded in a
programming language. It includes high-level and detailed design as
well as the overall software architecture. A
Software Design Document is used to document all of this effort
(SDD).
High-Level Design (HLD): This phase focuses on outlining the broad
structure of the system.
Low-Level Design (LLD): Once the high-level design is in place, this
phase zooms into the details.
3. Development
• In the Development Phase software design is translated into
source code using any suitable programming language. Thus
each designed module is coded. The unit testing phase aims to
check whether each module is working properly or not.
4. Testing and Deployment
Testing: Integration of different modules is undertaken soon
after they have been coded and unit tested. Integration of various
modules is carried out incrementally over several steps. During
each integration step, previously planned modules are added to
the partially integrated system and the resultant system is tested.
Alpha testing: Alpha testing is the system testing performed by
the development team.
Beta testing: Beta testing is the system testing performed by a
friendly set of customers.
Acceptance testing: After the software has been delivered, the
customer performs acceptance testing to determine whether to
accept the delivered software or reject it.
5. Maintenance
• In Maintenance Phase is the most important phase of a software life
cycle. The effort spent on maintenance is 60% of the total effort
spent to develop a full software. There are three types of
maintenance.
• Corrective Maintenance: This type of maintenance is carried out to
correct errors that were not discovered during the product
development phase.
• Perfective Maintenance: This type of maintenance is carried out to
enhance the functionalities of the system based on the customer’s
request.
• Adaptive Maintenance: Adaptive maintenance is usually required
for porting the software to work in a new environment such as
working on a new computer platform or with a new operating
system.
6. Spiral Model
• The Spiral Model is one of the most important SDLC model. The Spiral
Model is a combination of the waterfall model and the iterative model. It
provides support for Risk Handling.
• The Spiral Model was first proposed by Barry Boehm. This article
focuses on discussing the Spiral Model in detail.
What is the Spiral Model?
• The Spiral Model is a Software Development Life Cycle (SDLC)
model that provides a systematic and iterative approach to software
development. In its diagrammatic representation, looks like a spiral with
many loops. The exact number of loops of the spiral is unknown and can
vary from project to project. Each loop of the spiral is called a phase of
the software development process.
Phases of the Spiral Model
• The Spiral Model is a risk-driven model, meaning that the focus is on
managing risk through multiple iterations of the software development
process. Each phase of the Spiral Model is divided into four
Quadrants:
1. Objectives Defined
• In first phase of the spiral model we clarify what the project aims to
achieve, including functional and non-functional requirements.
• 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 .
2. Risk Analysis and Resolving
• In the risk analysis phase, the risks associated with the project are identified and
evaluated.
• 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.
3. Develop the 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.
• In the evaluation phase, the software is evaluated to determine if it meets the
customer's requirements and if it is of high quality.
4. 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 next iteration of the spiral begins with a new planning phase, based on the
results of the evaluation.
• The Spiral Model is often used for complex and large software development
projects, as it allows for a more flexible and adaptable approach to
Software development. It is also well-suited to projects with significant
uncertainty or high levels of risk.
7. Iterative Model
1. Requirement Analysis
• The first step in the Incremental Model is understanding what the
software needs to do. The team gathers the requirements from the
product experts and clearly defines the system’s functional needs. This
phase is important because it sets the foundation for everything else in
the development process.
2. Design & Development
• Next, the team focuses on designing how the software will function
and starts developing it. They work on adding new features and
making sure the system works as expected. The design and
development steps go hand-in-hand to build the functionality of the
software.
3. Testing
• Once a feature is developed, it goes through testing. The testing
phase checks how the software performs, including both new and
existing features. The team uses different testing methods to make
sure everything is working correctly.
4. Implementation
• This phase involves writing the final code based on the design and
development steps. After testing the functionality, the team verify
that everything is working as planned. By the end of this phase, the
product is gradually improved and updated until it becomes the final
working version.
9. RAD Model
• 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.
• Rapid Application Development focuses on gathering customer
requirements through workshops or focus groups, early testing of the
prototypes by the customer using iterative concept, reuse of the existing
prototypes (components), continuous integration and rapid delivery.
Business Modelling
• 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.
Data Modelling
• 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.
Process Modelling
• 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 model for any
changes or enhancements to the data object sets is defined in this phase.
Process descriptions for adding, deleting, retrieving or modifying a data
object are given.
Application Generation
• The actual system is built and coding is done by using automation
tools to convert process and data models into actual prototypes.
Testing and Turnover
• 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.
10. Data flow diagram
•A Data Flow Diagram (DFD) is a traditional visual representation of the
information flows It shows how data enters and leaves the system, what
changes the information, and where data is stored.
•The objective of a DFD is to show the scope and boundaries of a system
as a whole.
•It may be used as a communication tool between a system analyst and any
person who plays a part in the order that acts as a starting point for
redesigning a system.
•The DFD is also called as a data flow graph or bubble chart. within a
system.
Context Data Flow Diagram
• Context DFD is sometimes referred to as level 0 DFD. It’s the top-
level diagram among all, which illustrates the entire system in its
relationship to any external entities.
• Using DFD layers, the cascading levels can be nested directly in the
diagram, providing a cleaner look with easy access to the deeper dive.
[Link] Relationship (ER) Diagram
• A relationship diagram in Information Management is called an
Entity Relationship Diagram (ERD), which is a visual model that shows
how different entities (like "customers," "products," or "orders") are
connected within a system. ERDs are used to design databases, model
business information, and illustrate the structure of data by representing
entities as rectangles, relationships as diamonds, and attributes as ovals,
connected by lines.
components of an ERD
Entities:
• These are the "things" in the system that have data, such as a "Student" or
"Course." They are typically represented by rectangles.
Attributes:
• These are the properties or characteristics of an entity, like a "Student's"
name or an "Order's" date. They are often shown as ovals connected to
their entity.
Relationships:
• These show how entities are associated with each other, such as a student
"enrolls" in a course. They are represented by diamonds and described by
verbs.
Types of Relationship Mapping
1. One - to - One Relationship In One - to - One Relationship, one
entity is related with only one other entity. One row in a table is linked
with only one row in another table and vice versa. For example: A
Country can have only one Capital City.
2. One - to - Many Relationship In One - to - Many Relationship, one
entity is related to many other entities. One row in a table A is linked
to many rows in a table B, but one row in a table B is linked to only
one row in table A.
•For example: One Department has many Employees. Department
Students.
Package diagram
•Package diagrams group classes into packages. They show the different
dependencies and relationships between the packages within a system.
Object diagram
•Object diagrams are similar to class diagrams. The difference is that object
diagrams use real-world examples.
Component diagram
•This type of UML diagram shows the structural relationship between each
physical component and subcomponent in a complex software system. This
helps stakeholders understand how the components are organized and wired
Composite structure diagram
•Composite structure diagrams visualize a class’s internal structure. These
diagrams break down the network of classes, interfaces, and components.
This type of UML diagram also shows how these elements interact
with each other and why they are essential to the overarching software
structure.
Deployment diagram
•A deployment diagram shows the relationship between the software and
hardware components in a system. It depicts the physical arrangement of
the nodes in a distributed system. These diagrams are especially useful
when the software being developed will operate on multiple different
hardware systems.
2. Behavioral diagrams
Activity diagram
•A UML activity diagram breaks down large processes into smaller
activities.
Sequence diagram
•UML sequence diagrams show how different objects relate and interact
with one another in a system.
Communication diagram
•UML communication diagrams are also called collaboration diagrams.
They are relatively similar to sequence diagrams in that they focus on
the messages passed between different objects.
Data Security: DBMS enhances data security through access control and
encryption. It enforces privacy policies and prevents unauthorized access.
As user numbers grow, it mitigates associated risks of breaches.
Data integration: DBMS unifies data from different sources into a
centralized system. This provides a coherent organizational view of
operations. It helps to keep track of how one segment of the company
affects another segment.
• Data abstraction: Since many complex algorithms are used by the
developers to increase the efficiency of databases that are being
hidden by the users through various data abstraction levels to allow
users to easily interact with the system.
• Reduction in data Redundancy: DBMS avoids data duplication by
enforcing unique constraints. It removes unnecessary repetitive
entries in databases. This ensures efficient use of storage and
improves consistency. for e.g. - If there are two same students in
different rows, then one of the duplicate data will be deleted.
• Data sharing: A DBMS provides a platform for sharing data across
multiple applications and users, which can increase productivity and
collaboration.
• Data consistency and accuracy: DBMS enforces integrity
constraints to maintain valid data. It minimizes discrepancies by
syncing updates across all views. This reduces errors and ensures
reliable & consistent data.
17. Data Warehousing and Data Mining
• Data warehousing is the process of collecting, integrating, storing, and
managing data from multiple sources in a central repository. It enables
organizations to organize large volumes of historical data for efficient
querying, analysis, and reporting.
• The main goal of data warehousing is to support decision-making by
providing clean, consistent, and timely access to data. It ensures fast
data retrieval even when working with massive datasets.
1. Data Sources
• Data sources are the systems and platforms that provide raw data to the data
warehouse. These can include:
Transactional databases:
• Relational databases containing transactional data from business operations,
such as sales, inventory, and customer interactions.
Log files:
• Files generated by applications, servers, and devices, containing information
about events, activities, and errors.
APIs:
• Application programming interfaces that enable data exchange between
different systems and platforms.
Social media platforms:
• Websites and applications that generate user-generated content, such as
tweets, posts, and comments.
2. Data Integration and ETL
• Data integration is the process of consolidating data from multiple sources,
ensuring compatibility and consistency. The extraction, transformation, and
loading (ETL) process is a critical aspect of data integration, involving:
Extraction:
• Retrieving data from various sources and converting it into a format suitable for
processing and storage in the data warehouse.
Transformation:
• Modifying and cleansing data to ensure consistency, accuracy, and compatibility
with the data warehouse’s structure and requirements.
Loading:
• Importing the transformed data into the data warehouse for storage and analysis.
3. Data Storage
• Data storage is the layer responsible for storing and managing data in the data
warehouse. Key aspects of data storage include:
Database Management Systems:
• Relational database management systems (RDBMS) or columnar databases are
commonly used for data storage in data warehouses. Examples include
Microsoft SQL Server, Oracle, Amazon Redshift, and Google Big Query.
Data Modeling:
• Defining the structure, relationships, and constraints of the data stored in the
data warehouse using techniques such as star schema, snowflake schema, and
galaxy schema.
DATA MINING
• The Data Mining is defined as the procedure of extracting information
from huge sets of data. Data Mining is all about discovering hidden,
unsuspected, and previously unknown yet valid relationships amongst the
data. Data mining is also called Knowledge Discovery in Data (KDD),
Knowledge extraction, data/pattern analysis, information harvesting, etc.
How it works
Discovery:
• The core of data mining is to find non-obvious patterns and insights within
massive amounts of data that wouldn't be visible through simple
inspection.
Techniques:
• It employs various computational techniques, including statistical analysis,
machine learning, and database systems, to identify anomalies, correlations,
and other patterns.
Goal:
• The ultimate goal is to turn raw data into actionable knowledge that can
help businesses and organizations make better decisions, increase
efficiency, reduce costs, and gain a competitive edge.
1. Data mining process
• Data is collected and loaded into data warehouses on-site or on a cloud
service. Business analysts, management teams, and information technology
professionals access the data and determine how they want to organize
[Link] application software sorts and organizes the data. The end user
presents the data in an easy-to-share format, such as a graph or table.
18. Business Intelligence
• AI enhances business intelligence (BI) by automating data analysis,
identifying hidden patterns, and generating predictive insights from large
datasets. It transforms BI from a backward-looking process to a more
proactive one by enabling tasks like automated reporting, natural language
query, and anomaly detection, and making data analysis more accessible to
non-technical users.
Core components of Business Intelligence
Data Collection:
• Gathering data from various sources like sales, customer feedback, and social
media.
Data Analysis:
• Using tools and methodologies to clean, aggregate, and analyze the collected
data to find patterns and trends. This includes techniques like data mining
and predictive analytics.
Data Visualization:
• Presenting the analyzed data in an easy-to-understand format, such as
through dashboards, charts, and graphs, to make the information accessible to
decision-makers.
BI benefits businesses
• Improved Decision-Making: Replaces guesswork with data-driven
decisions across all departments.
• Performance Monitoring: Tracks key performance indicators (KPIs)
to monitor how effectively the business is meeting its objectives.
• Increased Efficiency: Identifies bottlenecks and streamlines
processes in areas like supply chain and operations.
• Strategic Insights: Helps spot market trends, identify new
opportunities, and understand customer behavior.
• Competitive Advantage: Provides the insights needed to stay ahead
of competitors.
Example applications
• Retail: Analyzing sales data to identify best-selling products and
inform marketing strategies.
• Marketing: Tracking campaign performance to see which initiatives
are most effective.
• Finance: Analyzing financial trends and managing expenses to
improve financial planning.
19. Artificial Intelligence
• Artificial intelligence (AI) is a field of computer science focused on creating
machines that can perform tasks requiring human intelligence, such as learning,
reasoning, problem-solving, and decision-making. AI systems achieve this by
using algorithms to simulate human cognitive functions, learning from large
amounts of data to identify patterns and make predictions or take
actions. Common applications include virtual assistants, self-driving cars, and
programs for image and speech recognition.
1. AI works
Simulation of intelligence:
• AI uses math and logic to simulate human reasoning, allowing computers to
learn from new information and make decisions.
Data-driven learning:
• AI systems are trained on vast datasets to recognize patterns and can learn from
their mistakes to improve accuracy over time.
Pattern recognition:
• AI can identify patterns in data to make predictions about future conditions and
occurrences.
Processing and action:
• AI can process information quickly and accurately to perform specific tasks,
which can range from simple to complex.
2. Evolution of Artificial Intelligence
1941: The dawn of electronic computing technology made its debut.
1956: The phrase "Artificial Intelligence" was coined, marking a new field.
1960s: Development of a checkers program capable of competing against
human players.
1980s: Implementation of systems focused on quality control.
2000: Introduction of the first advanced robot capable of walking
independently.
3. AI Applications
Expert Systems
• An Expert System is a specialized software designed to emulate the
decision-making abilities of a human expert within a specific field.
Natural Language Processing (NLP)
• NLP aims to bridge the gap between humans and machines by allowing
communication in everyday languages like English, instead of relying on
programming code.
Speech Recognition
• Human communication primarily relies on spoken language rather than
reading or writing.
• The aim of speech recognition technology is to enable machines to
comprehend and interpret the words we speak.
Computer Vision
• Humans primarily rely on sight to interpret the world around them, often
perceiving far more through vision than through hearing, touch, smell, or
taste.
Robotics
• A robot is an electromechanical system programmed to carry out
physical tasks. It acts as a versatile, reprogrammable manipulator
capable of moving materials, components, tools, or specialized
equipment through a range of programmed motions to accomplish
diverse operations.
20. Expert System
• An expert system in artificial intelligence is a computer program designed
to imitate the decision-making ability of a human expert. Instead of
relying only on raw data, it uses stored knowledge and logical reasoning
rules to solve problems within a specific domain. For example, in
healthcare, an expert system can suggest possible diagnoses by applying
medical knowledge, just like a doctor would.
Features Of Cryptography
• The features of cryptography that makes it a popular choice in
various applications could be listed down as
• Confidentiality: Information can only be accessed by the person for
whom it is intended and no other person except him can access it.
• Non-repudiation: The creator/sender of information cannot deny his
intention to send information at a later stage.
• Integrity: Information cannot be modified in storage or transition
between sender and intended receiver without any addition to
information being detected.
• Adaptability: Cryptography continuously evolves to stay ahead of
security threats and technological advancements.
• Interoperability: Cryptography allows for secure communication
between different systems and platforms.
• Authentication: The identities of the sender and receiver are
confirmed. As well destination/origin of the information is
confirmed.
Types Of Cryptography
1. Symmetric Key Cryptography
• Symmetric Key Cryptography is an encryption system where the
sender and receiver of a message use a single common key to
encrypt and decrypt messages. Symmetric Key cryptography is faster
and simpler but the problem is that the sender and receiver have to
somehow exchange keys securely. The most popular symmetric key
cryptography systems are Data Encryption Systems (DES) and
Advanced Encryption Systems (AES) .
3. Asymmetric Key Cryptography
• In Asymmetric Key Cryptography a pair of keys is used to encrypt and
decrypt information. A sender's public key is used for encryption and a
receiver's private key is used for decryption. Public keys and Private
keys are different. Even if the public key is known by everyone the
intended receiver can only decode it because he holds his private key.
The most popular asymmetric key cryptography algorithm is the RSA
algorithm.
3. Hash Functions
• Hash functions do not require a key. Instead, they use mathematical
algorithms to convert messages of any arbitrary length into a fixed-
length output, known as a hash value or digest. Hash functions are
designed to be one-way, meaning the original input cannot be derived
from the output. Given Below, Some of the most widely used hash
functions include
24. RSA Model of Encryption
• The RSA model of encryption is an asymmetric public-key
algorithm used in information management for secure data
transmission and digital signatures. It uses a pair of mathematically
linked keys: a public key for encrypting messages and a private
key for decrypting them. This two-key system, developed by Rivest,
Shamir, and Adleman, is fundamental for protecting online information
like emails, websites, and software.
1. Components of IoT
Devices and Sensors:
• These are the physical objects equipped with sensors, software, and
other technologies that enable them to collect and transmit data.
• Examples include smart thermostats, wearable fitness trackers, and
industrial machinery.
Connectivity:
• IoT devices connect to the internet through various communication protocols, such
as Wi-Fi, Bluetooth, ZigBee, cellular networks, and LPWAN (Low Power Wide
Area Network).
Data Processing:
• The data collected by IoT devices is processed either locally (on the device itself)
or in the cloud.
• This processing can involve filtering, aggregating, and analyzing data to derive
insights.
User Interface:
• Users interact with IoT systems through applications or dashboards that visualize
data, provide alerts, and allow control of devices.
2. Applications of IoT
Smart Homes:
• IoT enables home automation through devices like smart thermostats, lighting
systems, security cameras, and appliances that can be controlled remotely.
Wearable Technology:
• Fitness trackers and smartwatches monitor health metrics and provide users with
insights about their physical activity and well-being.
Industrial IoT (IIoT):
• In manufacturing and industrial settings, IoT devices monitor equipment
performance, track inventory, and optimize supply chains, leading to improved
efficiency and reduced downtime.
3. Challenges in IoT
Security:
• The proliferation of connected devices increases the risk of
cyberattacks. Ensuring data security and device integrity is a significant
challenge.
Interoperability:
• With various manufacturers and communication protocols, ensuring
that devices can communicate seamlessly is crucial for the success of
IoT systems.
Data Privacy:
• The collection and analysis of large amounts of personal data raise
concerns about user privacy and data protection.
Scalability:
• As the number of connected devices grows, managing and scaling IoT
infrastructure becomes increasingly complex.
Power Management:
• Many IoT devices operate on battery power, necessitating efficient
power management solutions to ensure longevity.
4. Future Trends in IoT
Edge Computing:
• Processing data closer to the source (at the "edge") reduces latency
and bandwidth usage, enabling real-time data analysis and decision-
making.
AI and Machine Learning Integration:
• Combining IoT with AI enhances data analysis capabilities, enabling
predictive maintenance, anomaly detection, and automated decision-
making.
5G Connectivity:
• The rollout of 5G networks promises faster data transfer rates, lower
latency, and the ability to connect a vast number of devices
simultaneously, significantly enhancing IoT capabilities.
Sustainability Initiatives:
• IoT will play a crucial role in monitoring and managing resources
more sustainably, from energy consumption to waste management.
Enhanced Security Protocols:
• As security concerns grow, the development of more robust security
frameworks and protocols for IoT devices will be critical.
29. Radio Frequency Identification (RFID)
• Radio Frequency Identification (RFID) is a form of wireless
communication that incorporates the use of electromagnetic or
electrostatic coupling in the radio frequency portion of the
electromagnetic spectrum to uniquely identify an object or person. It
uses radio frequency to search, identify, track, and communicate with
items and people.
Types of RFID
• There are many kinds of RFID, each with different properties, but
perhaps the most fascinating aspect of RFID technology is that most
RFID tags have neither an electric plug nor a battery.
• UHF RFID ( Ultra-High Frequency RFID ). It is used on shipping
pallets and some driver's licenses. Readers send signals in the 902-928
MHz band. Tags communicate at distances of several meters by
changing the way they reflect the reader signals; the reader is able to
pick up these reflections.
• HF RFID (High-Frequency RFID ). It operates at 13.56 MHz and is
likely to be in your passport, credit cards, books, and noncontact
payment systems. HF RFID has a short-range, typically a meter or less
because the physical mechanism is based on induction rather than
backscatter.
Working of RFID System
Types of RFID Tags
• 1. Passive Tags
• No built-in power source, relying on the RFID reader.
• Less expensive, longer lifespan, shorter read range (up to a few
meters).
• 2. Active Tags
• Have their own power source (battery), allowing for a longer read
range (up to hundreds of meters).
• More expensive, limited lifespan due to the battery.
• 3. Semi-Passive Tags
• Small battery powers the tag’s circuitry.
• Middle ground in terms of cost, range, and lifespan.
Frequency Bands
• RFID systems operate in different frequency bands, each with its
characteristics:
• Low Frequency (LF, 125-134 kHz): Used for short-range
applications (up to 10 cm). Common in animal tracking and access
control.
• High Frequency (HF, 13.56 MHz): Medium range (up to 1 meter)
and commonly used in smart cards, ticketing, and library systems.
• Ultra-High Frequency (UHF, 860-960 MHz): Longer range (up to
12 meters) and used in inventory management, supply chain, and
logistics.
• Microwave Frequency (2.45 GHz): Used for very specific
applications with ranges similar to UHF but with higher data transfer
rates.