Digital Society and Computer Ethics

Digital Society

Stakeholder of Digital Society

Challenges of Digital Society

 

Computer Ethics

Importance of Computer ethics

Concept of Information Security

 

Information Security vs. Cyber Security

 

Information security principles

 

Confidentiality:

Integrity:

Availability:

 

Information Security Policy

 

Information security measures

 

Concept of Cybercrime

Types of Cybercrime:

 

Malicious Software and Spam

Malicious Software

Different Types of Malware

Symptoms of Malware attack:

 

Protection from Cybercrime

 

Intellectual Property Right (IPR)

 

Types of Intellectual Property Right

Copyright and related rights:

Patents:

Trademarks:

Industrial designs:

Geographical indications:

Trade secrets:

 

Why should we promote and protect intellectual property?
Intellectual property rights (IPRs)

 

Digital Signature

Working mechanism of digital signature

 

 

 

 

 

 

 

 

 

 

Hash function:

Public Key Infrastructure (PKI):

Certificate Authority (CA):

Digital Certificate:

 

Advantage and Disadvantages of Digital Signature:

Advantage of Digital Signature: 

  1. Enhanced security and resistance to forgery.
  2. Authenticates sender’s identity.
  3. Ensures data integrity.
  4. Provides non-repudiation.
  5. Saves costs and time.
  6. Increases efficiency in workflows.
  7. Globally accepted for legal purposes.
  8. Positive environmental impact.
  9. Simplifies audit trail creation.
  10. Integrates well with digital workflows.

Disadvantage of Digital Signature: 

  1. Dependence on technology and digital infrastructure.
  2. Complex implementation and management.
  3. Key management challenges.
  4. Variability in legal recognition.
  5. Infrastructure requirements for both parties.
  6. Initial costs for implementation.
  7. User acceptance and familiarity concerns.
  8. Potential for misuse or fraudulent activities.
  9. Complex revocation processes.
  10. Risk of sensitive data exposure during transfer.

Cyber Law in Nepal

Area of Cyber Law

  1. Electronic and Digital Signature:
  2. Computer Crime:
  3. Intellectual Property:
  4. Data Protection and Privacy:
  5. Telecommunication Laws:

Cyber law in Nepal

Provisions included in the laws:

 ICT Policy in Nepal

Vision

Mission

Major Objectives

Policy:

 Introduction to Multimedia

Benefits of Multimedia:

Interactive Multimedia

 

Category of Multimedia

 

Component of Multimedia

Text:

 

Graphics or image:

 

Audio:

 

Video:

 

Animation:

 

Hypermedia:

 

Advantage of Multimedia:

Disadvantage of Multimedia:

 

Application of Multimedia

1) Education:

2) Entertainment and Games:

      • Education is a human right for all.
      • Challenges like geography, technology, lack of higher education options.
      • Distance education options available: CBT (CD-based) and WBT (Web-based).
      • CBT offers CD-based courses, while WBT provides online courses.
      • Smart education tools in schools and colleges for interactive learning.
      • Many universities offer online degrees and distance education.
      • Learning becomes engaging and enjoyable.

3) Business:

      • Includes product demos, instant messaging.
      • Voice and live conferencing are excellent applications.
      • Engages audiences and widely used in programs.
      • Mechanics and various professionals can benefit.
      • Easy-to-use authoring tools for program creation.
      • Applications enhance smooth and effective operations.

4) Communication:

      • Multimedia tools allow cost-effective communication via live text, audio, and video chats.
      • This enhances daily communication’s ease, efficiency, and effectiveness.
      • Interactive multimedia-based social networking platforms like Facebook, Twitter, and Hi5 make communication faster across different time zones.
      • Communication through these platforms comes at a nominal cost.

5) Training:

      • Various systems available for training students.
      • Covers subjects from mathematics to complex medical procedures.
      • Incorporates audio clips and multi-angled views for practical skills.
      • Equipped with decision-making utilities for personalized training.
      • Uses video sequences to clarify concepts.

6) Web Page Designing:

      • Websites today serve as information sources for organizations and individuals.
      • Multimedia tools like images, audios, videos, and animations are used to interactively share information with users.
      • This approach enhances clarity in delivering information to recipients.
      • Various types of websites, such as news, educational, medical, business, and personal sites, adopt dynamic layouts for attractive and engaging web pages.

7) Journalism:

      • Modern journalists have expanded roles, including reporting, photography, editing, interpretation, and design.
      • Proficiency in multimedia tools is crucial for effectively designing and editing news articles.
      • Journalists gather diverse field footage to create captivating audio and visual content.
      • This multimedia approach ensures easy global accessibility to news content.

8) Engineering:

      • Software engineers frequently employ multimedia tools for tasks like computer graphics, simulations, and product demonstrations.
      • These tools have versatile applications, spanning scientific research to entertainment design.
      • Utilizing multimedia tools yields productive results for business entrepreneurs.
      • The impact of such usage extends to future societal implications.

9) Advertising:

      • Internet’s rise changed advertising.
      • Multimedia is crucial in advertising.
      • Used in both print and electronic ads.
      • Created using professional software.
      • Presents to target audiences effectively.

10) Virtual Reality:

      • Enables user interaction with computer-simulated environments.
      • Environment can mimic the real world or be completely different.
      • Used in training (pilot, combat, surgery) and games.
      • Built on multimedia technology.

11) Medicine:

Introduction to Web Development

Webpage and Website

Webpages:

 

Websites:

 

Web Browsers and Search Engines

 

Web Development Process

 

Overview of Various Internet & Web Technologies

Overview of Internet

Uses of Internet

Misuses of Internet

 

Web Technology

Protocol

URL

Domain Name System

Email

Content Management System (CMS)

Introduction

Feature of CMS:

 

HTML the Language of the Web

Objectives of HTML:

  1. Create web pages for websites.
  2. Essential markup language for web pages.
  3. Allows adding graphical elements like videos, images, rich text.
  4. Facilitates customization with HTML5 and newer versions.
  5. Learn coding tools: code editor and browser developer tools.
  6. Create hypertext links to various online resources.

 Structure of HTML:

 

Published and Hosting (Web Publishing and Web Hosting)

Web Publishing:

Web hosting:

 

 HTML Tags vs. Attributes

 

Basic Tags of HTML

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Heading Tag (H1 to H6) and Attributes (ALIGN)

Heading Tags

 

Font Tag and Attributes (Sizes: 1 to 7 Levels, BASEFONT, SMALL, BIG, COLOR)

<font> Tag

 

<basefont> Tag

 

Paragraph Formatting (P)

<p> Tag

 

Break Line BR

<br> Tag and <hr> Tag

 

Comment in HTML (<! >)

Comment Tag and Space Character

 

 Formatting Text (B, I, U, Mark, Sup, Sub, EM, BLOCKQUOTE, PREFORMATTED)

General Text Formatting

 

 

 

 

 

 

 

 

 

<marquee> Tag and <pre>

 

 

 

 

 

 

 

 

 

 

Special Characters

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ordered List- OL (LI, Type- 1, I, A, a; START, VALUE)

List

 

Unordered List – UL (Bullet Type- Disc, Circle, Square, DL, DT, DD)

Definition List

 

ADDRESS Tag

 

 

 

 

Inserting Image:

Inserting Object:

 

Anchor Tag and Hyperlink

Creating Hyperlink

 

Links to place in other HTML documents

 

Image Map

 

Table: Creating Table using TH, TR and TD tags

Creating Table 

 

Form: Creating form using Textbox, Radio, Checkbox, Text Area, Button

Creating Form

 

<label>Tag

 

Creating Frameset

 

Introduction to HTML5 Elements including Audio, Embed, Source, Track and Video Attributes

Introduction to HTML5

 

HTML5 Graphics using canvas and svg Tags

<canvas> Tag

 

<svg> Tag

 

Structure of HTML5

 

Concept of Domain Name and Web Hosting

Domain  Name System 

 

Web hosting

Types of web hosting

 

Cascading Style Sheet

Introduction to Cascading Style Sheet (CSS)
 Inline CSS
Embedded CSS (Internal Style)
 External CSS

 

Some More on CSS

Class Style

 

</html>

 

<span>Tag

Programming Concept

Computer Program

Characteristics of a Good Computer Program:

Introduction to Programming Language

 

 Low level, High level, 4 GL Programming Language (Types of Programming Language)

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Low Level Language
a) Machine Language
b) Assembly Language

Merit of Assembly Language:

  1. Easier to understand and use than machine language.
  2. Easier to locate and remove the errors.
  3. It is easier to modify.
  4. It is easy to re-locatable.

Demerit of Assembly Language:

  1. It is machine dependent.
  2. Detailed knowledge of hardware is required.
  3. It uses machine level coding.
  4. Language processor (Assembler) is required to translate the coding.
2. High Level Language

Merit of High level language:

  1. Machine independent.
  2. Easy to write and learn then low level language.
  3. Easy to find out and remove the mistakes.
  4. High level programs are easy to maintain.
  5. Better documentation.

Demerit of High level language:

  1. Execute very slowly.
  2. Need language processor (Compiler, Interpreter) to translate the program.
  3. Some programs cannot be solved with these languages.
  4. Lower efficiency.
  5. Less flexibility.
a) Third Generation Language (3GL)

Merit of third generation language are:

  1. English-like statements, user-friendly.
  2. Faster program development.
  3. Ease of understanding and modification.
  4. Simple syntax error detection and debugging.
  5. Standardized and machine-independent.
  6. Examples: C, COBOL, FORTRAN, PASCAL, etc.

Demerit of third generation language are:

  1. Complexity for beginners
  2. Learning curve
  3. Hardware dependency
  4. Limited abstraction
  5. Efficiency concerns
  6. Challenging debugging
  7. Less control over hardware
  8. Limited portability
  9. Performance trade-offs
b) Fourth Generation Language (4GL)

Merit of fourth generation language are :

  1. No need to know machine details.
  2. Variety of languages available.
  3. Easy bug detection and debugging.
  4. English-like syntax, user-friendly.
  5. Faster and easier coding.
  6. Supports OOP and code reusability.

Demerit of fourth generation language are :

  1. Needs a compiler/interpreter for conversion.
  2. Conversion and execution time.
  3. Less efficiency than machine language.
  4. Inefficient resource usage.

Difference between 3GLs and 4GLs

Basis 3GLs 4GLs
Focus Emphasize procedure and algorithms. Emphasize on end-user outcomes and data handling.
Nature Low-level languages, closer to machine code. High-level languages, abstracted from machine code.
Abstraction Moderate level of abstraction. High level of abstraction.
Syntax Complex syntax requiring detailed coding. User-friendly, more natural language-like.
Syntax Suitable for system-level programming and complex applications. Designed for database querying, reporting, and rapid application development.
Examples C, C++, Java, Fortran. SQL, Python (in certain contexts), visual programming tools.

 

c) Fifth Generation Language (5GL)

Merit of fifth generation language are:

  1. Ease of Use
  2. Wide Adoption
  3. Rich Expression
  4. Contextual Understanding
  5. Flexibility
  6. Inclusivity
  7. Cognitive Load Reduction
  8. Natural Interaction
  9. Efficiency for Certain Tasks
  10. Communication with Non-Programmers

Demerit of fifth generation language are: 

  1. Complexity
  2. Limited Precision
  3. Learning Curve
  4. Performance Overhead
  5. Dependency on AI
  6. Resource Intensive
  7. Potential Ambiguity
  8. Limited Optimization
  9. Compatibility
  10. Reliance on Infrastructure

Compiler, Interpreter and Assembler (Language Translator)

 

Assembler

 

 

 

 

 

 

 

 

 

 

 

 

 

Interpreter

 

 

 

 

 

 

 

 

 

 

 

 

Compiler

 

 

 

 

 

 

 

 

 

 

 

 

Difference Between Compiler and Interpreter

Compiler  Interpreter
Translates the entire program before execution. Translates one line at a time, executing immediately.
Generates an object program (machine code). No separate object program generated.
Detected errors only after compilation. Detects errors line by line during execution.
Produces faster execution as code is pre-translated. Slower execution due to on-the-fly translation.
Used for languages like C, C++, Java. Used for languages like Python, JavaScript.

 

Syntax, Semantic and Runtime errors

Syntax Error:

Semantic Error:

Runtime Error:

 

Program Design tools

Algorithm:

Characteristic of algorithm are:

  1. An algorithm must be simple and in easy language.
  2. An algorithm should have finite number of steps.
  3. The algorithm can be easily modified.
  4. The algorithm should be able to produce accurate result.

Advantages

Disadvantages

 

Flowchart:

Feature of Flowchart are:

  1. Visual representation
  2. Sequential steps
  3. Decision points
  4. Connectors and arrows
  5. Symbolic notations
  6. Easy-to-understand
  7. Process visualization
  8. Logic illustration
  9. Hierarchical structure
  10. Language-agnostic

 

 

 

 

 

 

 

 

 

 

 

 

 

Example:

 

 

 

 

 

 

 

 

 

 

 

 

 

Advantages:

  1. It provides a clear overview of the entire problem.
  2. It is easy to draw and understand.
  3. It is independent of any programming languages.
  4. It serves as a guide for program coding.

Disadvantages:

  1. It is time consuming work.
  2. It is difficult to translate flowchart into a program.
  3. It is difficult to later time modification.
  4. Some time it may be miscommunication.

 

Pseudocode

Advantages:

Disadvantages:

 

Control Structure: Sequence, Selection and Iteration

Sequence

 

 

 

 

 

 

 

 

 

 

 

Selection

 

 

 

 

 

 

Iteration

 

 

 

 

 

 

 

Absolute binary, BCD, ASCIL, and Unicode (Code)

Absolute Binary:

 

BCD:

 

ASCII:

 

EBCDIC:

 

Unicode:

 

C Programming Language

 Introduction and Feature of C Language

Facts About C:

Feature of C:

  1. Easy learning due to the small command set.
  2. Follows structured programming.
  3. Provides machine independence.
  4. Supports modular programming.
  5. Acts as a bridge between high and low-level languages.
  6. Faster execution than other languages.
  7. Offers various data types and declarations.
  8. Includes numerous built-in functions.
  9. Powerful for commercial and hardware programming.
  10. Programs independent of CPU used.

Advantage of C: 

  1. Machine independent and portable.
  2. Considered the foundation of modern languages.
  3. Compiler widely accessible.
  4. Combines high-level and low-level capabilities.
  5. Known for fast execution.

Disadvantage of C:

  1. Lacks runtime checking.
  2. Challenging to fix errors in large programs.
  3. Doesn’t support object-oriented programming.
  4. Complexity may be difficult for beginners.

Structure of C program

 

Preprocessor and Header Files

 

Void main function ()

 

Comments

 

Compiling Process

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C Preprocessor and Header Files

 

Character Set used in C

Special Characters:

 

 

 

 

 

 

 

 

 

 

 

 Use of Comments

 

Identifiers, Keywords and Tokens

 

 

 

Keywords:

 

 

 

 

 

 

 

 

Identifiers:

Valid Identifiers

A1        B34        FIRST_NAME         x_1

 

Invalid Identifiers

1A        34AB        int       void        First-NAME        X.1

 

Basic Data Types in C

 

 

 

 

 

 

 

 

 

 

 

 

 

Primary Data Types:

 

 

 

 

 

 

 

Constants and Variables

Variables:

Numeric Variable:

String Variable:

 

Constant:

  1. Integer Constant

Decimal Integer          123       -31      0      +78

Octal Integer                 O26       O      O347     O676

Hexadecimal Integer OX2     OX8C        OXbcd        OX

 

2. Character Constant

                                   ‘A’          ‘B’          ‘h’          ‘2’          ‘6’

 

3. String Constant

                                    “VISHAL”          “1234”          “God Bless”          “!…?”

 

4. Symbolic Constant

                                       #define PI 3.14

                                      #define name “HSEB”

                                     #define area 100

5. Escape Sequence Constant

 

 

 

 

 

 

 

 

 

 

Difference between Variable and  Constant 

Variable Constant
Holds a value that can be modified during program execution. Holds a fixed value that cannot be changed during program execution.
Declared using a data type and an identifier (name). Declared using the const keyword.
Values can be assigned and reassigned as needed. Values must be assigned at the time of declaration.
Used to store and manipulate changing data. Used to represent unchanging data.

 

Types of Specifier

 

 

 

 

 

 

 

 

 

 

 

 Simple and Compound Statements

Simple Statement:

Compound Statement:

 

Operators and Expressions

Arithmetic Operators:

 

 

 

 

 

 

 

 

Relational Operators:

 

 

 

 

 

 

 

Logical Operators:

 

 

 

 

 

Assignment Operators:

 

Unary Operators:

 

Ternary Operator (? : operator):

 

The Comma Operator:

 

Expressions:

 

 

 

 

 

 

 

 

Type Casting and Conversions

Implicit Type Conversion:

 

Explicit Type Conversion:

 

Introduction to Library Functions

 

 Input/output (I/O) Functions

Other Input/Output Functions

 

Selection Control Statement: Decisions (if, if-else, if-else-if, nested and switch)

Introduction to Control Statement

 

Branching Statement

If statement:

 

 

 

 

 

 

 

If else statement:

 

 

 

 

 

 

If else if statement:

 

 

 

 

 

 

 

 

 

 

 

nested if else statement:

 

 

 

 

 

 

 

 

 

Switch case Statement:

 

 

 

 

 

 

 

 

 

 

 

 

 

Iteration Control Statement: Looping (while, do while, for nested)

Looping

while loop:

 

 

 

 

 

 

 

 

