0% found this document useful (0 votes)
2 views

Elements of computer science an engineering

The document discusses various software development models, including the Waterfall and Agile models, highlighting their advantages and disadvantages. It also covers concepts related to computer security, information security, cyber security, and cyber law, emphasizing the importance of protecting data and ensuring legal compliance in the digital space. Additionally, it explains database management systems, data models, SQL commands, data centers, cloud services, and the Internet of Things (IoT).

Uploaded by

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

Elements of computer science an engineering

The document discusses various software development models, including the Waterfall and Agile models, highlighting their advantages and disadvantages. It also covers concepts related to computer security, information security, cyber security, and cyber law, emphasizing the importance of protecting data and ensuring legal compliance in the digital space. Additionally, it explains database management systems, data models, SQL commands, data centers, cloud services, and the Internet of Things (IoT).

Uploaded by

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

Waterfall model:

 It is very simple model. Earlier this model was very popular but nowadays it is not used.
 The waterfall model is also called as 'Linear sequential model' or 'Classic life cycle model'.
 It is an oldest software lifecycle model.
 In this model, each phase is fully completed before the beginning of the next phase.
 Workflow is in a linear (i.e., sequential) fashion.
 Doesn’t support iteration. So changes may not be accepted.
 This model is used for the small projects.
When to use SDLC Waterfall Model?
o When the requirements are constant and not changed regularly.

o A project is short.

o Where the tools and technology used is consistent and is not changing.

o When resources are well prepared and are available to use.

Advantages of waterfall model


 The waterfall model is simple and easy to understand, implement, and use.
 All the requirements are known at the beginning of the project; hence it is easy to manage.
 It avoids overlapping of phases because each phase is completed at once.
 This model works for small projects because the requirements are understood very well.
 This model is preferred for those projects where the quality is more important.

Disadvantages of the waterfall model


 It is a poor model for long projects.
 The problems with this model are uncovered.
 Feedback is not accepted so difficult to accommodate change requests.
 The amount of risk is high.

Agile model:

 In earlier days Waterfall model was very popular to complete a project. But now a day’s
developers face various problems while using it to develop software.
 The main difficulties included handling change requests from customers during project
development and the high cost and time required to incorporate these changes.
 To overcome these drawbacks of Waterfall model, in the mid-1990s the Agile Software
Development model was proposed.
 To establish close contact with the customer during development and to gain a clear
understanding of various requirements, each agile project usually includes a customer or
customer representative on the team. At the end of each iteration the customer reviews the
progress made and re-evaluates the requirements.
 Requirement change requests from the customer are encouraged and efficiently
incorporated.
 At the end of first iteration basic prototype is developed.
 Customer evaluates the basic product and if he not satisfies, specifies some changes.
 Until the customer is satisfied with the product there may be ‘n’ number of iterations.
 The development team size should be kept small (5 to 9 people) to help the team members.
Advantages:
 Working through Pair programming produce well written compact programs which have
fewer errors as compared to programmers working alone.
 It reduces total development time of the whole project.
 Customer representatives get the idea of updated software products after each iteration. So,
it is easy for him to change any requirement if needed.
Disadvantages:
 Due to lack of formal documents, it creates confusion and important decisions taken during
different phases can be misinterpreted at any time by different team members.
 Due to the absence of proper documentation, when the project completes and the
developers are assigned to another project, maintenance of the developed project can
become a problem.
Computer security: is making sure information and computer components are
usable and protected from people or software that shouldn’t access it or modify it.

Information Security:

• It is about securing information from unauthorized access.

• Information Security is basically the practice of preventing unauthorized access, use,


modification, inspection, recording or destruction of information.

• Information can be physical or electronic one.

• Information can be anything like your details or we can say your profile on social
media, your data in mobile phone, your biometrics etc.

• Thus Information Security extended to so many research areas like Cryptography,


Mobile Computing, Cyber Forensics, Online Social Media etc.

Computer security is mainly concerned with three main areas:


• Confidentiality is ensuring that information is available only to the intended audience.

• Integrity is protecting information from being modified by unauthorized parties.

• Availability means information should be consistently and readily accessible for


authorized parties.

• C-I-A are host of other terms also. Those are

• Identification- Who do you say you are?

• Authentication-How do I know it’s really you?

