Elements of computer science an engineering
Elements of computer science an engineering
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.
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:
• Information can be anything like your details or we can say your profile on social
media, your data in mobile phone, your biometrics etc.
• Authorization-Now that you are here, what are you allowed to do?
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
2. 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.
4. Application Security
• Most of the time, applications are designed with security measures that continue to
provide protection when the app is in use.
5. Network Security
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.
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 law encloses aspects of intellectual property, privacy, and data protection laws.
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 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
• 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.
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
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 −
RDBMS:
RDBMS stands for Relational Database Management System.
Properties of a Relation:
o All attributes in a relation are atomic, i.e., each cell of a relation contains exactly one
value.
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:
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:
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.
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.
1 Ajeet 24 B.Tech
2 aryan 20 C.A
3 Mahesh 21 BCA
4 Ratan 22 MCA
5 Vimal 26 BSC
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.
Data Centers
A data center is a facility that provides shared access to applications and data using a complex
network, compute, and storage infrastructure.
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.
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:
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.
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
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.
• 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.
1. Decision trees
2. Neural networks
3. Genetic algorithms
4. Reinforcement learning methods.
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
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
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.
Left - normal traffic image | Right - a VIPS image with detection zones
3. Image Reconstruction
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.
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
5 Essential Characteristics
3 Service Models
4 Deployment Models