do while loop:

 

 

 

 

 

 

 

 

Difference between while loop and do while loop
while loop  do while loop
Condition is checked before entering the loop Condition is checked after executing the loop body.
If the condition is false initially, the loop might not execute at all. The loop body always executes at least once, even if the condition is false.
Execution might not enter the loop body if the condition is false from the beginning. Execution enters the loop body before the condition is checked.

 

for loop:

 

Nested Loop:

 

Infinite Loop:

 

Jumping Statement

break Statement:

 

continue Statement:

 

goto Statement:

 

Array: definition, types (1D and 2D), matrix addition and subtraction

Introduction to Array
Characteristics of Array:
Advantages of Array:
  1. Random Access: Elements can be accessed directly using array indices.
  2. Code Efficiency: Requires fewer lines of code for multiple elements.
  3. Simplified Access: Provides easy access to all elements.
  4. Efficient Traversal: Can be traversed easily using a single loop.
  5. Simplified Sorting: Sorting is easier with fewer lines of code.
Disadvantage of Array:
  1. Fixed Size: Array size is determined during declaration and cannot be changed.
  2. Limited Dynamic Behavior: Unlike linked lists, arrays are not dynamic in nature.
  3. Costly Insertion and Deletion: Inserting and deleting elements can be inefficient due to memory reallocation and shifting.
  4. Memory Management: Array elements need to be managed explicitly with new memory allocation.
  5. Static Structure: Array structure is static, making it less flexible for changing data requirements.

 

Types of Arrays

 

One Dimensional Array:

Array Initialization

 

Multi Dimensional Array:

 

String: Definition and String Function: strlen(), strcat(), strcamp(), strrev(), strcpy(), strlwr(), strupr()

Introduction to string

 

String Handling Functions

 

Array of Strings:

Introduction of Office Package

Microsoft Office

Concept of Word Processor

Feature of Word Processing:

  1. Document creation.
  2. Writing, editing, saving, and opening documents.
  3. Formatting options (font, size, color, style, etc.).
  4. Background, foreground, and word art features.
  5. Spelling checker and thesaurus for proofreading.
  6. On-screen reading and revision.
  7. Insertion of graphics, audio, and video.
  8. Ability to produce multiple copies of documents.

Applications of Word Processing:

  1. Document creation (letters, reports, memos)
  2. Academic work (research papers, assignments)
  3. Business communication (emails, contracts)
  4. Publishing (newsletters, brochures)
  5. Data analysis (tables, charts)
  6. Collaboration (track changes, comments)
  7. Legal documents (agreements, correspondence)
  8. Content for blogs/websites
  9. Creative writing (poems, stories)
  10. Personal use (resumes, letters)

Types of Word Processing

  1. MS Word
  2. Word Perfect
  3. Word Star
  4. Lotus Notes

 

Presentation Tools

Concept of Presentation

Feature of Presentation Software:

  1. Detailed topic overview
  2. Audio-video integration on slides
  3. Simple to interactive presentation
  4. Built-in design and animation tools
  5. 2D and 3D text editing
  6. Conversion to movie file

 

Application of Presentation Software:

  1. Creating slideshows for lectures and presentations.
  2. Business proposals and reports.
  3. Pitching ideas to investors.
  4. Educational content for classrooms.
  5. Marketing and sales presentations.
  6. Conference and seminar materials.
  7. Showcasing data visually.
  8. Interactive multimedia presentations.
  9. Collaborative team projects.
  10. Remote and online presentations.

Example Of Presentation Program:

  1. Microsoft PowerPoint
  2. Apple Keynote
  3. OpenOffice Impress
  4. Prezi, Google Slides
  5. Canva, Haiku Deck.

 

Types of Presentation

  1. Static Presentation:

2. Interactive Presentation:

 

Spreadsheet Package

 

Fundamental of SpreadSheet

  1. Grid of rows and columns.
  2. Cells store data, text, or formulas.
  3. Formulas perform calculations.
  4. Functions are predefined operations.
  5. Charts visualize data.
  6. Sorting and filtering organize data.
  7. Data analysis and modeling.
  8. Collaboration and sharing features.
  9. Common formats like Excel, Google Sheets.

 

Some Feature of SpreadSheet:

  1. Handles large data volumes.
  2. Provides built-in functions.
  3. Offers accurate results.
  4. Supports decision making.
  5. Includes word processing features.
  6. Offers database capabilities.
  7. Graphs, charts, and pivot tables for data representation.
  8. Integration with other software programs.

Application of SpreadSheet:

  1. Financial analysis and modeling.
  2. Budgeting and expense tracking.
  3. Data organization and management.
  4. Inventory management.
  5. Project planning and tracking.
  6. Statistical analysis and calculations.
  7. Business forecasting.
  8. Sales and revenue tracking.
  9. Employee scheduling.
  10. Data visualization and charts.

 

Database Management System

Introduction

 

Database Management System (DBMS)

 

 

 

 

 

 

 

Advantage of DBMS:

  1. Controls database redundancy.
  2. Restricts unauthorized access.
  3. Offers storage structure and query processing techniques.
  4. Provides backup and recovery.
  5. Supports multiple user interfaces.
  6. Enforces data constraints.
  7. Reduces application development time.

Disadvantage of DBMS:

  1. Complex, time-consuming database design.
  2. High hardware and software startup costs.
  3. Database damage affects many applications.
  4. Significant conversion costs from file-based to database systems.
  5. Initial training required for programmers and users.
  6. Regular backup requirements leading to additional storage costs.

 

Introduction to Domain-specific Tools

 

Domain Specific Tools Advantages

School Management System

Feature of School Management System Project:

  1. Student management (enrollment, attendance, grades).
  2. Teacher management (schedules, assignments).
  3. Parent and guardian portals (access to info, communication).
  4. Administrative tools (staff, inventory, finances).
  5. Timetable creation and management.
  6. Communication tools (messaging, announcements).
  7. Library and resource tracking.
  8. Transportation management (routes, assignments).
  9. Exam and assessment management.
  10. Reports and analytics.
  11. Security and access control.
  12. Online admission and enrollment.

 

Inventory Management

Purpose of Inventory Management System Project:

  1. Efficiently track and manage inventory levels.
  2. Streamline stock ordering and restocking processes.
  3. Minimized overstocking or stockouts.
  4. Optimize resource allocation and utilization.
  5. Improve accuracy in inventory records.
  6. Facilitate timely reorder notifications.
  7. Enhance demand forecasting and planning.
  8. Reduce manual data entry and errors.
  9. Enable real-time visibility into inventory.
  10. Support effective cost management.
  11. Streamline vendor and supplier relationships.
  12. Enhance decision-making through data insights.
  13. Provide better control over inventory-related costs.

Feature of Inventory Management System Project:

  1. Product tracking and lifecycle management.
  2. Inventory control with reorder points.
  3. Barcode scanning for quick identification.
  4. Real-time updates and visibility.
  5. Reporting and analytics for data-driven decisions.
  6. Supplier management and relationships.
  7. Multi-location support for varied sites.
  8. User access control with permissions.
  9. Integration with other systems.
  10. Mobile app compatibility for on-the-go access.

Payroll Management System

Feature of payroll management system:

  1. Salary calculation and processing.
  2. Leave management.
  3. Bonus and incentive management.
  4. Tax calculation and deduction.
  5. Loan and advance tracking.
  6. Attendance and overtime tracking.
  7. Employee self-service portal.
  8. Direct deposit and payment methods.
  9. Tax compliance and reporting.

 

Financial Accounting

Objectives of financial accounting:

  1. Records transactions for analysis and statements.
  2. Calculates profit/loss for strategy adjustments.
  3. Assesses a company’s financial health (assets, liabilities).
  4. Share information with stakeholders for decisions.

Feature of financial accounting:

  1. Profit and loss calculation.
  2. Balance sheet preparation.
  3. Cash flow statement analysis.
  4. Audit trail and data accuracy.
  5. Tax calculation and compliance.
  6. Integration with other systems.
  7. Reporting and analytics capabilities.
  8. Data security and access controls.
  9. Financial statement generation.

 

Hotel Management System

Feature of Hotel Management Software:

  1. Reservation and booking management.
  2. Front desk operations.
  3. Guest check-in and check-out.
  4. Room allocation and availability tracking.
  5. Billing and invoicing.
  6. Housekeeping and maintenance scheduling.
  7. Restaurant and banquet management.
  8. Point of Sale (POS) integration.
  9. Online booking and payment processing.
  10. Guest communication and feedback.

 

Weather Forecasting System

Objective of Study:

  1. Predicting future atmospheric conditions.
  2. Providing timely and accurate weather information.
  3. Assisting public safety and disaster preparedness.
  4. Supporting agriculture, transportation, and industries.
  5. Enabling informed decision-making for various sectors.
  6. Enhancing understanding of climate patterns.
  7. Mitigating risks and minimizing impacts of severe weather.

Feature of weather forecasting software:

  1. Real-time data collection (temperature, humidity, wind).
  2. Meteorological model integration.
  3. Multi-day forecasts.
  4. Visualization and maps.
  5. Severe weather alerts.
  6. Historical data analysis.
  7. Regional and global coverage.
  8. User-friendly interfaces.

 Concept of Software

 Definition of Software:

Relationship Between Software and Hardware:

Categories of Software:

 

System Software:
  1. Operating System

Operating System (OS) Functions:

    1. Hardware management
    2. Process scheduling
    3. Memory allocation
    4. File system organization
    5. User interfaces
    6. Security control
    7. Device communication
    8. Error handling
    9. Networking support
    10. Software execution environment
    11. System services
    12. Virtualization (in some cases)
 2. Utility Software

Example of Utility Software are:

Antivirus:

Disk Management:

Compression:

Disk Cleanup:

Backup:

File Management:

3. Language Processor

 

Application Software:

Used for a variety of purposes:

Types of Application Software
  1. Package Software:

Word Processing Software

Database Software

Spreadsheet Software

Multimedia Software

Presentation Software

Web Based Software

Mobile Apps

2. Tailored Software:

 

Concept of Operating System

Introduction of Operating System

 

 

 

 

 

 

 

 

 

 

  1. OS Kernel

2. Utility Software

3. OS Application

 

Role of Operating  System

  1. Memory Management:

2. Peripheral Management:

3. Hardware Interface Management:

4. Storage Allocation:

5. Time-Slicing (Swapping):

 Functions of Operating System:

1. Input Output (I/O) Management
2. Command Interpreter
3. Data Management
4.Files management
5. Memory Management
6. Job Management
7. Process Management

 

 

 

 

 

 

 

8. User Interface
9. Interrupt-handling
10. Security Management
11. Deadlock Prevention
12. Time Sharing
13. Virtual Storage Management

 

Operating System Terminology

Windows Operating System

 Introduction to GUI based Operating System and Its Features

 

GUI Advantages and Disadvantages:

Advantages:

  1. Beginner-friendly.
  2. Cut, paste, drag-and-drop info exchange.
  3. User-friendly interaction.

Disadvantages:

  1. High memory, processing needs.
  2. Slower than the command line.
  3. Can be complex for simple tasks.
  4. Main GUI components: Windows, Icons, Menus, Pointer (WIMP).
  5. Examples: Windows 10, macOS, Ubuntu.

 

Features of GUI:

  1. Visual interaction with images, icons.
  2. Mouse-based navigation.
  3. Windows: Separate on-screen areas for apps.
  4. Icons: Represent files, programs.
  5. Menus: Dropdown lists for commands.
  6. Pointing devices (e.g., mouse, touchpad).
  7. WYSIWYG: Accurate on-screen to print output.
  8. User-friendly, intuitive interface.
  9. Used in Windows, macOS, Linux distributions.

 

Open Source and Mobile Operating System

Concept of Open Sources Operating

Advantages:

Disadvantages:

 

Free Software

Introduction to UNIX, Linux

UNIX:
The UNIX Operating System

The Kernel:

The Shell:

The program:

Linux

Advantage of Linux:

Disadvantage of Linux:

Some LINUX commands

Syntax: mkdir directory

Example: mkdir ram

Syntax: cd directory

Example: cd hello

Syntax: my old_directory_namenew_directory_name

Example: mv testdir newnamedir

Syntax: rmdir directory

Example: rmdir directory

Syntax: cp source destination

Example: cp myfiles yourfile

Example: cal 12 1987

Syntax: cat files_name

Example: cat newyear

Syntax: clear

 

Linux Distributions

1. Ubuntu
2. Fedora
3. Linux Mint

 

Concept of Mobile Operating System

 Types of Mobile Operating System

1. Android OS (Google Inc.)

Feature of Android:

 

2. iPhone OS/IOS (Apple)

Feature of iPhone OS/iOS (Apple):

 

3. Windows Mobile (Windows Phone)

Feature of Windows Mobile:

 

4. BlackBerry OS (Research in Motion)

Feature of BlackBerry OS:

 

5. Symbian OS (Nokia)

Feature of Symbian OS (Nokia):

SQL Practical Questions/Answers

Create a new database named “company”.

Answer: CREATE DATABASE company;

Create a table named “employees” with columns for id (integer, primary key), name (varchar), age (integer), and department (varchar).

Answer: CREATE TABLE employees (id INT PRIMARY KEY, name VARCHAR(255), age INT, department VARCHAR(255));

Create a table named “products” in the “company” database with columns for id (integer, primary key), name (varchar), price (decimal), and quantity (integer).

Answer: CREATE TABLE company.products (id INT PRIMARY KEY, name VARCHAR(255), price DECIMAL(10, 2), quantity INT);

Alter the “employees” table to add a new column named “salary” (integer).

Answer: ALTER TABLE employees ADD COLUMN salary INT;

Alter the “products” table to add a new column named “description” (text).

Answer: ALTER TABLE company.products ADD COLUMN description TEXT;

Alter the “products” table to modify the data type of the “price” column to FLOAT.

Answer: ALTER TABLE company.products MODIFY COLUMN price FLOAT;

Alter the “products” table to rename the column “quantity” to “stock”.

Answer: ALTER TABLE company.products RENAME COLUMN quantity TO stock;

Drop the “salary” column from the “employees” table.

Answer: ALTER TABLE employees DROP COLUMN salary;

Insert a new record into the “products” table in the “company” database with values for id, name, price, and stock.

Answer: INSERT INTO company.products (id, name, price, stock) VALUES (1, 'Laptop', 999.99, 50);

Insert multiple records into the “products” table in the “company” database with values for id, name, price, and stock.

Answer: INSERT INTO company.products (id, name, price, stock) VALUES (2, 'Smartphone', 499.99, 100), (3, 'Tablet', 299.99, 75), (4, 'Headphones', 99.99, 200);

Insert a new record into the “employees” table with values for id, name, age, and department.

Answer: INSERT INTO employees (id, name, age, department) VALUES (1, 'John', 35, 'HR');

Insert a new record into the “employees” table with values for id, name, age, department, and salary.

Answer: INSERT INTO employees (id, name, age, department, salary) VALUES (4, 'Alice', 28, 'Marketing', 50000);

Update the price of the product with id 2 to 549.99 in the “products” table.

Answer: UPDATE company.products SET price = 549.99 WHERE id = 2;

Update the stock of the product with id 1 to 40 and its price to 899.99 in the “products” table.

Answer: UPDATE company.products SET stock = 40, price = 899.99 WHERE id = 1;

Update the age of the employee with id 1 to 30 in the “employees” table.

Answer: UPDATE employees SET age = 30 WHERE id = 1;

Update the department of the employee with id 2 to ‘Finance’ in the “employees” table.

Answer: UPDATE employees SET department = 'Finance' WHERE id = 2;

Delete the record with id 3 from the “products” table in the “company” database.

Answer: DELETE FROM company.products WHERE id = 3;

Delete all records from the “products” table where the price is less than 100.

Answer: DELETE FROM company.products WHERE price < 100;

Delete all records from the “products” table.

Answer: DELETE FROM company.products;

Delete all records from the “employees” table where the age is greater than 50.

Answer: DELETE FROM employees WHERE age > 50;

Delete the employee with id 3 from the “employees” table.

Answer: DELETE FROM employees WHERE id = 3;

Select all columns from the “employees” table.

Answer: SELECT * FROM employees;

Select only the “name” and “age” columns from the “employees” table.

Answer: SELECT name, age FROM employees;

Select all employees from the “employees” table where the department is ‘IT’.

Answer: SELECT * FROM employees WHERE department = 'IT';

Select all employees from the “employees” table where the age is between 25 and 35.

Answer: SELECT * FROM employees WHERE age BETWEEN 25 AND 35;

Select all employees from the “employees” table sorted by age in ascending order.

Answer: SELECT * FROM employees ORDER BY age ASC;

Select the oldest employee from the “employees” table.

Answer: SELECT * FROM employees ORDER BY age DESC LIMIT 1;

Retrieve unique values from the “department” column in the “employees” table.

Answer: SELECT DISTINCT department FROM employees;

Retrieve the first 10 records from the “orders” table, ordered by the “order_date” column in descending order.

Answer: SELECT * FROM orders ORDER BY order_date DESC LIMIT 10;

Find the total number of records in the “products” table.

Answer: SELECT COUNT(*) FROM products;

Update the “price” column of the “products” table to 50 where the “category” is ‘Electronics’.

Answer: UPDATE products SET price = 50 WHERE category = 'Electronics';

Delete all records from the “employees” table where the “department” is ‘HR’.

Answer: DELETE FROM employees WHERE department = 'HR';

Retrieve the average salary of employees from the “employees” table.

Answer: SELECT AVG(salary) FROM employees;

Find the highest salary from the “employees” table.