• Authorization-Now that you are here, what are you allowed to do?

• Accountability-Who did what and perhaps who is responsible?

Cyber security:

• Cyber :- Anything related to the internet falls under the cyber category

• Cyber security is to protect computers, networks, programs and data from unauthorized
access or attacks.

. 1. Mission-Critical Assets

• This is data that is absolutely critical to protect.

• An example of mission-critical assets in the healthcare industry is Electronic Medical


Record (EMR) software. In the financial sector, its customer’s financial records.

2. Data Security

• Providing the security to data is called data security.

• There should be security to prevent the loss of data; this will also require the use of
encryption and decryption.

3. Endpoint Security

• Security which makes sure that the endpoints of user devices are safe.

• This includes the protection of mobile devices, desktops, and laptops.

4. Application Security

• This involves the security features that control access to an application.

• Most of the time, applications are designed with security measures that continue to
provide protection when the app is in use.
5. Network Security

• The goal is to prevent unauthorized access to the network.

6. Perimeter Security

• This security layer ensures that both the physical and digital security methods protect a
business.

• It includes things like firewalls that protect the business network against external forces.

7. The Human Layer

This security layer ensures to protect business in terms of security. This includes the very real
threats from cyber attackers, and malicious users.

Cyber Law:

• Cyber Law also called IT Law is the law regarding Information-Technology including
computers and the internet.

• It supervises the digital circulation of information, software, information security, and e-


commerce.

• IT law encloses aspects of intellectual property, privacy, and data protection laws.

Importance of Cyber Law:

• It covers all transactions over the internet.

• It keeps eye on all activities over the internet.

Areas of Cyber Law:

Cyber laws create rules to protect people from becoming the victims of cyber attacks.
The major areas of cyber law include:

• Fraud:
Consumers depends on cyber laws to protect them from online fraud. Like credit card
information, financial information….etc

• Copyright: The internet has made copyright violations easier.

• Copyright violation is an area of cyber law that protects the rights of individuals and
companies to get profit from their creative works.

• Defamation:
Defamation laws are civil laws that save individuals from fake public statements that can
harm a business or someone’s reputation. When people use the internet to make
statements that violate civil laws that is called Defamation law.

• Harassment: Sometimes online statements can violate criminal laws that prohibit
harassment.

• When a person makes threatening statements again and again about someone else online,
there is a violation of both civil and criminal laws

• Freedom of Speech: There should be limits on free speech.

• Trade Secrets: Companies doing business online often depend on cyber laws to protect
their trade secrets.

• For example, Google and other online search engines spend lots of time developing the
algorithms that produce search results. They also spend a great deal of time developing
other features like maps, intelligent assistance, and flight search services…etc.

• Cyber laws help these companies to take legal action as necessary to protect their trade
secrets.
Advantages of Cyber Law:

• Organizations are now able to carry out e-commerce using the legal infrastructure
provided by the Act.(Ease of doing business)

• The IT Act also addresses the important issues of security, which are so critical to the
success of electronic transactions.

• Cyber Law provides both hardware and software security.


What is Data?

Data is a collection of facts, such as numbers, words, measurements, observations…etc

What is Database?

The database is a collection of inter-related data which is used to retrieve, insert and delete the
data efficiently. It is also used to organize the data in the form of a table

Database Management System:

o Database management system is software which is used to manage the database. For
example: MySQL, Oracle, etc are a very popular commercial database which is used in
different applications.
o DBMS provides an interface to perform various operations like database creation, storing
data in it, updating data, creating a table in the database and a lot more.
o It provides protection and security to the database.
o In the case of multiple users, it also maintains data consistency.

Data Models:

Data models define how data is connected to each other and how they are processed and stored
inside the system.

Two types.

1. Entity-Relationship Model

2. Relational Model

1. Entity-Relationship Model:

Entity-Relationship (ER) Model is based on the real-world entities and relationships among
them.
ER Model is based on −

 Entities and their attributes.


Entity: may be an object, person, place name etc that have meaning in the user’s
environment.
 Relationships among entities.
 Relationship:The logical association among entities is called relationship. Relationships
are mapped with entities in various ways.
o one to one
o one to many
o many to one
o many to many

For example, in a school database, a student is considered as an entity.