Answer: SELECT MAX(salary) FROM employees;

Retrieve the names of employees who have joined after ‘2020-01-01’.

Answer: SELECT name FROM employees WHERE join_date > '2020-01-01';

Retrieve the second highest salary from the “employees” table.

Answer: SELECT MAX(salary) FROM employees WHERE salary < (SELECT MAX(salary) FROM employees);

Calculate the total sales amount for each product from the “sales” table and group them by product ID.

Answer: SELECT product_id, SUM(amount) AS total_sales FROM sales GROUP BY product_id;

Retrieve all orders where the order amount is greater than $1000 from the “orders” table.

Answer: SELECT * FROM orders WHERE order_amount > 1000;

Find the number of orders placed by each customer from the “orders” table and group them by customer ID.

Answer: SELECT customer_id, COUNT(order_id) AS order_count FROM orders GROUP BY customer_id;

Find the top 5 best-selling products from the “products” table based on the quantity sold.

Answer: SELECT product_id, SUM(quantity_sold) AS total_quantity FROM products GROUP BY product_id ORDER BY total_quantity DESC LIMIT 5;

Retrieve all columns from the “employees” table where the salary is greater than $50000.

Answer: SELECT * FROM employees WHERE salary > 50000;

Find the total number of customers from the “customers” table.

Answer: SELECT COUNT(*) FROM customers;

Retrieve the names and ages of customers from the “customers” table who are older than 30 years.

Answer: SELECT name, age FROM customers WHERE age > 30;

Update the “status” column of the “orders” table to ‘Completed’ where the “order_date” is before ‘2023-01-01’.

Answer: UPDATE orders SET status = 'Completed' WHERE order_date < '2023-01-01';

Delete all records from the “products” table where the “category” is ‘Books’.

Answer: DELETE FROM products WHERE category = 'Books';

Retrieve the names and email addresses of customers from the “customers” table where the email address contains ‘@gmail.com’.

Answer: SELECT name, email FROM customers WHERE email LIKE '%@gmail.com%';

Find the average salary of employees in the “sales” department from the “employees” table.

Answer: SELECT AVG(salary) FROM employees WHERE department = 'Sales';

JavaScript Practical Questions

  1. Write a JavaScript function to add two numbers.
  2. Create a function to subtract two numbers.
  3. Write a function to multiply two numbers.
  4. Create a function to divide two numbers.
  5. Write a JavaScript function to find the square of a number.
  6. Create a function to find the cube of a number.
  7. Write a JavaScript function to find the maximum of two numbers.
  8. Create a function to find the minimum of two numbers.
  9. Write a function to check if a number is positive, negative, or zero.
  10. Create a JavaScript function to check if a number is even or odd.
  11. Write a function to check if a number is a multiple of another number.
  12. Create a JavaScript function to check if a year is a leap year.
  13. Write a function to calculate the area of a rectangle given its length and width.
  14. Create a function to calculate the perimeter of a rectangle given its length and width.
  15. Write a JavaScript function to calculate the area of a circle given its radius.
  16. Create a function to calculate the circumference of a circle given its radius.
  17. Write a function to convert Celsius to Fahrenheit.
  18. Create a JavaScript function to convert Fahrenheit to Celsius.
  19. Write a function to generate a random integer between two specified values.
  20. Create a function to generate a random number between 0 and 1.
  21. Write a JavaScript function to generate an array of specified lengths filled with random integers.
  22. Create a function to find the factorial of a given number.
  23. Write a JavaScript function to check if a given number is prime.
  24. Create a function to find the sum of all numbers in an array.
  25. Write a function to find the average of numbers in an array.
  26. Create a JavaScript function to find the largest element in an array.
  27. Write a function to find the smallest element in an array.
  28. Create a function to find the median of numbers in an array.
  29. Write a JavaScript function to reverse a string.
  30. Create a function to check if a given string is a palindrome.
  31. Write a function to count the number of vowels in a string.
  32. Create a JavaScript function to count the number of words in a sentence.
  33. Write a function to find the longest word in a sentence.
  34. Create a function to remove duplicates from an array.
  35. Write a JavaScript function to sort an array of numbers in ascending order.
  36. Create a function to shuffle elements in an array.
  37. Write a function to truncate a string to a specified length.
  38. Create a JavaScript function to capitalize the first letter of each word in a sentence.
  39. Write a function to find the difference between two dates in days.
  40. Create a function to check if two arrays are equal.
  41. Write a JavaScript function to find the intersection of two arrays.
  42. Create a function to merge two sorted arrays into one sorted array.
  43. Write a function to remove a specific element from an array.
  44. Create a JavaScript function to remove all false values from an array.
  45. Write a function to find the most frequent element in an array.
  46. Create a function to check if an array contains a specific value.
  47. Write a JavaScript function to flatten a nested array.
  48. Create a function to rotate elements in an array to the left by a given number of positions.
  49. Write a function to generate a Fibonacci sequence up to a specified number of terms.
  50. Create a JavaScript function to check if a string contains unique characters.\

C Programming Practical Questions

  1. Write a C program to find the sum of two numbers using a function.
  2. Create a program to calculate the factorial of a number using a function.
  3. Write a C program to check if a number is prime using a function.
  4. Create a program to find the maximum of two numbers using a function.
  5. Write a C program to reverse a string using a function.
  6. Create a program to swap two numbers using call by reference.
  7. Write a C program to sort an array of integers using functions.
  8. Create a program to find the length of a string using a function.
  9. Write a C program to concatenate two strings using functions.
  10. Create a program to find the square of a number using a function.
  11. Write a C program to implement a structure representing a student with fields for name, roll number, and marks in three subjects.
  12. Create a program to calculate the average marks of a student using a structure.
  13. Write a C program to display details of students stored in an array of structures.
  14. Create a program to find the student with the highest marks using structures.
  15. Write a C program to implement a union representing the details of an employee with fields for employee ID, name, and salary.
  16. Create a program to display details of employees stored in an array of unions.
  17. Write a C program to find the employee with the highest salary using unions.
  18. Create a program to swap two numbers using pointers.
  19. Write a C program to reverse an array using pointers.
  20. Create a program to find the sum of elements in an array using pointers.
  21. Write a C program to find the length of a string using pointers.
  22. Create a program to concatenate two strings using pointers.
  23. Write a C program to implement a linked list to store integers.
  24. Create a program to insert a node at the beginning of a linked list.
  25. Write a C program to insert a node at the end of a linked list.
  26. Create a program to delete a node from a linked list.
  27. Write a C program to search for a node in a linked list.
  28. Create a program to reverse a linked list.
  29. Write a C program to implement a stack using an array.
  30. Create a program to push an element into a stack.
  31. Write a C program to pop an element from a stack.
  32. Create a program to implement a queue using an array.
  33. Write a C program to enqueue an element into a queue.
  34. Create a program to dequeue an element from a queue.
  35. Write a C program to implement a stack using linked list.
  36. Create a program to push an element into a stack implemented using linked list.
  37. Write a C program to pop an element from a stack implemented using linked list.
  38. Create a program to implement a queue using linked list.
  39. Write a C program to enqueue an element into a queue implemented using linked list.
  40. Create a program to dequeue an element from a queue implemented using linked list.
  41. Write a C program to copy contents of one file to another.
  42. Create a program to count the number of characters, words, and lines in a file.
  43. Write a C program to find the largest word in a file.
  44. Create a program to append text to a file.
  45. Write a C program to merge two files into a third file.
  46. Create a program to sort lines of text in a file alphabetically.
  47. Write a C program to encrypt and decrypt text in a file.
  48. Create a program to find and replace a word in a file.
  49. Write a C program to search for a specific line in a file.
  50. Create a program to display the contents of a file in reverse order.

PHP Practical Questions

  1. Write a PHP script that connects to a MySQL database and inserts user input from a form into a database table.
  2. Create a PHP script that retrieves user input from a form using the POST method, performs a calculation, and displays the result.
  3. Write a PHP script that retrieves user input from a form using the GET method, performs a database query based on the input, and displays the results.
  4. Create a PHP script that connects to a MySQL database, retrieves user input from a form, updates a specific record in the database based on the input, and displays a success message.
  5. Write a PHP script that connects to a MySQL database, retrieves user input from a form using both POST and GET methods, performs a calculation based on the input, and displays the result.
  6. Create a PHP script that retrieves user input from a form, validates the input, performs a database query to check if the input exists in the database, and displays appropriate messages.
  7. Write a PHP script that connects to a MySQL database, retrieves user input from a form using the POST method, inserts the input into multiple database tables, and displays a success message.
  8. Create a PHP script that retrieves user input from a form using the GET method, performs a database query to fetch relevant data based on the input, and displays the data in a formatted manner.
  9. Write a PHP script that connects to a MySQL database, retrieves user input from a form using the POST method, performs a calculation based on the input, and updates the result in the database.
  10. Create a PHP script that retrieves user input from a form using the GET method, performs a database query to fetch relevant data based on the input, calculates the total based on the retrieved data, and displays the total to the user.

DBMS Viva Question

What is the difference between Data and Information?

What do you mean by  Field, Attribute, Record, Table, and Database?

What is a Database Management System?

What are the types of keys in DBMS?

What are the advantages of DBMS over Excel?

Differentiate between DDL and DML.

What is SQL?

What is the purpose of SQL?

What is the purpose of the SELECT statement in SQL?

What is the meaning of * in Select Statement in SQL?

What is the difference between DELETE and Drop commands?

What is the difference between DELETE and TRUNCATE commands?

What is the purpose of the WHERE clause in SQL?

What is the purpose of the INSERT statement in SQL?

What is the purpose of the UPDATE statement in SQL?

What is the purpose of the DELETE statement in SQL?

What is the purpose of the ORDER BY clause in SQL?

JavaScript Viva Question

What is client-side scripting, and how does it differ from server-side scripting?

Name some popular client-side scripting languages.

How do we create comments in JavaScript?

In JavaScript, you can create comments using two different methods:

Explain about Global and Local Variable.

     Global Variables:

     Local Variables:

Differentiate between null and undefined.

null:

undefined:

How do you create an array in JavaScript?

Explain the concept of event handling in client-side scripting.

What is JavaScript, and how does it enhance web development?

Explain the various methods to include JavaScript code in an HTML page.

What are the different attributes of the <script> tag, and how do they affect script execution?

Discuss the placement of <script> tags within an HTML document and its implications.

Explain the concept of inline JavaScript and its advantages and disadvantages.

Explain how to use JavaScript to manipulate HTML elements and modify the content and style of a web page.

Explain the difference between JavaScript and Java.

What are the basic building blocks of JavaScript programs?

What are data types in JavaScript?

Discuss the role of type coercion in JavaScript and provide examples.

What is a variable in JavaScript, and how do you declare one?

Explain the rules for naming variables in JavaScript.

Discuss the difference between var, let, and const for declaring variables.

Explain the concept of hoisting in JavaScript variable declaration.

What are operators in JavaScript, and what categories do they fall into?

Discuss the difference between unary, binary, and ternary operators, providing examples of each.

Explain the use of arithmetic operators in JavaScript with examples.

Discuss the importance of operator precedence and associativity in JavaScript expressions.

Explain the use of comparison operators and logical operators in JavaScript with examples.

What are the various pop-ups in JavaScript?

In JavaScript, you can create various types of pop-ups to interact with users.

alert("Message");

                                var result = prompt("Enter your name:", "");
                                var result = confirm("Are you sure?");

Differentiate between console.log() and document.write()?

                                    console.log("Hello, world!");

document.write("<h1>Hello, world!</h1>");

How do we convert a string with numeric value to integer data type?

parseInt() and Number() are both functions in JavaScript used for converting values to numbers.

What is a function in JavaScript?

How do you declare a function in JavaScript?

Explain the difference between function declarations and function expressions.

What are the parameters and arguments in a function?

Explain the concept of return values in functions.

What is the if-else statement, and how is it used in JavaScript?

Explain the syntax and usage of the if-else-if statement in JavaScript.

How do you use the switch-case statement in JavaScript?

What are the types of loops in JavaScript?

Discuss the syntax and usage of the for loop in JavaScript.

Explain the syntax and usage of the while loop in JavaScript.

How do we create exception handling in JavaScript?

In JavaScript, you can perform exception handling using try, catch, and finally blocks.

          try {

                var result = 10 / 0; // This will throw a division by zero error

                console.log(result); // This line won’t be executed }

          catch (error) {

                console.error(“An error occurred:”, error); }

          finally {

                console.log(“Execution completed.”); // This line will always be executed

}

Explain the concept of objects in JavaScript.

How do you create objects in JavaScript?

What are events in JavaScript, and how are they triggered?

How do you handle events in JavaScript?

What is the Image object in JavaScript?

How do you create an Image object in JavaScript?

What properties and methods does the Image object provide?

What is the Form object in JavaScript?

How do you access a Form object in JavaScript?

What properties and methods does the Form object provide?

What is form validation, and why is it important in web development?

Explain the difference between client-side and server-side form validation.

What are some common techniques for client-side form validation in JavaScript?

What is jQuery, and how does it simplify DOM manipulation and event handling?

How do you include jQuery in a web page, and what is the jQuery syntax for selecting elements?

C Programming Viva Question

What is a function in C programming?

What is the purpose of using functions in C?

How do you define a function in C?

What is the difference between a function declaration and a function definition?

What is a function prototype in C?

What is the difference between a library function and a user-defined function?

What are the advantages of using functions in programming?

What are function parameters?

How are function parameters passed in C?

What is the difference between call by value and call by reference?

How do you specify the return type of a function in C?

Can a function return multiple values in C?

What is recursion in C?

What are the necessary conditions for recursion?

How does recursion work in C?

What is a structure in C programming?

How do you define a structure in C?

What is the difference between structure definition and declaration?

How do you initialize a structure in C?

How is the size of a structure calculated in C?

How do you access members of a structure in C?

What is an array of structures in C?

What is a union in C programming?

How do you define a union in C?

What is the difference between a union and a structure in C?

What is a pointer in C programming?

What is a data file in C programming?

What is the purpose of using data files in programming?

What is a sequential file?

What is a random file?

What is the purpose of putw() and getw() functions in C?

Explain the usage of putc() and getc() functions in C.

What are fscanf() and fprintf() functions used for in C?

How do you open a file in C for reading?

What is the difference between writing and appending to a file?

How do you close a file in C after reading or writing?

PHP Viva Questions

What is server-side scripting, and how does it differ from client-side scripting?

Name some popular server-side scripting languages.

How does a server-side script interact with a web server?

Explain the typical workflow of a server-side script.

What are the advantages of server-side scripting?

What are the hardware and software requirements for running PHP?

Explain the concept of object-oriented programming in PHP.

What is the basic syntax of PHP?

What are the various data types supported by PHP?

Discuss the different types of operators in PHP.

How do you manipulate variables in PHP?

Explain database connectivity in PHP.

What are the steps involved in connecting a server-side script to a database in PHP?

How do you make SQL queries in PHP?

What does fetching data sets mean in PHP?

How do you create an SQL database using server-side scripting in PHP?

Discuss the process of displaying queries in tables using PHP.

How do you define a class in PHP?

What is the significance of the ‘new’ keyword in PHP?

Explain the difference between == and === operators in PHP.

How do you declare and initialize variables in PHP?

What is SQL injection, and how can it be prevented in PHP?

Discuss the role of the mysqli and PDO extensions in PHP.

How do you handle errors during database connectivity in PHP?

Explain the concept of inheritance in object-oriented programming with PHP.

What are the different types of loops supported in PHP?

Discuss the role of constructor and destructor methods in PHP classes.

How do you execute conditional statements in PHP?

Explain the concept of method overloading in PHP.

What is the purpose of the php.ini file in PHP?

How do you retrieve data from a form submitted via POST method in PHP?

Explain the process of handling file uploads in PHP.

What are the different types of errors that can occur in PHP scripts?

How do you include external PHP files within a script?

What is the purpose of the ‘use’ keyword in PHP namespaces?

Discuss the concept of autoloading classes in PHP.

Explain the difference between GET and POST methods in form submissions.

What is the purpose of the global keyword in PHP?

How do you handle sessions in PHP?

Explain the concept of method chaining in PHP.

What is the purpose of the header() function in PHP?

Discuss the significance of sanitizing user input in PHP.

What is the purpose of the empty() function in PHP?

Explain the concept of method visibility in PHP classes.

How do you define constants in PHP?

Discuss the role of namespaces in PHP.

What is the purpose of the setcookie() function in PHP?

Explain the difference between require and include statements in PHP.

What is Number System?

Types of Number System:

  1. Non-positional Number System

2. Positional Number System

Radix of a Number System:

Why Binary number system is used in computer system?

Decimal/Binary/Octal/Hexadecimal Number System & Conversion

Decimal Number System:

Binary Number System:

Octal Number System:

Hexadecimal Number System:

 

 

 

 

Number System Conversion

Decimal to Other System Conversion

Conversion from decimal to binary

Rules:

  1. Divide the decimal number by the base value of binary (2) and list the remainder.
  2. The process is continuing till the quotient becomes zero.
  3. Write the remainders left to right from bottom to top.

Example:

Convert (34)10 into Binary.

Solution:

Given number: 34

Let’s convert it to binary:

 

 

 

 

 

 

 

∴ (34)10 = (100010)2

Fractional conversion (Decimal to Binary):

Rules:

  1. Successively multiply the fraction by 2 (base 2) to generate binary digits.
  2. Repeat until the fraction becomes 0 or until the desired accuracy is reached.
  3. If the fraction becomes 0, terminate the process.
  4. If the fraction does not become 0 after 5 iterations, terminate the process after the 5th iteration.

Example:

Convert (23.84)10 into Binary.

Solution:

Given number: 23.84

Let’s convert the non fractional part first:

 

 

 

 

 

 

∴ (23)10 = (10111)2

Now, let’s convert the fractional part:

 

 

 

 

 

∴ (.84)10 = (.11010)2

Finally,

(23)10 + (.84)10 = (10111)2 + (.11010)2 

∴ (23.84)10 = (10111.11010)2

Converting Decimal to Octal

Rules:

  1. Divide the decimal number by the base value of Octal (8) and list the remainder.
  2. The process is continuing till the quotient becomes zero.
  3. Write the remainders left to right from bottom to top.

Example: 

Convert the decimal number 109 into octal.

Solution:

Given number: 109

Let’s convert it to octal:

 

 

 

 

∴ (109)10 = (155)8

Fractional conversion (Decimal to Octal):

Rules:

  1. Successively multiply the fraction by 8 (base 8) to generate binary digits.
  2. Repeat until the fraction becomes 0 or until the desired accuracy is reached.
  3. If the fraction becomes 0, terminate the process.
  4. If the fraction does not become 0 after 5 iterations, terminate the process after the 5th iteration.

Example:

Convert (23.84)10 into Octal.

Solution:

Given number: 23.84

Let’s convert the non fractional part first:

 

 

 

 

∴ (23)10 = (27)8

Now, let’s convert the fractional part:

 

 

 

 

 

 

∴ (.84)10 = (.65605)8

Finally,

(23)10 + (.84)10 = (27)8 + (.65605)8 

∴ (23.84)10 = (27.65605)8

Converting Decimal to Hexadecimal

Rules:

  1. Divide the decimal number by 16 and list the remainder.
  2. The process is continuing till the quotient becomes zero.
  3. Write the remainders left to right from bottom to top.

Example: 

  1. Convert the decimal number 53 into Hexadecimal number.

Solution:

Given number: 53

Let’s convert it to octal:

 

 

 

 

∴ (53)10 = (35)16

Example: 

  1. Convert decimal number 235 into Hexadecimal number.

Solution:

Given number: 235

Let’s convert it to Hexadecimal:

 

 

 

 

Here, since it is hexadecimal values, we know:

14 = E

11 = B

∴ (235)10 = (EB)16

Fractional conversion (Decimal to Hexadecimal):

Rules:

  1. Successively multiply the fraction by 16 (base 16) to generate binary digits.
  2. Repeat until the fraction becomes 0 or until the desired accuracy is reached.
  3. If the fraction becomes 0, terminate the process.
  4. If the fraction does not become 0 after 5 iterations, terminate the process after the 5th iteration.

Example:

Solution:

Given number: 31.84

Let’s convert the non fractional part first:

 

 

 

 

Here, since it is hexadecimal values, we know:

15 = F

∴ (31)10 = (1F)16

Now, let’s convert the fractional part:

 

 

 

 

 

Here, since it is hexadecimal values, we know:

13 = D

10 = A

∴ (.84)10 = (.D70A3)16

Finally,

(31)10 + (.84)10 = (1F)16 + (.D70A3)16 

∴ (31.84)10 = (1F.D70A3)16

Other System to Decimal Conversion

Converting From Binary to Decimal

Rules:

  1. Multiply each binary digit with its place value i.e. positive powers of two with its positional weight.
  2. Add all the products.

Example: Convert Binary number 111111 into decimal no.

Given number: 11111

Let’s first find out positional weight for each binary digit:

 

 

 

Now, let’s convert: 

 = (1 × 25 + 1 × 24 + 1 × 23 + 1 × 22 + 1 × 21 + 1 × 20)

 = 32+16+8+4+2+1

 = 63

∴ (111111)2 = (63)10

Fractional conversion (Binary to Decimal):

Example:  Convert Binary number 110011.11into decimal no.

Given number: 110011.11

Let’s first find out positional weight for each binary digit:

 

 

 

 

Now, let’s convert: 

 = (1 × 25 + 1 × 24 + 1 × 23 + 1 × 22 + 1 × 21 + 1 × 20  + 1 × 2-1 + 1 × 2-2)

 = 32+16+0+0+2+1+0.5+0.25

 = 51.75

∴ (110011.11)2 = (51.75)10

Conversion from Octal to Decimal

Method:

  1. Multiply each octal digit with its place value (8) with its positional weight.
  2. Add all the products.

Example: Convert octal number 435 into Decimal number.

Given number: 435

Let’s first find out positional weight for each octal digit:

 

 

 

 

Now, let’s convert: 

= (4 × 82 + 3 × 81 + 5 × 80)

= (4 × 64 + 3 × 8 + 5 × 1)

= (256+24+5)

= 285

∴ (435)8 = (285)10

Fractional conversion (Octal to Decimal):

Solved examples of octal fractions to decimal fraction conversion

Example: Convert (21.21)8 into base 10

Given number: 21.21

Let’s first find out positional weight for each octal digit:

 

 

 

Now, let’s convert: 

= 2 × 81 + 1 × 80 + 2 × 8-1 + 1 x 8-2

= 2 × 8 + 1 × 1 + 2 × ( 1 / 8 ) + 1 × ( 1 / 64 )

= 16 + 1 + ( 0. 25 ) + ( 0.015625 )

= 17 + 0. 265625

 = 17.265625

∴ (21.21)8 = (17.265625)10

Conversion from Hexadecimal to Decimal

Method:

  1. Multiply each hexadecimal digit with its place value(16) with its positional weight.
  2. Add all the products.

Example: Convert hexadecimal number AB2 into decimal.

Given number: AB2 

Let’s first find out positional weight for each hexadecimal digit:

 

 

 

 

Here, since it is hexadecimal values, we know:

A = 10

B = 11

Now, let’s convert: 

(10 × 162 + 11 × 161 + 2 × 160 )

= (10 × 256 + 11 × 16 + 2 × 1)

= (2560 + 176 + 2) =2738

∴ (AB2)16 = (2738)10

Fractional conversion (Hexadecimal to Decimal):

Example: Convert ( E F . B 1 )16= ( ? )10

= E × 161 + F × 160 . B × 16-1 + 1 x 16-2

= 14 × 16 + 15 × 1 . 11 × ( 1 / 16 ) + 1 × ( 1 / 256 )

= 224 + 15 . ( 0. 6 8 7 5 ) + ( 0 . 0 0 3 9 0 6 2 5 )

= 239 + 0. 6914

= 239 . 691406

Therefore ( E F . B 1 )16 = ( 2 3 9 . 6 9 1 4 0 6 )10

Binary to Octal and Hexadecimal Conversion

Conversion from Binary to Octal

Method 1:

  1. Write the Binary number in group of 3 from right hand side.
  2. If any digits are inadequate for such group of 3, then add zeros before the number.
  3. Write its corresponding value of octal from the table or convert it to decimal as before.

Example: Convert Binary number 10110 into Octal.

Binary number: 10110

Grouped Binary Number: 010     110

Corresponding Octal Value: 2      6 [Taken from the table]

Or

Given number: 10110

Let’s first find out positional weight for each binary digit:

 

 

 

Now, let’s convert: 

 = ( 0 × 22 + 1 × 21 + 0 × 20)

 = 0+2+0

 = 2

Similarly,

 = ( 1 × 22 + 1 × 21 + 0 × 20)

 = 4+2+0

 = 6

Concatenating above results. We get:

∴ (10110 )2 = (26)8

Method -2:

  1. First convert the Binary number into Decimal number.
  2. Now convert the decimal number into Octal number.

Example: Convert Binary number 10110 into Octal.

Given number: 10110

Let’s first find out positional weight for each binary digit:

 

 

 

 

Now, let’s convert to decimal first: 

= (1 × 2 4 + 0 × 23 + 1 × 22 + 1 × 21 + 0 × 20)

= 16 + 0 + 4 + 2 + 0

= 22

Therefore, (10110)2 = (22)10

Again, let’s convert decimal to octal:

 

 

 

 

Therefore (22)10 = (26)8

∴ (10110)2  = (26)8

Fractional conversion (Binary to Octal):

Example: Convert (0110 011.1011)2 into base 8

Binary number = (0110 011.1011)2

Group of 3 bit of Binary = (0 110 011 . 101 1)2

= (110 011 . 101 100)2

 

 

 

Now, let’s convert: 

 = ( 1 × 22 + 1 × 21 + 0 × 20)

 = 4+2+0

 = 6

Similarly,

 = ( 0 × 22 + 1 × 21 + 1 × 20)

 = 0+2+1

 = 3

Similarly,

 = ( 1 × 22 + 0 × 21 + 1 × 20)

 = 4+0+1

 = 5

Similarly,

 = ( 1 × 22 + 0 × 21 + 0 × 20)

 = 4+0+0

 = 4

Concatenting above results. We get:

Thus, (0110 011.1011)2 = (63.54)8

∴ (0110 011.1011)2  = (63.54)8

 

Conversion from Binary to Hexadecimal

Method -1:

  1. Write the binary number in a group of 4 from right to left. 
  2. If any digits are inadequate for such a group 4, then add 0 before the number as much is necessary. 
  3. Write the equivalent Hexadecimal number from the table or convert binary to decimal as before.

Example: Convert Binary number 10110 into Hexadecimal.

Binary Number: 10110

Grouped Binary Number: 0001     0110

Equivalent Hexadecimal number:   1     6 [taken from the table]

Or

 

 

 

 

Now, let’s convert: 

 = ( 0 x 23  + 0 × 22 + 0 × 21 + 1 × 20)

 = 0+0+0+1

 = 1

Similarly,

 = ( 0 x 23  + 1 × 22 + 1 × 21 + 0 × 20)

 = 0+4+2+0

 = 6

Therefore, (10110) 2 = (16)16

 

Method -2:

  1. Convert the given binary number into Decimal number 
  2. Now convert decimal number into Hexadecimal number.

Example: Convert Binary number 10110 into Hexadecimal.

Let’s first find out positional weight for each binary digit:

 

 

 

 

Now, let’s convert to decimal first: 

= (1 × 2 4 + 0 × 23 + 1 × 22 + 1 × 21 + 0 × 20)

= 16 + 0 + 4 + 2 + 0

= 22

Therefore, (10110)2 = (22)10

Again, let’s convert decimal to octal:

 

 

 

 

Therefore (22)10 = (16)16

∴ (10110)2  = (16)16

Fractional conversion (Binary to Hexadecimal):

Method -1:

  1. Write the binary number in a group of 4 from right to left. 
  2. If any digits are inadequate for such a group 4, then add 0 before the number as much is necessary. 
  3. Write the equivalent Hexadecimal number from the table or convert binary to decimal as before.

Example: Convert (11110.01011)2 into Base 16

Binary Number: 11110.01011

Grouped Binary Number: 0001   1110   0101   1000

Equivalent Hexadecimal number:   1 14/E 5 8 [taken from the table]

∴  (11110..01011)2 =(1E.58)16

OR,

Binary number   = (11110..01011)2

Group of 4 bit of Binary = (0001 1110 . 0101 1000)2

 

 

 

Now, let’s convert: 

= (0 × 23 + 0 × 22 + 0 × 21 + 1× 20)

= 0 + 0 + 0 + 1

= 1

Similarly,

= (1 × 23 + 1 × 22 + 1 × 21 + 0 × 20)

= 8 + 4 + 2 + 0

= 14

= E

Similarly,

= (0 × 23 + 1 × 22 + 0 × 21 + 1 × 20)

= 0 + 4 + 0 + 1

= 5

Similarly,

= (1 × 23 + 0 × 22 + 0 × 21 + 0 × 20)

= 8 + 0 + 0 + 0

= 8

Concatenating above results. We get:

∴ (11110.01011)2 = (1E.58)16

Octal and Hexadecimal System to Binary Conversion

Conversion from Octal to Binary

Method – 1

  1. Write the equivalent 3 bits of binary number of octal from the table.

Example: Convert octal number 35 into Binary number.

Octal Number: 3 5

Equivalent Binary number: 011 101 [taken from the table]

Therefore, (35)8 = (011101)2

Method -2:

  1. First convert octal number into Decimal number.
  2. Now convert Decimal number into Binary number.

Example: Convert octal number 35 into Binary number.

Octal number: 3 5

Positional weight: 1 0

Conversion: = (3 × 81 + 5 × 80)

= 24+5

Therefore, (35)8 = (29)10

 

 

 

 

 

 

 

Thus, (35)8 = (11101)2

Conversion from Hexadecimal to Binary

Method – 1

  1. Convert the Binary number in the group of 4 bits for each hexadecimal number.
  2. Provide base 2 to the result.

Example: Convert Hexadecimal number A2C into Binary.

Hexadecimal Number: A 2 C

Equivalent Binary Number 1010 0010 1100

Therefore, (A2C)16 = (1010 0010 1100)2

Method – 2

  1. First convert the Hexadecimal number into decimal.
  2. Then convert the decimal number into a Binary number.

Hexadecimal Number: A 2 C

Positional weight: 2 1 0

Conversion: = (10 × 162 + 2 × 161 + 12 × 160)

(A=10, C=12 taken from the table)

= (10 × 256 + 2 × 16 + 12 × 1)

= (2560+32+12) = 2604

Therefore, (A2C)16 = (2604)10

 

 

 

 

 

 

 

 

 

 

 

 

Fractional conversion (Hexadecimal to Binary):

Octal to Hexadecimal Conversion and Vice Versa

Conversion from Octal to Hexadecimal

Method-1:

  1. Convert each octal digit into 3 bit of binary equivalent.
  1. Now, form the group of 4 digits of binary numbers from right hand side.
  2. Write the equivalent Hexadecimal value from the given table.

Example: Convert octal number 420 into Hexadecimal number.

Octal Number: 4 2 0

3 Bit of Binary equivalent: 100 010 000

Group of 4 bit of Binary digits 0001 0001 0000

Equivalent Hexadecimal number: 1 1   0

Thus, (420)8 = (110)16

Method -2:

  1. First convert octal number into Decimal number.
  2. Now convert Decimal number into Hexadecimal number.

 

 

 

 

 

 

 

 

 

 

Conversion from Hexadecimal to Octal

Method -1

  1. Convert each hexadecimal number into 4 bit of binary equivalent. 
  2. Then form the group of 3 bits of binary digits from right hand side.
  3. If any digits are inadequate for such group of 3, then add zero before the number.
  4. Now, write the equivalent octal value for each group from the table.

Example: Convert Hexadecimal number 183 into Octal.

Hexadecimal number: 1 8 3

4 bits of Binary equivalent 0001 1000 0011

3 bits of Binary grouping 000 110 000 011

Equivalent octal number   0   6   0   3

Hence, (183)16 = (603)8

Method – 2

  1. First convert Hexadecimal number into decimal number
  2. Then convert decimal number into octal number.

Hexadecimal number: 1 8 3

Positional weight: 2 1 0

Conversion: = (1 × 162 + 8 × 161 + 3 × 160)

= (256+128+3) 

= 387

Thus, (183)16 = (387)10

 

 

 

 

 

 

 

Fractional conversion (Hexadecimal to Octal):

 Binary Calculations

Binary Addition

 

 

 

 

 

 

 

 

 

 

 

 

Binary Subtraction

 

 

 

 

 

Note: Borrowing is necessary when we have to subtract a larger number from a smaller one. A borrow will cause a 1 in the minuend to become 0 and a 0 to become 1. In the second case the preceding 0s in the minuend are changed to 1s until a 1 can be changed to a 0.

 

 

 

 

 

Binary Multiplication

 

 

 

 

 

 

 

 

 

 

 

 

Binary Division

 

 

 

 

 

 

 

Binary division guidelines:

 

 

 

 

 

 

 One’s and Two’s Complement Method for Binary Subtraction 

1’s complement method for binary subtraction

Methods for binary subtracting by using 1’s complement.

  1. Make equal no. of bits by placing 0 in front of negative number to make equal with the first number.
  2. Convert 1’s complement of the second number i.e. 1 to 0 and 0 to 1
  3. Add it to the main value.
  4. If an overflow bit occurs, remove it and add it to the remaining number.
  5. If there is not extra bit, find 1’s complement of result in step 2 and add (-ve) sign.

Example: Subtract 11 from 100 by using 1’s complement.

 

 

 

 

 

 

 

2’s complement method for binary subtraction

Methods for binary subtracting by using 2’s complement

  1. Make equal no. of bits by placing 0 in front of negative number to make equal with first number.
  2. Convert 1’s complement of the second number i.e. 1 to 0 and 0 to 1 and adding 1 to inverted value.
  3. Add it to the main value.
  4. If overflow bit occurs, remove it and the remaining is answer.
  5. If there is no extra bit, find 2’s complement of result in step 2 and add (-ve) sign.

Example: Subtract 11 from 100 by using 1’s complement.

 

 

 

 

 

 

 

 Logic Function & Boolean Algebra

 Introduction to Boolean Algebra

Unique feature of Boolean Algebra:

  1. Boolean algebra: 0 and 1 values.
  2. No subtraction, division; only logical addition, multiplication.
  3. Unique laws: A + A = A, A . A = A.
  4. Distributive law: A + (B.C) = (A+B).(A+C).
  5. Graphical methods specific to Boolean algebra.

 Introduction to Boolean Values, Truth Table, Boolean Expression and Boolean Function

Truth Table

 

 

 

 

 

Boolean Expression or Functions

 

 

 

 

 

 

 

 

 

 

 

 

Basic Logical/Boolean Operation

AND Operation

 

 

 

 

 

 

OR Operation

 

 

 

 

 

 

 

NOT operation

 

 

 

 

 

Logic Gate

 

 

 

 

 

AND Gate

 

 

 

 

 

OR Gate 

 

 

 

 

 

 

NOT Gate

 

 

 

 

 

NAND Gate

 

 

 

 

 

NOR Gate

 

 

 

 

 

 

X-OR Gate

 

 

 

 

 

 

X-NOR Gate

 

 

 

 

 

Universal Gate

NAND gate as Universal gate:

 

 

 

 

 

 

 

 

 

NOR gate as universal gate:

All NOR input pins connected to the input signal A give an output A’.

 

 

 

 

The figure below shows how the NOR gate can be used as OR gate.

An OR gate can be replaced by NOR gates as shown in the figure. The OR is replaced by a NOR gate with its output complemented by a NOR gate inverter.

 

 

 

 

The figure below show how the NOR gate can be used as AND gate.

An AND gate can be replaced by NOR gates as shown in the figure. The AND gate is replaced by a NOR gate with all its inputs complemented by NOR gate inverters.

 

 

 

 

 

 

 

Laws of Boolean Algebra

Duality Principle

For example:

Let us consider a Boolean expression

F = A + B . 0

Then it’s duality would be

FD = A . B + 1

And both expressions will be the same. It would be verified by the following truth table.

 

 

 

 

 

 

Boolean Postulates

 

 

 

 

 

Laws of Boolean Algebra
  1. Identify Laws

                        A + 0 = A                                        A . 1 = A

  2. Complement Laws

                        A + A’ = 1                                        A . A’ = 0

   3. Idempotent Laws

                       A + A = A                                        A. A = A

   4. Bounded Laws

                       A + 1 = 1                                          A . 0 = 0

   5. Absorption Laws

                      A + (A . B) = A                                A. (A + B) = A

   6. Commutative Laws

                     A + B = B + A                                  A . B = B . A

   7. Associative Laws

                    (A + B) + C = A + (B + C)             (A B) C = A (B C)

   8. Distributive Laws

                   A (B + C) = A B + A C                     A + (B C) = (A + B) (A + C)

  9. Involution Laws

                  (A’)’= A

10. De Morgan’s Laws

                 (A + B)’ = A’.B’                                (A.B)’ =A’+B’

 

Statement and Verification of Laws of Boolean  Algebra using Truth Table

Identity Law

These laws state that combining a Boolean variable with its complement (negation) results in the original variable.

(a) A + 0 = A

(b)  A . 1 = A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Complement Law

This law states that the sum of a Boolean variable and its complement is always equal to 1.

(a)  A + A’ = 1

(b) A . A’ = 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Commutative Law

These laws state that the order of variables in an operation doesn’t affect the result.

(a) A + B = B + A

(b) A . B = B . A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Associative Law

These laws state that the grouping of variables in an operation doesn’t affect the result.

(a) A + (B + C)=(A + B) + C

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The above table shows that (A + B) + C = A + (B + C) is equal for all possible combinations of inputs.

(b) A.(B.C)=(A.B).C

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Distributive Law

These laws relate the operations of addition and multiplication.

(a) A (B + C) = A B + A C

 

 

 

 

 

 

 

 

 

 

The above table shows that A . ( B + C) = (A . B) + (A . C) is equal for all possible combinations of inputs.

(b) A + (B C) = (A + B) (A + C)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

DeMoragan’s Theorem

Theorem 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The above table shows that (A+B)’ = A’.B’ is equal for all possible combinations of inputs. Let us see: when the value of A = 0 and B = 0, the value of (A+B)’ = 1 and A’.B’ = 1. Similarly we can see all the combinations of A and B, all the time (A+B)’ = A’.B’ are equal.

Theorem 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The above table shows that (A.B)’ = A’+B’ is equal for all possible combination of inputs. Let us see: when the value of A = 0 and B = 0, the value of (A.B)’ = 1 and A’.B’ = 1. Similarly we can see all the combinations of A and B, all the time (A.B)’ = A’+B’ are equal.

Simplification of Boolean Expression

Introduction to Computer

Definition of Computer:

 

 

 

 

 

 

 

 

 

Characteristics of Computer:

 

Advantages and Disadvantages of Computer

Advantages:

  1. Accurate and reliable machine.
  2. Much faster than humans.
  3. High storage capacity.
  4. Never feels tired and exhausted like a human being.
  5. Versatile device
  6. Error free result

Disadvantages:

  1. Expensive device
  2. Required skilled manpower to operate
  3. Discourage physical activities / affect human health
  4. Rise of computer crimes like hacking, virus, pornography etc.
  5. Need repair, update and maintenance frequently.
  6. Depend on electricity to work.

 

Application of Computers

Bank: 

  1. Online accounting facility like checking current balances, deposits etc. 
  2. ATM machines – interconnected computer system
  3. Internet banking for accessing accounts, transferring money, and paying bills.

Engineering:

  1. Work with CAM/CAD software packages like AutoCAD, CATIA, Etabs etc..
  2. Designing and developing machine drawings, building drawings, circuit drawings, 3D views etc.

Medicine:

  1. Diagnosing illness and monitoring patient’s status
  2. Look inside a person’s body and study in detail with the help of automated imaging techniques like UltraSound, CT scans, MRI scans etc.
  3. Storage of patients data in an efficient manner.

Education:

  1. Used as information resource, teaching aid, library system, result system, students record etc.
  2. Remote learning, audio-visual packages, interactive exercises etc.
  3. Online registration, mock exams, entrance exam and interviews
  4. Interactive learning and taking virtual field trips with the help of AR/VR 

Ticketing:

  1. Book tickets for flight, bus, movies
  2. Online hotel reservations

Defense:

  1. Information of defense system,  
  2. Secured database and record 
  3. Tracking, surveillance and controlling the flight, targeting ballistic missiles
  4. Control the access to atomic bombs

Business:

  1. Online buying and selling of goods and services
  2. Collaborating with business partners and suppliers, conducting electronic transactions
  3. File management, calculating the bills, office communication, administrative work, decision making etc.

Multimedia:

  1. Working with graphics and images. Ex: Photoshop
  2. Audio or video composition, editing. Ex: Adobe Premiere Pro, Da Vinci Resolve
  3. Making special effects like VFX in science fiction movies.

Desktop publishing:

  1. Create page layouts for magazines, newspapers, books etc. Ex: Adobe Illustrator, InDesign etc.

Communication:

  1. Real time communication(chatting, video call) over the internet. Ex. Zoom call
  2. Connects with people around the world with the help of emails, social media etc. For example Gmail, Facebook, Instagram, WhatsApp etc.

Government:

  1. Data processing and maintenance of database of citizens record
  2. Create paperless environment
  3. Aid in country’s defense organizations like missile development, satellite, rocket launches etc.

Planning and Scheduling:

  1. Store contact information, generate plans, schedule appointments and deadlines etc.
  2. For example: Project management with Jira, Gmail Scheduling etc.

 

History of Computer

  1. Mechanical Calculating Era:

            a)  Abacus

        1. Abacus: earliest calculating device, still in use today.
        2. Originated in China 3000 years ago.
        3. “ABACUS” derived from Roman words “ABAC” and “ABAX” (dust and sand).
        4. Wooden frame, beads on parallel bars for counting.
        5. Experienced users perform fast calculations, rivaling electronic calculators.

           b) Napier’s Bone

        1. 1617AD: John Napier invented rods for simple multiplication.
        2. ‘Bones’: rods with carved numbers for easy multiplication.
        3. Napier is better known for inventing logarithms.

         c) Slide Rule

        1. 1620 AD: William Oughtred invented the Slide Rule, combining logarithm and Napier’s bones.
        2. Slide Rule used logarithmic scales for rapid multiplication, division, and other calculations.
        3. Engineers and mathematicians extensively used slide rules until electronic calculators replaced them.

        d) Pascaline

        1. Around 1642 AD: Blaise Pascal invented a simple mechanical calculator.
        2. Pascal’s calculator used gears and wheels to register numbers.
        3. It could add and subtract easily but couldn’t multiply or divide.
        4. Recognized as the first mechanical calculating device.

        e) Stepped Reckoner

        1. Stepped Reckoner: Mechanical calculator invented by Gottfried Wilhelm Leibniz in 1671AD.
        2. Modified the Pascaline and made his own.
        3. Used until replaced by electronic calculators in the 1960’s.

        f) Babbage ‘s Engine (Difference Engine and Analytical Engine)

        1. 1822AD: Charles Babbage developed the Difference Engine for algebraic equations.
        2. 1833 AD: Designed Analytical Machine, inspired by Jacquard’s punched cards.
        3. Prototype of the modern computer with input, storage, output, and program control.
        4. Babbage’s ideas ahead of his time, technology limitations prevented completion.
        5. Babbage is known as the Father of Modern Computers.

      g) Lady Augusta Ada

        1. Ada Lovelace: Mathematician, Lord Byron’s daughter.
        2. Assisted Babbage, advocated a binary system.
        3. First computer programmer.
        4. “Ada” programming language named after her by U.S. Defense.
        5. Recognized for significant computer science contributions.

      h) George Boole

        1. 19th Century (1950s): English mathematician, symbolic logic.
        2. Discovered Boolean Algebra in mathematics.
        3. Pioneered modern electronic computers with 0 and 1 representation.
        4. Introduced “on” and “off” states for communication.

     i) Tabulating Machine

        1. 1886: Hollerith’s Tabulating Machine inspired by Jacquard.
        2. Used punch cards for faster census calculation.
        3. Founded Tabulating Machine Company (TMC).
        4. 1923: TMC merged, formed IBM.
        5. IBM: Top computer manufacturer today.

 