Student has various attributes like name, addr, id, etc.
College has various attributes like name,id,…etc
Relational Model

 Data is stored in tables called relations.


 Each row in a relation contains a unique value.
 Each column in a relation contains values from a same domain.

RDBMS:
RDBMS stands for Relational Database Management System.

It is called Relational Database Management System (RDBMS) because it is based on the


relational model introduced by E.F. Codd.
The RDBMS database uses tables to store data. A table is a collection of related data entries and
contains rows and columns to store data.

Properties of a Relation:

o Each relation has a unique name by which it is identified in the database.

o Relation does not contain duplicate tuples.

o The tuples of a relation have no specific order.

o All attributes in a relation are atomic, i.e., each cell of a relation contains exactly one
value.

A table is the simplest example of data stored in RDBMS.

What is a row or record?

A row of a table is also called a record or tuple. It contains the specific information of each entry
in the table. It is a horizontal entity in the table. For example, The above table contains 5 records.

Properties of a row:

o No two tuples are identical to each other in all their entries.


o All tuples of the relation have the same format and the same number of entries.
o The order of the tuple is irrelevant. They are identified by their content, not by their
position.
o Let's see one record/row in the table.

ID Name AGE COURSE

1 Ajeet 24 B.Tech

What is a column/attribute?

A column is a vertical entity in the table which contains all information associated with a specific
field in a table. For example, "name" is a column in the above table which contains all
information about a student's name.

Properties of an Attribute:

o Every attribute of a relation must have a name.


o Attributes that uniquely identify each tuple of a relation are the primary key.

Name

Ajeet
Aryan
Mahesh
Ratan
Vimal

Degree:

The total number of attributes that comprise a relation is known as the degree of the table.

For example, the student table has 4 attributes, and its degree is 4.

ID Name AGE COURSE

1 Ajeet 24 B.Tech

2 aryan 20 C.A
3 Mahesh 21 BCA

4 Ratan 22 MCA

5 Vimal 26 BSC

Cardinality:

The total number of tuples at any one time in a relation is known as the table's cardinality. The
relation whose cardinality is 0 is called an empty table.

For example, the student table has 5 rows, and its cardinality is 5.

ID Name AGE COURSE

1 Ajeet 24 B.Tech
2 aryan 20 C.A
3 Mahesh 21 BCA
4 Ratan 22 MCA
5 Vimal 26 BSC

SQL: Structured Query Language


Query: is a question answer to be retrieved from the database.

This database language is mainly designed for maintaining the data in relational database
management systems.

It is a special tool used by data professionals for handling structured data (data which is stored in
the form of tables).
Some SQL Commands

The SQL commands help in creating and managing the database. The most common SQL
commands which are highly used are mentioned below:

1. CREATE command
2. UPDATE command
3. DELETE command
4. SELECT command
5. DROP command
6. INSERT command

CREATE Command

This command helps in creating the new database, new table, table view, and other objects of the
database.

UPDATE Command

This command helps in updating or changing the stored data in the database.

DELETE Command

This command helps in removing or erasing the saved records from the database tables. It erases
single or multiple tuples from the tables of the database.

SELECT Command

This command helps in accessing the single or multiple rows from one or multiple tables of the
database. We can also use this command with the WHERE clause.

DROP Command

This command helps in deleting the entire table from the database.

INSERT Command

This command helps in inserting the data or records into the database tables. We can easily insert
the records in single as well as multiple rows of the table.
Database Transactions
A transaction can be defined as a group of tasks.

A database transaction is a sequence of multiple operations performed on a database. In order to


maintain consistency in a database, before and after the transaction, certain properties are
followed. These are called ACID properties.

Data Centers
A data center is a facility that provides shared access to applications and data using a complex
network, compute, and storage infrastructure.

Types of Data Centers

Data centers vary in size, from a small server room to distributed buildings. Data centers are a
critical business asset where companies often invest in and deploy the latest advancements in
data center networking, compute and storage technologies.

 Enterprise data centers are typically constructed and used by a single organization for
their own internal purposes.

 Co-location data centers function as a kind of rental property where the space and
resources of a data center are made available to the people willing to rent it.

 Managed service data centers offer aspects such as data storage, computing, and other
services as a third party, serving customers directly.
 Cloud data centers are distributed and are sometimes offered to customers with the help