2) Electro-Mechanical Era:

     a) Mark I

        1. Also known as IBMASCC (IBM Automatic Sequence Control Calculator).
        2. 750,000 parts, 500 miles of wire, complex.
        3. Huge: 50ft long, 8ft high, 3ft wide.
        4. Dimension: 50 feet long, 8 feet high, 3 feet wide. 
        5. About  32 tons and had 18000 vacuum tubes
        6. Operations: Add, subtract, multiply, divide, table reference.
        7. Handled up to 23-digit numbers.
        8. Multiplication took 3-5 seconds.
        9. Mark II: Used high-speed electromagnetic relays, not electro-mechanical counters.

     b) ABC(Atanasoff Berry Computer)

        1. 1942: Atanasoff and Berry invented ABC.
        2. First electronic special-purpose computer.
        3. Designed for complex math problems like linear equation.
3) Electronic Computers Era:

     a) ENIAC

        1. ENIAC: First general-purpose electronic computer.
        2. Invented in 1946 by Mauchly and Eckert.
        3. Created for US armed forces.
        4. Capable of 5000 additions, 300 multiplications per microsecond.
        5. Used over 18000 vacuum tubes, high power consumption.

            

      b) J.V. Neumann

        1. 1945: J.V. Neumann discovered the stored program concept.
        2. Crucial for modern digital computer development.
        3. Improved speed, flexibility, efficiency.
        4. Known as “father of stored programs.”

 

     c) EDSAC

        1. 1949: EDSAC created by Maurice Wilkes.
        2. Used J.V. Neumann’s techniques.
        3. Introduced “Initial Orders” (first assemblers).
        4. Enabled symbolic programming instead of machine code.

 

      e) EDVAC

        1. 1952: Mauchly, Eckert, and von Neumann create EDVAC.
        2. First stored-program computer, storing instructions and data.
        3. Marked crucial step in modern computing evolution.

 

      f) UNIVAC

        1. UNIVAC was invented in 1951 by John Mauchly and J.P. Eckert.
        2. Used magnetic tape for input and output.
        3. Installed in 1954 at the office of General Electric Company.
        4. Marked the arrival of commercially available digital computers for business and scientific purposes.

 

Feature ENIAC EDSAC EDVAC UNIVAC
Inventors J. Presper Eckert and John Mauchly Maurice Wilkes John von Neumann J. Presper Eckert and John Mauchly
Year of Invention 1946 1949 1952 1961
Memory No stored program concept Mercury delay lines Stored-program concept Mercury delay lines
Programming Wired plugboards Paper tape and later magnetic tape Binary-coded instructions stored in memory Binary-coded instructions stored in memory
Applications Ballistic trajectory calculations, cryptography, etc. Scientific calculations, computer science research Influenced subsequent computer architectures Business data processing, scientific calculations

 

Evolution of Computer Technology

First Generation of Computer (1940 – 1956)

Feature of First Generation Computer:

  1. Vacuum Tubes: Key hardware, large size, short lifespan.
  2. Slow speed, challenging maintenance, limited programming.
  3. Machine-level language for coding.

Examples: ENIAC, EDVAC, EDSAC, UNIVAC, IBM 701

Vacuum Tube

 

Second Generation of Computer (1956 – 1963)

Feature of Second Generation Computer:

  1. Transistors: Key hardware advancement.
  2. Magnetic core memory: Reliable, smaller primary storage.
  3. Lower power consumption, no heat.
  4. High-level programming (FORTRAN, COBOL).
  5. Commercial and scientific use.

Examples: IBM 1401, Honeywell 400, CDC 1604, ICL 1901 etc.

Transistor

 

Third Generation of Computer(1964 – Early 1970s)

Feature of Third Generation Computer:

  1. They are built with IC chips with SSI (Single Scale Integration) and MSI (Middle Scale Integration) technologies.
  2. Larger magnetic core memory.
  3. Larger capacity magnetic disk and tapes.
  4. More flexible with input/output devices.
  5. Smaller in size and had better performance and reliability.
  6. Extensively used high level programming language.
  7. Mini computers emerged from this generation.
  8. Easier to upgrade than the previous generation system.
  9. Operating system program used to control input/output in this generation.

Examples: IBM 360/370, CDC 6600, PDP 11, ICT 1900, Honeywell 2200 series etc.

Integrated Circuits (ICS)

 

Fourth Generation of Computer (Early 1970s – Till Date)

Feature of Fourth Generation Computer:

  1. Used VLSI/Microprocessor as a key hardware technology.
  2. Semiconductor memories replaced magnetic core memories.
  3. Larger storage capacity and fast processing speed.
  4. Personal /desktop computers were introduced.
  5. Small, affordable, reliable and easy to use.
  6. GUI based operating system introduced. (Windows)
  7. High speed computer networking also developed.
  8. Introduced electronic mailing system.

Examples: IBM PC, APPLE II, Motorola M6800, DCM, Burroughs B7700 etc.

Microprocessor

 

Fifth Generation of Computer (Present and Beyond)

Feature of Fifth Generation computer:

  1. Utilization of Ultra Large Scale Integration (ULSI) technology.
  2. Incorporation of superconductors using materials like Gallium Arsenide (GA) or Biochips.
  3. Integration of hardware and software to achieve Artificial Intelligence (AI) comparable to human intelligence.
  4. Development of Expert systems as crucial software components.
  5. Expected to dominate other technologies in the future.

Examples: PARAM super computer, IBM notebooks, SUN, IBM SP/2 etc.

Artificial Intelligence(AI)

 

Feature First Generation Second Generation Third Generation Fourth Generation Fifth Generation
Time Period 1940s – 1956s 1956s – 1963s 1964s – 1970s 1970s – Till Date Present and Beyond
Main Component Vacuum Tubes Transistors Integrated Circuits Microprocessors AI, Quantum Tech
Size Large Smaller Smaller Much Smaller Shrinking
Speed Slow Faster Faster Much Faster Varies
Programming Languages Machine Language Assembly Language High-Level Languages High-Level Languages AI Languages
Memory Magnetic Drum, Delay Lines Core Memory Semiconductor Memory RAM, Hard Drives RAM, SSDs, Cloud Storage
Applications Scientific, Military Business, Scientific Business, Real-time Personal Computers, AI, Big Data
Power Consumption Very High High Moderate Moderate to Low Varies
Examples ENIAC, UNIVAC I IBM 1401, CDC 1604 IBM System/360, PDP-8 Intel 8086, Macintosh IBM Watson, Google’s Quantum Supremacy, various AI systems

 

Measurement Unit of Processing Speed and Storage Unit 

Computer processing Speed

 

Computer Processing Speed

Units Equivalent
1000 th of a second 1 Milliseconds (MS)
1000 th of a milliseconds 1 Microseconds (μs)
1000 th of a microseconds 1 Nanosecond (ns)
1000 th of a nanoseconds 1 Picoseconds (ps)
1000 th of a picoseconds 1 Femtoseconds (fs)

 

Measurement Unit

0,1 1 bit
4 Bit 1 Nibble
8 Bits or 2 Nibble 1 Byte, 1 Character
1024 Bytes 1 Kilobyte (KB)
1024 KB 1 Megabyte (MB)
1024 MB 1 Gigabyte (GB)
1024 GB 1 Terabyte (TB)
1024 TB 1 Petabyte (PB)
1024 PB 1 Exabyte (EB)

 

Super, Mainframe, Mini and Microcomputers

Supercomputer

Characteristics or applications of supercomputers:

  1. Excellent results in animations.
  2. Virtual testing of nuclear weapons and critical medical tests.
  3. Studying and understanding climate patterns for weather forecasting.
  4. Designing flight simulators for pilot training.
  5. Diagnosing critical diseases, brain injuries, and strokes accurately.
  6. Scientific research analyzing data from exploring the solar system and Earth’s movements.
  7. Predicting fog and pollutants in the atmosphere for smog control.
  8. Enhancing security by decrypting passwords for protection.

Example: PARAM, CRAY -1, CDC Cyber 203, Cray XMP etc.

Uses: Weather Forecasting, Aircraft and Space Engineering, Scientific Researcher, etc.

 

Mainframe Computer

Characteristics of Mainframe Computers:

  1. Process huge amounts of data, e.g., millions of transactions in the banking sector.
  2. Long life span, running smoothly for up to 50 years after proper installation.
  3. Excellent performance with large-scale memory management.
  4. Can distribute workload among other processors and terminals.
  5. Fewer chances of errors or bugs, quickly fixable without performance impact.
  6. Ability to protect stored data and ongoing information exchange.

Examples: IBM 370, CYBER 170, UNIVAC 1100 series etc.

Uses: Industries, Banking, Insurance companies, Airlines, Air Traffic Control, etc.

 

Minicomputer

Characteristics of Minicomputer:

  1. Lightweight, portable, and easy to carry.
  2. Less expensive than mainframe computers.
  3. Fast processing capabilities relative to its size.
  4. Long-lasting battery life.
  5. Operates without the need for a controlled environment.

Example: IBM sys/3, PDP-II, Hewlett Packard 3000 etc.

Uses: University, Scientific Research, Industries, etc.

 

Micro Computer

Characteristics of a microcomputer:

  1. Smallest in size among all computer types.
  2. Limited software compatibility.
  3. Designed for personal work with one user at a time.
  4. Less expensive and user-friendly.
  5. No special skills or training required.
  6. Often equipped with a single semiconductor chip.
  7. Capable of multitasking, such as printing, scanning, browsing, and video watching.

Example: IBM PCs, Apple/Macintosh, Dell, etc

Uses: Entertainment, Desktop, Business, School, College, Personal, etc.

Difference between mini and micro computers
Mini computer Micro computer
more powerful than micro computers. less powerful than mini computers.
comparatively more expensive. comparatively cheaper.
bigger in size so that nearly 50 terminals can work smaller in size & can work only single terminal.
not general purpose. general purpose computers.

 

Desktop Computer

Workstation

Laptop

Palmtop

Tablet PC

Smart Phone

Ultrabook

 

Mobile Computing and its Application

Advantages:

Limitations/Disadvantages:

Application of Mobile Computing:

Business

Education

Medical

Banking

Airlines

Defense

Traffic

Emergency Situation

 

 Computer system and I/O devices

Concept of Computer Architecture and Computer Organization
 Components of Computer System

Integrated components working together for a desired result.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Input Unit:

Processor/Central Processing Unit:

Registers

Control Unit

Arithmetic Logic Unit(ALU)

Memory/Storage Unit

Auxiliary Memory or Storage

Output Unit:

 
Microprocessor

Function of Microprocessor:

Characteristics of Microprocessor

Components of Microprocessor

The components of a microprocessor (CPU) include:

 
Bus System

 

 

 

 

 

 

 

 

 

Types of Bus:

Address Bus:

      • Transfers memory or I/O device addresses
      • Unidirectional
      • Intel 8085 microprocessor’s Address bus: 16 bits
      • Allows addressing of 65,536 memory locations

Data Bus:

Control Bus:

Primary Memory

 

 

 

 

 

 

 

 

 

Random Access Memory(RAM):

Read-only Memory (ROM):

Cache Memory:

 

 

 

 

 

 

L1 and  L2 Cache :

Buffer:

 

Secondary Memory

Storage Device:

Magnetic Disk:

Hard Disk:

Floppy Disk:

Flash Memory:

Pen Drive:

Memory Card:

Magnetic Tape:

Optical Disk:

CD- ROM:

CD- RW:

CD R:

DVD:

Blu-ray Disc:

Other External Storage Device:

Memo Stick:

 

Difference Between Primary Memory and Secondary Memory
Primary Memory Secondary Memory
Main memory of the computer. Long-term storage.
Fast access speed. Slower access speed.
Volatile (data is lost when powered off). Non-volatile (data is retained when powered off).
Limited capacity. Larger capacity.
More expensive per unit of storage. More cost-effective for larger storage needs.

 

 Input Devices

Keyboard:

Mouse:

Scanner:

Joystick:

Magnetic Ink Character recognition (MICR):

Optical Mark Recognition (OMR):

Optical Character Recognition(OCR):

Barcode Reader:

Digital Camera:

Touch Screen:

Touchpad:

Microphone:

 

Output Devices

Monitor:

CRT Monitor

Advantage of CRT Monitor:

  1. Good color reproduction and image quality.
  2. Suitable for graphic-intensive applications and gaming.
  3. Wide viewing angles with consistent colors.

Disadvantage of CRT Monitor:

  1. Bulkier and heavier than modern monitors.
  2. Higher power consumption.
  3. Limited resolution options compared to LCD and LED monitors.
  4. Susceptible to screen flickering and eye strain.
  5. Phased out due to advancements in LCD and LED technology.

 

Liquid Crystal Display (LCD) Monitor

Advantage of LCD:

  1. Slim and lightweight design, making them portable and easy to handle.
  2. Low power consumption, resulting in lower energy costs.
  3. Minimal heat production, contributing to a cooler working environment.
  4. Sharp and clear image quality with minimal flickering.
  5. Suitable for high-resolution displays, ideal for multimedia and gaming.

Disadvantage of LCD:

  1. Limited viewing angles can cause color and brightness distortion.
  2. Slower response times can lead to motion blur in fast-paced content.
  3. Potential for dead or stuck pixels, which can be distracting.
  4. Higher cost compared to CRT monitors, especially for larger sizes and high-end models.
  5. Limited color reproduction compared to other display technologies like OLED or QLED.

 

Light Emitting Diode (LED) Monitor

Advantage of LED Monitor

  1. Energy-efficient and eco-friendly.
  2. Slim and lightweight design.
  3. Long lifespan and durability.
  4. Brighter and more vibrant colors.
  5. No flickering and better contrast ratio.

Disadvantage of LED Monitor

  1. Higher cost.
  2. Limited viewing angles.
  3. Potential for backlight bleeding.
  4. Color accuracy issues.
  5. Potential manufacturing defects.

 

Printer:

Impact Printers/Dot-matrix Printers

 

Non impact Printers / Inkjet Printers / Laser Printers

Non-impact Printers:

Inkjet Printers:

Laser Printers:

 

Difference between Impact printer and Non impact printer
Impact Printer Non Impact Printer
1.Mechanical touch between printing head and paper. 1. No mechanical touch between printing head and paper.
2. Low efficiency compared to non-impact printers. 2. Higher efficiency compared to impact printers.
3. Slower printing speed. 3. Faster printing speed.
4. Produces sound during printing. 4. Silent operation during printing.
5. Capable of printing multiple copies (carbon copies) simultaneously. 5. Capable of printing single copies at a time.
6. Not suitable for printing graphics. 6. Suitable for printing graphics.
7. Low cost. 7. High cost.
8. Example: Dot matrix, daisy wheel, line printer 8. Example: Inkjet printer, Laser printer, Thermal printer.

 

Speaker:

 Hardware Interfaces

Serial Port:

Parallel Port:

USB Port:

HDMI:

Slots:

Artificial Intelligence

AI stands for Artificial Intelligence. It  is a concept of giving human-like intelligence to the machines. Though the computers do their work faster  and better than the human beings,  the intelligence of them is zero  because they just follow the set of  instructions given by the user. In case  of wrong instruction, they do wrong processing. It is because they do not have intelligence  of their own. So, the scientists are in research of giving them artificial intelligence, so that  they can understand the natural languages of the human beings and interact. They can  express their feelings and many more.

 

 

 

 

 

 

 

 

 

 

 

Components of AI

Different disciplines contributed their ideas, viewpoint, and techniques to plan the  foundation of Al that acts as components of Al. Some of the major contributions of various  disciplines an given below:

  1. Philosophy: It introduces the concept of logic and methods of reasoning and studying the mind as a physical system. It creates the foundation for learning language, and rationality. It also expresses knowledge-based action to be embedded  into the machine to act with AI
  2. Mathematics: It introduces the concepts of the formal representation of facts and proof, algorithms, computation, and reasoning with uncertain information.
  3. Economics: It introduces the concepts of the formal theory of rational decision.
  4. Neuroscience: It introduces the concepts of mental activity which can be introduced into the machine.
  5. Psychology: It introduces the concepts of the brain as an information processing device and phenomenon of perception and sensory-motor control.
  6. Linguistics: It introduces the concepts of knowledge representation and grammar and how does language relates to thought.
  7. Control Theory and cybernetics: It introduces the concepts of designing the system that maximizes an objective function over time. This is roughly similar to the concepts of Al that behave optimally. It describes how artifacts (objects) can operate  under their own control. That is, it introduces the concept of a self-controlling  machine.
  8. Computer science and engineering: This component introduces the concept of hardware, software, and operating system. Apart from this, it also discusses the programming language and tools used in Al.

Uses/Applications of Al

The potential applications of Artificial Intelligence are abundant (plentiful). They stretch  from the military for autonomous control and target identification, to the entertainment  industry for computer games and robotic pets. Let’s also not forget big establishments  dealing with huge amounts of information such as hospitals, banks, industries, and  insurances, which can use Al to predict customer behavior and detect trends.

  1. Game playing:

General game playing (GGP) and General video game playing (GVGP) is the concept and  designs for artificial intelligence programs to successfully play plenty of games. For video  games, game rules have to be either learned over multiple repetitions by artificial players  or are predefined manually in a domain-specific language and sent in advance to artificial  players. For instance, the GGP of chess, computers are programmed to play these games  using a specially designed algorithm. It was considered a necessary landmark on the way  to Artificial General Intelligence. The first commercial practice of general game-playing  technology was Zillions of Games in 1998.

  1. Speech recognition:

In speech recognition, the input is given to the computer in the form of vibrations  produced by the sound. This is done with the help of an analog to digital converter that  converts the vibrations produced by the sound into digital format.

Then, a set of complex algorithms runs on that data to recognize the speech and return a  text as a result. Depending upon the goal, the end result may vary to some extent. For  example, Google Voice typing converts spoken words into suitable text format while  personal assistants like Siri and Google Assistant take the sound as input and convert it  into both voice and text format, giving output as per the user’s requirement.

  1. Understanding natural language:

Natural language understanding is a branch of artificial intelligence that uses computer  software to take the input in the form of sentences using text or speech. It simply reduces  the gap between humans and computers allowing them to interact easily with each other.

  1. Computer vision:

Computer vision is a field of artificial intelligence (AI), which enables the computer and its  systems to get input in the form of digital images and videos and take action based on the  provided input.

  1. Expert systems:

An expert system is a computer system that mimics or even surpasses the decision-making  ability of a human expert. It is generally designed to solve complex problems by surfing  through bodies of knowledge. It is further divided into two subsystems; the knowledge  base (which represents facts and rules) and inference engine (which applies the rules to  the known facts to deduce new facts).

  1. Robotics:

Artificial intelligence (AI) in robotics is the ability of the computer or the robot to perform  multiple tasks performed by humans, which require human intelligence and discernment.  It gives robots a computer vision to navigate, sense, and calculate their reaction  accordingly For example: Robotic packaging uses various forms of Al for quicker and accurate packaging at a lower price. Likewise, Sophia which is also marked as a “social  robot” is successfully able to mimic social behavior and induce feelings of love in humans.

  1. Theorem proving:

Proving theorems requires high intelligence as many of the practical problems can be cast  in terms of theorems. If knowledge is expressed by logic, proving theorem is reasoning. It  uses various AI techniques such as heuristic search.

  1. Symbolic mathematics:

Symbolic mathematics refers to the manipulation of formulas, rather than doing  arithmetic on numeric values. It is often used in conjunction with ordinary scientific  computation as a generator of programs, used to actually do the calculations.

  1. Robotics:

Artificial intelligence (AI) in robotics is the ability of the computer or the robot to perform  multiple tasks performed by humans, which require human intelligence and discernment.  It gives robots a computer vision to navigate, sense, and calculate their reaction  accordingly For example: Robotic packaging uses various forms of Al for quicker and accurate packaging at a lower price. Likewise, Sophia which is also marked as a “social  robot” is successfully able to mimic social behavior and induce feelings of love in humans.

  1. Theorem proving:

Proving theorems requires high intelligence as many of the practical problems can be cast  in terms of theorems. If knowledge is expressed by logic, proving theorem is reasoning. It  uses various AI techniques such as heuristic search.

  1. Symbolic mathematics:

Symbolic mathematics refers to the manipulation of formulas, rather than doing  arithmetic on numeric values. It is often used in conjunction with ordinary scientific  computation as a generator of programs, used to actually do the calculations.

 

Cloud Computing

Cloud computing is the use of various services, such as software development platforms,  servers, storage, and software, over the Internet, often referred to as the “cloud”. It is  defined as a type of computing that relies on sharing computing resources rather than  having handle applications. In cloud computing, the word cloud is used to  represent “the Internet,” so the phrase cloud  computing means “a type of Internet-based  computing,” where different services – such as  servers, storage, and applications are delivered  to an organization’s computers and devices  through the Internet. Cloud computing allows  application software to be operated using  internet-enabled devices.

 

 

 

 

 

 

 

 

 

 

 

 

Types of Clouds

Clouds can be classified as public, private, and hybrid. Public cloud is made available to  the general public or a large industry group. Private cloud computing environment resides  within the boundaries of an organization and is used exclusively for the organizational  benefits Hybrid cloud is the combination of both public and private cloud. Sensitive With  this cloud organizations might run non-core applications in a public cloud, while  maintaining core applications and data in a private cloud.

Service Models of Cloud Computing

  1. IaaS (Infrastructure as a Service): In this service, computing infrastructural components like server hardware, storage, bandwidth, and other fundamental computing resources are provided through the cloud.
  2. SaaS (Software as a Service): This service includes complete software on the can access software hosted on the cloud without installing it on the user’s own computer.
  3. PaaS (Platform as a Service): It allows the user to rent virtualized servers and associated services used to run existing applications, or to design, develop, test, deploy and host applications. It provides clients with access to the basic operating software and optional  services to develop and use software applications without the need to buy and manage  the underlying computing infrastructure.

 

 

Advantages of Cloud Computing:

Some of the advantages of this technology are:

  1. Cost-efficient: It is probably the most efficient method to use, maintain and upgrade.
  2. Almost unlimited storage: Storing information in the cloud gives us almost unlimited storage capacity.
  3. Backup and recovery: Since, all the data is stored in the cloud, backing it up and restoring the same is relatively much easier than storing the same on a physical device.
  4. Automatic software integration: In the cloud, software integration is usually something that occurs automatically. It also allows us to customize the options with great ease.
  5. Easy access to information: Once the user is registered in the cloud, the user can access the information from anywhere, where there is an Internet connection.
  6. Quick deployment: Once the method of functioning is selected, the entire system can be fully functional in a matter of few minutes.

Disadvantages of Cloud Computing:

Despite its many benefits, as mentioned above, cloud computing also has its  disadvantages.

  1. Technical issues: This technology is always prone to outages and other technical issues. Even the best cloud service providers run into this kind of trouble. Despite keeping up high standards of maintenance.
  2. Security in the cloud: Storing all the sensitive information to a third-party cloud service provider could potentially put the company at great risk.
  3. Prone to Attack: Storing information in the cloud could make the company vulnerable to external threats and attacks.

Big Data

Big Data refers to complex and large data sets that have to be processed and analyzed to  uncover valuable information that can benefit businesses and organizations.  It has features like:

  1. It refers to a massive amount of data that keeps on growing exponentially with time.
  2. It is so voluminous that it cannot be processed or analyzed using conventional data processing techniques.
  3. It includes data mining, data storage, data analysis, data sharing, and data visualization.
  4. The term is an all-comprehensive one including data, data frameworks, along the tools and techniques used to process and analyze the data.

According to Gartner, the definition of Big Data- “Big data is high-volume, velocity, and  information assets that demand cost-effective, innovative forms of information processing  for enhanced insight and decision making.”

Types of Big Data

Big data can be classified as Structured, unstructured, and semi-structured.

  1. Structured: It means that data can be processed, stored, and retrieved in a fixed format. It refers to highly organized information that can be readily and seamlessly stored and accessed from a database by simple search engine algorithms.
  2. Unstructured: It refers to the data that lacks any specific form or structure whatsoever. This makes it very difficult and time-consuming to process and analyze unstructured data.
  3. Semi-structured: It relates to the data containing both the formats mentioned above, that is structured and unstructured data. To be precise, it refers to the data that although has not been classified under a particular repository (database), yet contains vital information or tags that segregate individual elements within the data.

Characteristics of Big Data

The main characteristics of big data are:

  1. Variety: It refers to the variety of data gathered from multiple sources. The variety can be structured, unstructured, or semi-structured.
  2. Velocity: It refers to the speed at which data is being created in real-time. It also comprises the rate of change, linking of incoming data sets at varying speeds, and activity bursts.
  3. Volume: Big Data indicates huge ‘volumes of data that are being generated daily from various sources like social media platforms, business processes, machines, networks, human interactions, etc.
  4. Veracity: It refers to the reliability or trustworthiness of the data. Due to the large volume of data, we have uncertainty about the validity, the accurateness of data.
  5. Value: It refers to the worth of business value of the collected data.
  6. Variability: It refers to the inconsistency of the big data and how the big data can be used and formatted.

Application Areas of Big Data

Major application of big is data is:

  1. Healthcare or Medical sector.
  2. Academia.
  3. Banking.
  4. Manufacturing.
  5. Information Technology (IT).
  6. Retail business.
  7. Transportation.

Advantages of Big Data Processing:

Some of the advantages of big data processing are:

  1. Businesses can utilize outside intelligence while taking decisions.
  2. Improved customer service.
  3. Early identification of risk to the product/services,
  4. Better operational efficiency.
  5. Big data analysis derives innovative solutions. It helps in understanding and targeting customers. It helps in optimizing business processes.

Disadvantages of Big Data Processing:

Despite its many benefits, big data processing has the following disadvantages.

  1. Traditional storage can cost a lot of money to store big data.
  2. Big data analysis is not useful in the short run. It needs to be analyzed for a longer duration to leverage its benefits.
  3. Big data analysis results are sometimes misleading.

Virtual Reality

Virtual reality (VR) is a term that expresses  computer-based simulated environments. Which can perceive as in the real world, as  well as in unreal worlds. The virtual reality environments are primarily concerned with the visual experiences, displayed either on a computer screen or through special stereoscopic displays, but some simulations include additional sensory information, such as sound through speakers or  headphones.

Virtual reality creates such a realistic artificial environment that the s/he should feel as in  the real world. Today the Virtual reality (VR) technology is applied to advance fields of  medicine, engineering, education, design, training, and entertainment.

 

 

 

 

 

 

 

 

Some of the application areas of virtual reality are:

  1. It can be used in medical studies to enable students to know the human body.
  2. It can be used in scientific research laboratories so that scientists can easily research a structure.
  3. It can be used in entertainment like games and movies to make the gaming experience more real and to allow individuals to experience adventures under extreme conditions.
  4. It can be used in driving schools as it gives a real look at roads and traffic.
  5. It can be used in military training for the soldiers to get familiar with different areas on the battlefield.

Advantages of Virtual Reality:

Some of the advantages of virtual reality are:

  1. Virtual reality creates a realistic world.
  2. It enables users to explore places.
  3. Through Virtual Reality, users can experiment with an artificial environment.
  4. Virtual Reality makes education easier and more comfortable.

Disadvantages of Virtual Reality:

Some of the disadvantages of virtual reality are:

  1. The equipment used in virtual reality are very expensive.
  2. It consists of complex technology.
  3. In virtual reality environment we can’t move by our own like in the real world.

 

e-Commerce, e-Medicine, e-Governance

e-Commerce

Electronic commerce (e-Commerce) is a process of buying and selling or exchanging  products, services, and information using electronic media. There are many definitions for  electronic commerce that include elements of electronic transactions and the buying and  selling of goods and services online.

e-Commerce is a modern business methodology that addresses the needs of  organizations, merchants, and consumers to cut costs while improving the quality of  manufactured goods, services and increasing the speed of service delivery. More commonly, e-commerce is associated with the buying and selling of products, and  services via computer networks. The main platforms of e-commerce remain the Internet, e-mail, fax, telephone orders.

Classification of e-Commerce

  1. B2B (Business to Business) Sells products or services to other businesses. e.g. www.freemarkets.com
  2. B2C (Business to Consumer) Sells products or services directly to consumers. eg.. www.amazon.com, www.yahoo.com.
  3. C2B (Consumer to Business) Consumer fixes a price on their own, which businesses accept or decline, e.g., www.priceline.com
  4. C2C (Consumer to Consumer) Consumer sells directly to other consumer. e.g. www.ebay.com

Advantage of e-Commerce

Some of the advantages of e-commerce are:

  1. It enables more individuals to work at home, and to do less traveling for shopping, resulting in less traffic on the roads, and lower air pollution.
  2. It allows some merchandise to be sold at lower prices, benefiting less affluent people.
  3. It enables people in Third World countries and rural areas to enjoy products and services which otherwise are not available to them.
  4. Facilitates delivery of public services at a reduced cost, increases effectiveness, and/or improves quality.
  5. It enables consumers to shop or do other transactions 24 hours a day, all year round from almost any location.
  6. It provides consumers with more selections or choices.
  7. It provides consumers with less expensive products and services by allowing them to shop in many places and conduct quick comparisons.
  8. It allows quick delivery of products and services, especially with digitized products. 9. Consumers can receive relevant and detailed information in seconds, rather than in days or weeks walk-around to search a product.
  9. It makes it possible to participate in virtual auctions. It allows consumers to interact with other consumers in electronic communities and exchange ideas as well as compare price-tag.
  10. It facilitates competition, as a result of substantial discounts.
  11. It expands the marketplace to national and international markets. It decreases the cost of creating processing, distributing, storing, and retrieving paper based information.

Disadvantage of e-Commerce

  1. Businesses often calculate return on investment numbers before committing to any new technology. Costs, which are a function of technology, can change dramatically during even short-lived e-commerce implementation projects.
  2. Many companies have had trouble recruiting and retaining employees with the technological, design, and business process skills needed to create an effective e commerce presence.
  3. The difficulty of integrating existing databases and transaction-processing software designed for traditional commerce into the software that enables e-commerce.
  4. Many businesses face cultural and legal impediment (barrier) to e-commerce. Some consumers are still fearful (afraid) of sending their credit card numbers over the  Internet.
  5. Consumers are simply resistant to change and are uncomfortable viewing merchandise on a computer screen rather than in person.

e-Medicine

e-Medicine is an online clinical medical knowledge database, which is an approach to  providing health care service to a large number of people spread in different locations. It is mainly beneficial for the people of rural areas with limited or no medical facilities. e Medicine is targeted to provide high-quality healthcare service. It minimizes the time and  cost required for treatment.

e-Medicine usually contains up-to-date, searchable, peer-reviewed medical journals,  online physician reference textbooks, and a complete article database on medical  specialties. This Internet medical library and clinical knowledge base are available to  physicians, medical students, nurses, other health professionals, and patients.

With the use of e-Medicine, doctors and patients who are physically apart can connect so  that patients can share his/her problem with the doctor, and the doctor can suggest  treatment or any test required.

e-Governance

e-Governance is the use of information and communication technology (ICT) to enhance  the access and delivery of government services to benefit citizens, business partners, and  employees. It transforms the traditional government using ICT to make it clear, effective,  and accountable. However, it doesn’t mean that putting more computers on the desks of  government officials is e governance.

 

 

 

 

 

 

 

 

 

 

Governance is more than just a government website on the Internet. Political, social, economic, and technological aspects determine e-governance. It establishes a relationship between government officials and citizens, providing greater access to government information and services by making the government  accessible online, promoting citizen participation by enabling citizens to interact more conveniently with government officials, such as by  requesting government service and filing required documents through the website,  increasing government accountability by making its operations more transparent, thereby  reducing the opportunities for corruption, and supporting development goals by providing  business, rural and traditionally underserved communities with information,  opportunities, and communications capabilities.

For example,

https://www.nepal.gov.np/, https://www.moe.gov.np/, https://www.moha.gov.np/

Objectives of e-Governance

Some of the objectives of e-Governance are:

⮚ E-Governance refers to the provision of online public services to citizens and  businesses.

⮚ Services for citizens include the registration to government services such as health  care, education, or employment benefits.

⮚ For businesses, E-Governance services can take the form of online alerts for public  procurements or funding opportunities as well as information and support on  applicable legislation in a given sector.

⮚ E-Governance helps to cut down their administrative costs, speed up procedures  and therefore increase efficiency and reactivity.

⮚ It could improve and accelerate administrative efficiency.

Challenges of implementing e-Governance 

The key challenges of implementing E-Governance mainly in developing countries like  Nepal are

⮚ High-speed infrastructure to access the Internet is required.

⮚ Creating trust and transparency of successful delivery of E-Governance service.

⮚ The digital divide exists in developing countries. All the citizens may not have ICT knowledge.

⮚ Network security and protection against viruses, spam, unwanted attacks, etc.

⮚ Online privacy.

⮚ All the citizens may not have access to computing resources.

Mobile Computing

Mobile computing is a generic term describing one’s ability to use technology while moving  as opposed to portable which is only practical for use while deployed in a stationary  configuration. A mobile computing device is created using mobile components, such as  mobile hardware and software. Mobile computing devices are portable devices capable of  operating executing, providing services and applications like a computing device. It is a  computing device used in transit. Users can access data and information from wherever  they are.

Many types of mobile computers have been introduced since the 1990s, including a  wearable computer, PDA, enterprise digital assistant, smartphone, UMPC (Ultra-mobile  PC), Tablet PC.

 

 

 

 

 

 

 

 

Features of Mobile Computing Device

Features of Mobile Computing devices are

⮚ It is a portable device that can be used during mobility.

⮚ It has limited processing and storage capability.

⮚ It includes mobile communication, mobile hardware, and mobile software.

⮚ It usually contains a touch screen for providing input.

⮚ It contains an on-screen or virtual keyboard for proving text inputs. However, an  external keyboard can be connected by using the USB port, infrared, or Bluetooth.

⮚ It contains a camera, speaker, and microphone.

⮚ It contains handwriting recognizing software.

⮚ Most mobile computing devices contain a memory card slot to expand the storage  capacity.

⮚ It has wireless connectivity such as Bluetooth, Wi-Fi to connect the Internet or with  other computing devices as well as a wired connection through the USB port  connectivity services like need either Wi-Fi.

⮚ The most mobile computing device can synchronize their data with applications on  users’ computers.

⮚ It can be used for cloud computing and remote access.

⮚ It uses a mobile computing operating system such as Android, iOS, Windows Mobile  OS, Palm OS.

⮚ It can include GPS (Global Positioning System) receiver for navigation.

Advantages of Mobile Computing

Advantages of mobile technology are:

⮚ It enables users to work from any location at any time.

⮚ It saves time for accessing data and information.

⮚ It helps to increase the productivity of users reducing the time and cost.

⮚ It has made research easier.

⮚ It is one of the major handheld sources of entertainment of users at present.

⮚ Nowadays, Business processes are easily available through secured mobile  connections.

⮚ It is portable.

⮚ It supports cloud computing.

⮚ It provides remote access to the organizational data from any location.

⮚ It is an independent platform. It can be accessed from any hardware or software.

Disadvantages of Mobile Technology

⮚ Mobile technology requires faster and quality or GPRS or 3G or 4G connectivity.

⮚ It has security concerns; most wireless connectivity is unsafe.

⮚ Large power consumption is due to the use of batteries continuously and they do  not tend to last long.

⮚ The danger of misrepresentation i.e., credential

⮚ Extensive use of mobile devices results in health problems.

Internet of Things (IoT)

Internet of things (IoT) is the network of physical devices, vehicles, home appliances, and  other items embedded with electronics, software, sensors, actuators, and connectivity,  which enables these things to connect, collect and exchange data.

The Internet of Things (IoT) is a system of interrelated computing devices, mechanical and  digital machines, objects, animals, or people that are provided with unique identifiers  (UIDs) and the ability to transfer data over a network without requiring human-to-human  or human to-computer interaction.

By combining these connected devices with automated systems, it is possible to “gather information, analyse it and create an action” to help someone with a particular task or  learn from a process. A thing in the internet of things can be a person with a heart monitor  implant, an animal with a biochip transponder, an automobile that has built-in sensors to  alert the driver when tire pressure is low, or any other natural or man-made object that  can be assigned an Internet Protocol (IP) address and can transfer data over a network.

Advantages of IoT:

⮚ It automates tasks and helps to improve the quality of a business’s services and  reduces.

⮚ It helps to operate the business operations more efficiently, better understand  customers to deliver enhanced customer service.

⮚ It supports to improve decision-making and increases the value of the business.

⮚ It has the ability to access information from anywhere at any time on any device.

⮚ It provides improved communication between connected electronic devices.

⮚ Transferring data packets over a connected network saves time, effort, and money.

Disadvantages of IoT:

⮚ As the number of connected devices increases and more information is shared  between devices, the chances of the system being attacked also increases.

⮚ Organizations may eventually have to deal with massive numbers (maybe even  millions) of IoT devices, and collecting and managing the data from all those devices  will be challenging.

⮚ If there’s a bug in the system, every connected device will likely become corrupted.

⮚ Since there’s no international standard of compatibility for IoT, it’s difficult for  devices from different manufacturers to communicate with each other.

e-Learning

e-Learning applies to a learning/teaching or understanding about a topic with the help of  Information and Communication Technology. e-Learning allows us to learn anywhere and  usually at any time, as long as we have a properly configured computer, networks, devices,  etc. e-Learning can be CD ROM-based, Network-based, Intranet-based, or Internet-based.

 

 

 

 

 

 

 

 

 

 

 

 

 

It can include text, video, audio, animation, and virtual environments. It can be a very rich  learning experience that can even go beyond the lecture-based crowded classroom. It’s a  self paced, hands-on learning experience. The quality of the electronic-based training, as  in every form of training, is in its content and its delivery. However, e-learning can suffer  from many of the same pitfalls (drawbacks) as classroom training, such as boring slides,  monotonous speech, and little opportunity for interaction. The beauty of e-learning is that  new software that allows the creation of very effective learning environments that can  overcome the classic material being used in traditional learning. For example,  http://www.howstuffworks.com/

The concept of e-learning has become more popular throughout the globe because of the  Covid 19 pandemic. The tools like Zoom, Microsoft Teams, Cisco Webex Meetings, Google  Meet are also used for learning purposes.

 m-Commerce

m-Commerce (mobile commerce) is the buying and selling of goods and services through  wireless technology i.e., handheld devices such as cellular telephones and personal digital  assistants (PDAs).

 

Industries affected by m-commerce include:

⮚ Financial services, including mobile banking (when customers use their handheld  devices to access their accounts and pay their bills), as well as brokerage services (in  which stock quotes can be displayed and trading conducted from the same handheld  device).

⮚ Telecommunications, in which service changes, bill payment, and account reviews  can all be conducted from the same handheld device.

⮚ Service/retail as consumers is given the ability to place and pay for orders on the fly.

⮚ Information services, which include the delivery of entertainment, financial news,  sports figures, and traffic updates to a single mobile device.

 

Social Media

Social Media is a computer-based technology that is used for the creation and sharing of  information, ideas, interests, and other forms of expression via virtual communities and  networks. Facebook, Twitter, YouTube are popular social media tools.

 

Advantages of Social Media:

⮚ It provides easier and faster way to communicate.

⮚ It provides worldwide real-time sharing of news and educational content.

⮚ It is one of the effective marketing/advertising tools at present.

⮚ It is the major source of entertainment at present.

⮚ It helps to understand better the latest trends and events.

 

Disadvantages of Social Media:

⮚ It has increased cyber-crime.

⮚ Productive times is lost due to time waster in social media.

⮚ It is a common tool at present for spreading rumours and fake news/updates.

⮚ It has a high risk of fraud.

⮚ It has decreased privacy.

 

Software Project Concept

Program:

The program is a sequence of instructions. It is the set or collection of instructions.

Instruction:

An instruction is a command given to the computer to perform a certain specified operation on given  data.

Software:

A set of programs written for a computer to perform a particular task is called software or the logical  components or set of procedures to routines or instructions are called software is the interface between  the computer and the user. It is a group of commands that tells the computer what to do and how to do  it.

Project:

A project is a well-defined task, which is a collection of several operations done in order to achieve a goal  (for example, software development and delivery).

Software Project Concept:

A software project is the complete procedure of software development from requirement identification  to testing and maintenance, carried out according to the execution methodologies, in a specified period  of time and budget in order to achieve intended software product.

Software Development Process

⮚ Software development process defines a sequence of tasks that must be carried out to build new software.

⮚ It groups the development activities into a sequence of phases.

⮚ A phase in sequence can only commence on the previous phase has been completed.

⮚ A report is produced at the end of each phase, describing what has been achieved and outlining  the plan for the next phase.

 

Fundamental activities for the software development process are

  1. Software Specification: The functionality or software and constraints on its operations must defined.
  2. Software design and implementation: The software to meet the specifications must produce.
  3. Software validation: The software must be validated to ensure that it does what the customer wants.
  4. Software evolution: The software must evolve to meet changing customer needs.

System Development Life Cycle (SDLC)

System:

System is a set of interacting or interdependent components forming an integrated whole. A system can  be described as a set of objects joined together for a common objective.

Development:

It is the process of step by step changing or growing of any program and system.

Information System:

Information system is a system which processes supplied/collected data and generates information that  can be used for decision making at different levels.

 

SDLC

SDLC (Software/System Development Life Cycle) is an organized way to develop a software/system.  System Development Phase or System Development Life Cycle or Software Development Life Cycle (SDLC)  is a methodology used to develop, maintain, and replace software/information systems.

⮚ It is a systematic process of developing any software. It helps in establishing a system, or software  or project, or plan. It gives an overall list of processes and sub-processes required for developing a  system.

⮚ SDLC consists of a set of development activities that have a prescribed order. It is the development  of software in chronological order.

System Development Life Cycle (SDLC), which is also known as Application Development Life Cycle, is a  term used in system that describes the process of planning, creating, testing and deploying an information  system.

Importance and the necessity of SDLC

  1. It helps to determine the needs of the user.
  2. It supports constant communication between the developer and the user.
  3. SDLC helps for easy identification of missing requirements.
  4. It ensures that the software meets the needs of its users.
  5. It supports proper analysis and design of the software.
  6. It ensures proper development and testing.
  7. Proper documentation support for future upgrade and maintenance.
  8. It provides flexibility for adding features even after the software is developed.

 

SDLC Phases

The different phases of SDLC are as follows:

  1. System Study or Preliminary Investigation and Feasibility study.
  2. System analysis or Determination of system requirements.
  3. System design.
  4. System development or development of software.
  5. System Testing.
  6. System Implementation.
  7. System Maintenance and Reviews or Evaluation.

 

  1. System study:

A system is intended to meet the needs of an organization. Thus the first step in the design is to specify these needs or requirements. The top manager of the organization takes the basic decision to use a computer based (information) system for managing the organization.

During this phase, the development team focuses on completing three tasks:

– Survey the system by collecting the inputs from various sources.

– Analyzing the current system (manual or automated) in depth and developing possible solutions to the problem.

– Selecting to the best solution and defining its function with a feasibility study.

  1. System analysis:

System analysis is the dissection of a system into its component pieces to study how those  component pieces interact and work.

⮚ System analysis is a term that collectively describes the early phases of development.

⮚ It is defined as those phases and activities that focus on the business problem, independent  of technology.

In this stage, the development team once again goes to the organization and studies very minutely  to collect all the drawbacks and details of information from the users, management and data  processing personnel.

Then the system analyst analyzes the information and proposes the following specifications.

  1.  Goals and objectives of the proposed system.
  2. Fundamental actions that must take place in the software.
  3.  Outputs to be produced.
  4. Inputs to be used.
  5. Processes to be performed.
  6. Interfaces to be provided.
  7.  Performance requirements to be met.
  8.  Organizational and other constraints’ to be met.

 

Feasibility study:

Feasibility study is the most important activity in the system analysis phase. It analyses the  proposed system from different aspects so that it makes us clear that how practical or beneficial  the system will be to the organization. So it tells us whether the system is feasible to design nor  not.

Need of feasibility study

⮚  It determines whether the system meets the goal of the clients or not.

⮚  It determines the strength and limitations before starting to develop the system.

⮚  It focuses on the boundary of the system’s outline.

⮚  It suggests new opportunities through the investigations process.

⮚  It provide quality information for decision making.

⮚  To provide documentation of the investigated system.

The different levels of feasibility study are as:

1) Economic feasibility: it concerns with cost effectiveness of the system. The main objective of  economic feasibility is to calculate approximate cost-both the development cost and the  operational cost and the benefits from the system.

2) Technical feasibility: it concerns with the availability of the hardware, software and the  support equipment for the complete development of the system.

3) Operational feasibility: it concerns with smooth operation of the system. It is all about the  problems that may occur during operation of the system after its development.

 4) Behavior feasibility: it concerns with behavior of the users and the society towards the new  system. Generally, most of the traditional employees are not easily ready to upgrade them  with the new system.

5) Social Feasibility: It is a determination of whether a proposed system will be acceptable to the  people or not.

6) Management Feasibility: It is a determination of whether a proposed system will be  acceptable to management or not.

7) Schedule(Time) feasibility: it is the process of splitting project into tasks and estimate time  and resources required to complete each task. It determines the deadline to complete a  system and schedule the task accordingly.

8) Legal feasibility: it concerns with legal issue of the system. If the system is illegal then the  system designing is meaningless. Everything is measured whether it is legal or illegal. It  considers copyright law, foreign law, foreign trade, tax, etc.

 

System design:

The next step is to develop the logical design of the system. During this phase, the logic of the  system, namely, the information requirement of users, and use this to find the necessary  database.

System design is concerned with the design of new system. It involves designing of various things  such as output design, input design, files design, processing and general program design etc.

Logical Design: Theoretically designing of the system is called logical design. The system could be  designed on the basis of the requirements.

Physical Design: The conversion of logical design into designing tools and techniques is called  physical design. It is more detail and complex jobs describing the solution of the problem. It uses  algorithms, flowcharts, pseudo codes, decision table, decision tree, E-R diagram, Data flow  diagram etc.

Theoretically designing of the system is called logical design. The system could be designed on the  basis of the requirements.

The conversion of logical design into designing tools and techniques is called physical design. It is  more detail and complex jobs describing the solution of the problem.

To create the logical design different kinds of tools are used.

⮚ Algorithm                     ⮚ Decision Table

⮚ Flowchart                     ⮚ Decision Tree

⮚ Pseudo codes               ⮚ Data flow diagram

⮚ Structured English         ⮚ E-R diagram

  1. System development: after designing a logical diagram of a system then next step is to convert into program. This process is called system development. Flowchart, algorithm, Pseudo code, etc. are the outlines the procedures for taking the input data and processing it into usable output.
  2. System testing: it is an investigation conducted to provide stakeholders with information about the quality of the product or service under test. System testing also provides an objective, independent view of the software to allow the business to appreciate and understand the risks of  software implementation.
  3. Implementation: implementation involves testing the installed system, converting from the old system to the new one and training the users. This phase consists of implementation of the system into a production environment, and resolution of the problem identified in testing phase.
  4. Maintenance and review: it begins after the system is implemented. Like any system, there is an ageing process that requires periodic maintenance of hardware and software. The content of the review will include objectives met, cost, performance, standards and recommendation.

 

System Analyst:

System analyst is person who is involved in analyzing, designing, implementing and evaluating computer based information systems to support the decision making activities and operations of an organization.

A good system analyst is:

  1. Understanding and commitment to the organization
  2. People skills
  3. Conceptual skills and
  4. Technical skills

A system analyst is information specialist. To be a system analyst, one must be knowledgeable  about the technical aspects of analyzing, designing and implementing computer-based systems.

A system analyst is a person who conducts a study, identifies activities and objectives and  determines a procedure to achieve the objectives.

Designing and implementing systems to suit organizational needs are the functions of the systems analyst.  One plays a major role in seeing the business benefits from computer technology.  An analyst is a person with unique skills. One uses these skills to coordinate the efforts of different types  of persons in an organization to achieve business goals.

The characteristics (attributes) of system analyst are as follows:

  1. Knowledge of organization.
  2. Technical Knowledge.
  3. Interpersonal Communication Skill.
  4. Character and Ethics.
  5. Problem-Solving Skill.

               ➔ Defining the problem

               ➔ Analyzing the problem

               ➔ Evaluating many alternatives

              ➔ Choosing the best alternatives

              ➔ System analysis and Design skills

The roles of system analyst area as follows:

  1. Change event
  2. Investigator and event
  3. Architect
  4. Psychologist
  5. Motivator
  6. Intermediary and diplomat

Duties and Responsibilities of System Analyst

  1. Defining Requirements
  2. Prioritizing Requirements
  3. Analysis and Evaluation
  4. Solving Problems
  5. Drawing up functional specification
  6. Designing System
  7. Evaluating System

 

SDLC (System Development Life Cycle):

Describes in Details:

  1. System study or Preliminary Investigation :

In this stage, the development team studies the present and identifies the drawbacks. They  interact with the users and gathers information from different sources to recognize the problems  of present system.

 

  1. System Analysis:

In this stage, the development team once again goes to the organization and studies very  minutely to collect all the drawbacks and details of information from the users, management  and data processing personnel.

Then the system analyst analyzes the information and proposes the following specifications.

  1.  Goals and objectives of the proposed system.
  2. Fundamental actions that must take place in the software.
  3. Outputs to be produced.
  4. Inputs to be used.
  5. Processes to be performed.
  6. Interfaces to be provided.
  7.  Performance requirements to be met.
  8. Organizational and other constraints’ to be met.

 

  1. Feasibility study:

Feasibility study is the most important activity in the system analysis phase. It analyses the proposed  system from different aspects so that it makes us clear that how practical or beneficial the system will  be to the organization. So it tells us whether the system is feasible to design nor not. Thus it is  necessary before system design.

The different levels of feasibility study are as:

  1. Economic feasibility: it concerns with cost effectiveness of the system. The main objective of economic feasibility is to calculate approximate cost-both the development cost and the operational cost and the benefits from the system.
  2. Technical feasibility: it concerns with the availability of the hardware, software and the support equipment for the complete development of the system.
  3. Operational feasibility: it concerns with smooth operation of the system. It is all about the problems that may occur during operation of the system after its development.
  4. Behavior feasibility: it concerns with behavior of the users and the society towards the new system. Generally, most of the traditional employees are not easily ready to upgrade them with the new system.
  5. Schedule feasibility: it is the process of splitting project into tasks and estimate time and resources required to complete each task. It determines the deadline to complete a system and schedule the task accordingly.
  6. Legal feasibility: it concerns with legal issue of the system. If the system is illegal then the system designing is meaningless. Everything is measured whether it is legal or illegal. It considers copyright law, foreign law, foreign trade, tax, etc.

 

  1. System Design:

System design is concerned with the design of new system. It involves designing of various things  such as output design, input design, files design, processing and general program design etc. This  state consists of logical design and physical design of the system.

      a. Logical Design: Theoretically designing of the system is called logical design. The system could be designed on the basis of the requirements.

      b. Physical Design: The conversion of logical design into designing tools and techniques is called physical design. It is more detail and complex jobs describing the solution of the problem. It uses algorithms, flowcharts, pseudo codes, decision table, decision  tree, E-R diagram, Data flow diagram etc.

 

System Design Tools:

The tools which are used to design the system in known as system design tools. They are used during  system analysis and design phase of the system development

        a. Algorithm: An algorithm is defined as the finite sequences of instructions for solving a problem

        b. Flowchart: A flowchart is the pictorial representation of an algorithm which is classified into two types’ system flowchart and program flowchart. The different symbols used in system flowchart are defined below:

 

             I) System flowchart:

System flowchart describes the internal architecture of a system that describes how data are  moved inside the internal components of a system.

           II) Program flowchart:

Program flowchart describes to solve the application types of real world problem.

       c. DFD (Data flow diagram):

DFD is the logical diagram to describe the flow of data inside the components of system. It is easier  to understand or grasp when being explained and most important to all, it is much more precise  and less ambiguous than a narrative one. The main components are: process, data store, data  flow, external entities.

 

    d. Context Diagram:

It is combination of many other DFD. It is the highest level of DFD. It contains only one process, representing the entire system, the process is given the symbol circle. The external entities are denoted by rectangle. The flow of data is described by arrow.

 

   e. ER (Entity Relationship) diagram:

The E-R diagram is an overall logical structure of a database that can be expressed graphically. It  was developed to facilitated database design and the simplicity and pictorial clarity of this  diagramming technique have done great help in the designing part of database. The main  components are attributes, entities and relationship.

    The diagrammatic representation of entities attributes and their relationship is described by E-R  diagram.

 

 

E-R diagram

 

     f. Case diagram:

Computer aided software engineering tool is automatic computer based program that helps for  software engineering and SDLC process. It is very fast and effective tools for the development of  big scale software. It helps in analysis, design, implementation, testing and maintenance.

    g. UML:

Unified Modeling Language is a standardized general purpose modeling language in the field of  object-oriented software engineering. The standard is managed, and was created by, the object  management group. UML includes a set of graphic notation techniques to create visual models of  object-oriented software.

   h. Decision Table:

A table allows us to identify the exact course of actions for given conditions in tabular form.  Decision table is a tabular representation of the logic of a decision, which specifies the possible  conditions for the decision and the resulting actions.

Parts of Decision Table.

 

     i. Decision Tree:

Decision tree is also a technique to represent condition and actions in a diagrammatic form in  computer. A decision tree allows us to identify the exact course of actions for given conditions in  tree structures.

    j. Pseudo Code:

It is a kind algorithm for solving a problem and the instructions of pseudo code are written by  using English phrase and mathematical expressions.

 

         5. System Development:

Programmers begin to develop the program by using a suitable High Level Language. In System  developments following processes are done.

  1.  Convert logical structure in to programs in programming language.
  2. Database is created.
  3.  User operational documents are written.
  4. Users are trained.
  5. The internal documentation of a system is prepared.

 

  1. System testing:

It is an investigation conducted to provide stakeholders with information about the quality of the  product or service under test. System testing also provides an objective, independent view of the  software to allow the business to appreciate and understand the risks of software  implementation.

  1. 1. White box testing: white box testing of software is predicted on close examination of procedural Logical path through the software and collaborations between components are tested by providing test case that exercises specific sets of conditions or loops. It is used when the tester  has access it the internal data structures and algorithms including the code that implement these.
  2. Black box testing: black box testing treats the software as a black box without any knowledge of internal implementation. Black box testing methods include: equivalence partitioning, boundary value analysis, specification based testing, etc. it is also called functional testing because it tests whether a system is functioning or not.

 

  1. Implementation:

Implementation involves testing the installed system, converting from the old system to the new  one and training the users. This phase consists of implementation of the system into a production  environment, and resolution of the problem identified in testing phase.

Types of Implementation:

  1. Direct Conversion: All users stop using old system at the same time and then begin using the new. This option is very fast, less costly but more risky.
  2. Parallel conversion: Users continue to use old system while an increasing amount of data is processed through the new system. Both the systems operate at the same time until the new system works smoothly. This option is costly but safe approach.
  3. Phased conversion: Users start using the new system component by component. This option works only for systems that can be compartmentalized. This option is safe and conservative approach.
  4. Pilot conversion: Personnel in a single pilot-site use the new system, and then the entire organization makes the switch. Although this option may take more time, it is very useful in big organizations where a large number of people make the conversion.

 

  1. Maintenance and review:

It begins after the system is implemented. Like any system, there is an ageing process that requires  periodic maintenance of hardware and software. The content of the review will include objectives  met, cost, performance, standards and recommendation.

Types of Maintenance

  1. Corrective Maintenance: it corrects the run time errors during the operation.
  2. Adaptive Maintenance: It modifies or adds new features in the system.
  3. Perfective Maintenance: It makes the system perfect, up-to-date and improve the life of the system.

 

System Development Model:

During software development or system development for organizations, a common process framework  is established, defining a small number of framework activities that are applicable to all software projects,  regardless of their size complexity. For a better paradigm of a software process, several models are  designed and implemented. It is the choice of system analyst which model is used to achieve the goal.  The different models are:

  1. Waterfall model:

Waterfall model is a systematic and sequential model to develop software that begins with  requirements analysis to operation and maintenance. It describes a development method that is  linear and sequential. It is an oldest type of model for software engineering. The fundamental  processes of waterfall model are as follows:

 

  1. Requirements analysis and definition: it is the first stage of waterfall model. In this stage, the developer should identify the actual requirements of the given problem.
  2. System design: in this stage the systems design process partition the requirements to either hardware or software systems.
  3. System Development: During this stage, the system design is converting into development.
  4. Integration and system Testing: The individual program units or programs are integrated and tested as a complete system to ensure that the software requirements have been met.
  5. Operation and maintenance: in this stage, the system is installed to the desire location. The maintenance involves correcting errors which were not discovered in earlier stages of the life cycle, improving the implementation of system units and enhancing the system’s service as  new requirements are discovered.

Advantages:

  1. It is simple model suitable for small size project.
  2. It is less expensive.

Disadvantages:

  1. It has no back track mechanism.
  2. It is not suitable for large size project.
  3. It has lack of proper documentation.
  1. Prototyping model:

It is the iterative process of system development which is more appropriate for developing new  system where there is no clear idea of requirements, inputs and outputs. These systems are then  continuously modified until the user is satisfied.

 

  1. Identify the user needs: the system analyst interviews the user to obtain an idea of what is required from the system.
  2. Develop a prototype: the system analyst, working uses one or more prototyping tools to develop a prototype.
  3. Determine if prototype is acceptable: the analyst educates the user in prototype use and provides an opportunity from becoming familiar with the system.
  4. Use the prototype: the prototype becomes the operational system.

Advantages:

  1. The users get a better understanding of the system being developed.
  2. Errors can be detected much earlier as the system is made side by side.
  3. Quicker user feedback is an available leading to better solutions of the system.

Disadvantages:

  1. It leads to implementing and repairing way of building systems.
  2. It may increase the complexity of the system as scope of the system may expand beyond original plans.
  1. Spiral system:

In this model, process is represented as a spiral rather than as a sequence of activities with  backtracking. It is a software development process combining the elements of both waterfall and  prototyping model. The spiral model is intended for large, expensive and complicated projects. This is the most realistic model because it uses multidimensional approach for software  development. The activities in SDLC are organized in a spiral structure that has many cycles which  starts from the center of the spiral and goes out as it program and becomes matured. Each of the  complete spiral segment is divided into four different attributes knows as:

 

  1. Planning: the project is reviewed and a decision made whether to continue with a further loop of the spiral. If it is decided to continue, plans are drawn up for the next phase of the project.
  2. Risk analysis: for each of the identified project risks, a detailed analysis is carried out. Steps are taken to reduce the risk. For example, if there is a risk that the requirements are inappropriate, a prototype system may be developed.
  3. Software development (Engineering): after risk evaluation, a development model for the system is chosen.
  4. User evaluation: specific objectives for the phase of the project are defined by the evaluation of users. Constraints on the process and the product are identified. And a detailed management plan is drawn up.

Advantages:

  1. It emphasizes quality.
  2. It is effective for regular updating the system.
  3. It emphasizes risk reduction techniques.

Disadvantages:

  1. Full scale risk analysis requires training, skill so it may appropriate only for large  projects.
  2. This model is relatively untested.

 

  1. Agile Software Development:

     

It is a software development method based on iterative and incremental development in which  requirement and solutions evolve through collaboration between self-organizing, cross functional  teams.

 

 

Documentation:

Documentation is the process of collecting, organizing, storing and maintaining a complete record of  system and other documents used or prepared during the different phases of the life cycle of the system. It consists of the detail description about software requirements specification, feasibility report, and  software designing report, description about input-output and processing mechanism, source code,  comments, manuals, guides and effective help desk.

Types of Documentation

  1. Internal Documentation: It is used by the system analyst and the programmer during development process. It is very useful for the development period and also useful in future for the modification and maintenance for the software.
  2. External Documentation: It is used by the user during the running time of the software. It includes the detail description in terms of manuals, guide and help files. It is mainly deals with how to effective use of software.