of a third-party managed service provider.

Cloud services
Cloud Computing can be defined as the practice of using a network of remote servers hosted on
the Internet to store, manage, and process data, rather than a local server or a personal computer.

Types of Cloud Computing

Most cloud computing services fall into five broad categories:

1. Software as a service (SaaS)

2. Platform as a service (PaaS)

3. Infrastructure as a service (IaaS)

 Software-as-a-Service (SaaS) is a way of delivering services and applications over the


Internet.
 Platform as a service is a category of cloud computing that provides a platform and
environment to allow developers to build applications and services over the internet.
 Infrastructure as a service (IaaS) is a service model that delivers computer
infrastructure on an outsourced basis to support various operations.
UNIT-5
IoT
 IoT comprises things that have unique identities and are connected to internet.
 By 2020 there will be a total of 50 billion devices /things connected to internet.
 IoT is not limited to just connecting things to the internet but also allow things to
communicate and exchange data.
Characteristics:
1) Dynamic & Self Adapting: IoT devices and systems may have the capability to
dynamically adapt with the changing contexts and take actions based on their operating
conditions or sensed environment.
Eg: the surveillance system is adapting itself based on context and changing conditions.
2) Self Configuring: allowing a large number of devices to work together to provide certain
functionality.
3) Inter Operable Communication Protocols: support a number of interoperable
communication protocols and can communicate with other devices and also with
infrastructure.
4) Unique Identity: Each IoT device has a unique identity and a unique IP address.
5) Integrated into Information Network: that allow them to communicate and exchange
data with other devices and systems.
Applications of IoT:
1) Home
2) Cities
3) Environment
4) Energy
5) Retail
6) Logistics
7) Agriculture
8) Industry
9) Health & Lifestyle
Robotics
What is robotics?

1. Robotics is a branch of engineering that involves the design, manufacture and operation
of robots.
2. The objective of the robotics field is to create intelligent machines that can assist humans
in a variety of ways.

3. Robotics can take on a number of forms. A robot may replace a human, or it may be in
the form of a robotic application, such as robotic process automation (RPA), which
simulates how humans engage with software to perform repetitive, rules-based tasks.
4. Robotics applications

a. Today, industrial robots, as well as many other types of robots, are used to perform
repetitive tasks. They may take the form of a robotic arm, robotic exoskeleton or
traditional humanoid robots.
b. Industrial robots and robot arms are used by manufacturers and warehouses, such as those
owned by Amazon, Devol, Best Buy and more.
c. Some additional applications for robotics are the following:

 Home electronics -- see Honda's ASIMO


 Computer science/computer programming
 Artificial intelligence
 Data science
 Law enforcement/military
 Mechanical engineering
 Nanotechnology
 Bioengineering/healthcare
 Aerospace
DRONES

WHAT IS A DRONE?

 A drone refers to any aerial vehicle that receives remote commands from a pilot. Many
drones display features like cameras for collecting visual data.

 Sectors like photography, search and rescue, agriculture and transportation have adopted
drone technology.

Types of Drones

Drones come in a variety of types, each tailored to the unique demands of different industries.
For instance, some people require lightweight drones to hold a camera for photography, while
others need robust drones to transport heavy medical supplies. As a result, companies produce
drones that come in four main types
1. Single-rotor helicopter- Single-rotor helicopters look exactly like tiny helicopters and
can be gas or electric-powered.
2. Multi-rotor-drones are usually some of the smallest and lightest drones on the market.
Ex-camera.
3. Fixed-wing- look like normal airplanes, where the wings provide the lift instead of
rotors- making them very efficient.
4. Fixed-wing hybrid vtol- drones are a blend of fixed-wing drones and rotor-based drones,
featuring rotors that are attached to the wings.

Uses and applications of drones

 Military drones
 Drones for delivery
 Drones for emergency rescue
 Drones in agriculture
 Drones for wildlife and historical conservation
 Drones in medicine
 Drones for photography
Artificial Intelligence

• Artificial intelligence (AI) is wide-ranging branch of computer science concerned with


building smart machines capable of performing tasks that typically require human
intelligence.
• Artificial intelligence is intelligence demonstrated by machines, unlike the natural
intelligence displayed by humans and animals.

What is learning?

According to Herbert Simon, learning denotes changes in a system that enable a system to do
the same task more efficiently the next time.

The following tasks must be learned by an agent.


• To predict or decide the result state for an action.
• To know the values for each state (understand which state has high or low vale).
• To keep record of relevant percepts.

Why do we require machine learning?

• Machine learning plays an important role in improving and understanding the efficiency
of human learning.
• Machine learning is used to discover new things not known to many human beings.

Game Development using AI

AI methods used in games

1. Decision trees
2. Neural networks
3. Genetic algorithms
4. Reinforcement learning methods.

Typical applications of AI in games

The application of AI in games is diverse; it can be used for image enhancement, automated
level generation, scenarios, and stories, balancing in-game complexity

Natural language processing

 NLP stands for Natural Language Processing, which is a part of Computer Science,
Human language, and Artificial Intelligence.
 It is the technology that is used by machines to understand, analyze, manipulate, and
interpret human's languages.
 It helps developers to organize knowledge for performing tasks such as translation,
automatic summarization, Named Entity Recognition (NER), speech recognition,
relationship extraction and topic segmentation.

Applications of NLP

1. Question Answering

Question Answering focuses on building systems that automatically answer the questions asked
by humans in a natural language.

2. Spam Detection
Spam detection is used to detect unwanted e-mails getting to a user's inbox.

3. Sentiment Analysis

 Sentiment Analysis is also known as opinion mining.


 It is used on the web to analyze the attitude, behavior, and emotional state of the sender.
 This application is implemented through a combination of NLP (Natural Language
Processing) and statistics by assigning the values to the text (positive, negative, or
natural), identify the mood of the context (happy, sad, angry, etc.)

4. Machine Translation

Machine translation is used to translate text or speech from one natural language to another
natural language.
Example: Google Translator

5. Spelling correction

Microsoft Corporation provides word processor software like MS-word, PowerPoint for the
spelling correction.

6. Speech Recognition

Speech recognition is used for converting spoken words into text. It is used in applications, such
as mobile, home automation, video recovery, dictating to Microsoft Word, voice biometrics,
voice user interface, and so on.
7. Chatbot

Implementing the Chatbot is one of the important applications of NLP. It is used by many
companies to provide the customer's chat services.

8. Information extraction

Information extraction is one of the most important applications of NLP. It is used for extracting
structured information from unstructured or semi-structured machine-readable documents.

Image Processing

An image is represented by its dimensions (height and width) based on the number of pixels.

Image processing requires fixed sequences of operations that are performed at each pixel of an
image.

There are five main types of image processing:

1. Visualization – Representing the images


2. Recognition - Distinguish or detect objects in the image
3. Sharpening and restoration - Create an enhanced image from the original image
4. Pattern recognition - Measure the various patterns around the objects in the image
5. Retrieval - Browse and search images from a large database of digital images that are
similar to the original image
Applications of Image Processing:

1. Medical Image Retrieval


2. Traffic Sensing Technologies

Left - normal traffic image | Right - a VIPS image with detection zones

3. Image Reconstruction

Fig: Reconstructing damaged images using image processing

4. Face Detection
Video Processing
Video processing uses hardware, software, and combinations of the two for editing the images
and sound recorded in video files.

Video processing involves a series of steps, which includes decoding, computation and encoding.

 Decoding: The process required to convert a video from a compressed file back to its raw
format.

 Computation: A specific operation performed on a raw video frame.

 Encoding: The process of reconverting the processed frame back to its original
compressed state.

Here’s a quick example of what pipeline architecture looks like in practice, and how it can be
used in a video surveillance system to detect and blur faces in real-time.
In this example, the video has split the tasks into decoding, face detection, face blurring, and
encoding.

Cloud basics

 The term cloud refers to a network or the internet.


 It is a technology that uses remote servers on the internet to store, manage, and access
data online rather than local drives.
 The data can be anything such as files, images, documents, audio, video, and more.
This cloud model is composed of five essential characteristics, three service models, and four
deployment models.

5 Essential Characteristics

3 Service Models
4 Deployment Models

Characteristics of Cloud Computing

1. High availability and reliability


2. High Scalability
3. Device and Location Independence
4. Easy Maintenance
5. Low Cost
6. Services in the pay-per-use mode

You might also like