SlideShare a Scribd company logo
A Machine Learning Approach to
Programming
Agenda
 Overview of current methodologies.
 Disadvantages of current methodologies.
 MLAP: What, Why, How?
 MLAP: An example.
 MLAP: Design
 MLAP: Advantages/Disadvantages
 Scope
 Conclusion
Overview of software methodologies
 SSAD: Here programming is procedural. The
mapping between a real life object n its
representation in a program is ambiguous.
 OOAD: Here real life objects are mapped as
classes in a program. Each class consists of
attributes n methods.
Disadvantages of other Methodologies
 Testing n error fixing takes a very long time.
 Enhancements are based on user feedback n
usage. Collecting this information is a
cumbersome process.
 Usability issues are not given enough importance
because of lack of information.
 Optimization is difficult because of inadequate
information.
What is MLAP?
In MLAP, a program encodes information about itself i.e. it is
aware of its own design.
It is a natural consequence of the Object Oriented Methodology
wherein real-life objects are represented as classes. In MLAP,
each class is also aware of its construction n purpose.
This is an effort to take programming to a higher level wherein the
program can fix its errors on its own n provide a better user
experience i.e. minor defects r fixed by the program n the
program helps a user make the best use of the application n
runs based on the user’s preferences.
MLAP- An Example
class A
{ private:
attribute1;
attribute2;
classinfo; //encodes functionality details
//of class A
public:
method1();
method2();
getclassinfo(); //retrieves details of class A
};
MLAP- An Example
Each class contains information about itself which
is encoded as an attribute.
This information can be stored in predicates to
record functionality.
Design
EBL Engine
Subsystem Subsystem Subsystem
Knowledge Base
Expert System for Error
Processing n Optimization
Application
Design
 EBL Engine: This will learn how it is used in the
execution environment. The engine uses
Explanation Based Learning. Domain theory will
be specific to the application.
 Knowledge Base: This will store domain theory n
any rules that the EBL generates.
 ES for Error Processing n Optimization: This can
be added for real-time error processing n fixing.
Advantages
 Error fixing: Recording error info (steps
traversed at the time of the error, point in code
where error took place), real-time error
processing will reduce time required to fix
defects immensely.
 Functionality/design enhancements: Recording
code coverage n class usage for optimization n
accurate error information will speed up
development of new releases.
Advantages
 Usability: Various aspects of usage will be
recorded by different users for usability studies.
 Customization based on user preferences: UI
preferences ,order of functions, batch processing
based on user preferences n providing help
whenever a user needs it will provide for a better
user experience.
Disadvantages
 Higher memory usage.
 An enhancement to a Basic implementation.
 Higher costs.
 Performance overhead due to additional
functions.
Scope
 Project is still in its implementation stage.
 The idea is to build an EBL engine with a
knowledge base to support the application.
 An expert system shell can be developed at a
later stage for error processing.
Conclusion
 In MLAP, a program encodes information about
itself n can enhance its own performance.
 It can improve n speed up the process of error
fixing.
 It is aware of its functionality n design and works
towards its enhancement.
 It can provide a better user experience.
References
 Artificial Intelligence-”Nilsson”
 Expert Systems-”Peter Jackson”

More Related Content

DOCX
Chapter 2(1)
PPTX
Machine Learning in Software Engineering
PDF
Fixing the program my computer learned: End-user debugging of machine-learned...
PPTX
COMPUTING AND PROGRAMMING FUNDAMENTAL.pptx
PPTX
COMPUTING AND PROGRAMMING FUNDAMENTAL.pptx
PDF
Introduction to computer programming.pdf
PPTX
Unit no_1.pptx
PPTX
Algorithm and pseudo codes
Chapter 2(1)
Machine Learning in Software Engineering
Fixing the program my computer learned: End-user debugging of machine-learned...
COMPUTING AND PROGRAMMING FUNDAMENTAL.pptx
COMPUTING AND PROGRAMMING FUNDAMENTAL.pptx
Introduction to computer programming.pdf
Unit no_1.pptx
Algorithm and pseudo codes

Similar to MLApproachToProgramming.ppt (20)

PPTX
Principles of programming
PPTX
Module 1 python.pptx
PPTX
Design programing logic powor point.pptx
PPT
Problem solving
PPTX
introduction to problem solving and programming
PDF
Procedural Programming Unleashing Algorithmic Power Theophilus Edet
PDF
Agility in Software 2.0 - Notebook Interfaces and MLOps with Buttresses and R...
PPTX
C LANGUAGE-FLOWCHARTS,PSEUDOCODE,ALGORITHMS APPROCHES
PPTX
22091f0 did sh KC da se fj006 anusha.pptx
PPT
Csc 130 class 2 problem analysis and flow charts(2)
PPTX
Programming C ppt for learning foundations
PDF
Problem solving methodology
PDF
Learning & using new technology
PDF
Learning & using new technology
PPT
Problem Solving and Algorithm Design in Computer Science
PPTX
Programming language paradigms
PPTX
asic computer is an electronic device that can receive, store, process, and o...
PPTX
extreme programming
PDF
Research-Based Innovation with Industry: Project Experience and Lessons Learned
PPTX
Productivity mdd mdb_code_centric
Principles of programming
Module 1 python.pptx
Design programing logic powor point.pptx
Problem solving
introduction to problem solving and programming
Procedural Programming Unleashing Algorithmic Power Theophilus Edet
Agility in Software 2.0 - Notebook Interfaces and MLOps with Buttresses and R...
C LANGUAGE-FLOWCHARTS,PSEUDOCODE,ALGORITHMS APPROCHES
22091f0 did sh KC da se fj006 anusha.pptx
Csc 130 class 2 problem analysis and flow charts(2)
Programming C ppt for learning foundations
Problem solving methodology
Learning & using new technology
Learning & using new technology
Problem Solving and Algorithm Design in Computer Science
Programming language paradigms
asic computer is an electronic device that can receive, store, process, and o...
extreme programming
Research-Based Innovation with Industry: Project Experience and Lessons Learned
Productivity mdd mdb_code_centric
Ad

More from Nitesh Dubey (20)

PPTX
HTML Presentation
PPT
seminar topic of holography.ppt
PDF
Compiler design.pdf
PPTX
Online shopping ppt
DOCX
Python lab manual all the experiments are available
PDF
Web Technology Lab files with practical
PDF
Theory of automata and formal language lab manual
PDF
Software engineering practical
PDF
Principal of programming language lab files
PDF
database management system lab files
PDF
design and analysis of algorithm Lab files
PDF
Computer Organization And Architecture lab manual
DOCX
industrial training report on Ethical hacking
DOCX
Project synopsis on face recognition in e attendance
DOCX
Hrms industrial training report
DOCX
Industrial training report on core java
PDF
SEWAGE TREATMENT PLANT mini project report
PDF
synopsis report on BIOMETRIC ONLINE VOTING SYSTEM
PPTX
artificial intelligence ppt
PPTX
object oriented Programming ppt
HTML Presentation
seminar topic of holography.ppt
Compiler design.pdf
Online shopping ppt
Python lab manual all the experiments are available
Web Technology Lab files with practical
Theory of automata and formal language lab manual
Software engineering practical
Principal of programming language lab files
database management system lab files
design and analysis of algorithm Lab files
Computer Organization And Architecture lab manual
industrial training report on Ethical hacking
Project synopsis on face recognition in e attendance
Hrms industrial training report
Industrial training report on core java
SEWAGE TREATMENT PLANT mini project report
synopsis report on BIOMETRIC ONLINE VOTING SYSTEM
artificial intelligence ppt
object oriented Programming ppt
Ad

Recently uploaded (20)

PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PDF
PREDICTION OF DIABETES FROM ELECTRONIC HEALTH RECORDS
PPTX
Artificial Intelligence
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PPTX
Internet of Things (IOT) - A guide to understanding
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PDF
PPT on Performance Review to get promotions
PPTX
Fundamentals of safety and accident prevention -final (1).pptx
PDF
composite construction of structures.pdf
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PPTX
OOP with Java - Java Introduction (Basics)
PPTX
Sustainable Sites - Green Building Construction
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PDF
Well-logging-methods_new................
PDF
III.4.1.2_The_Space_Environment.p pdffdf
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPTX
CH1 Production IntroductoryConcepts.pptx
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PREDICTION OF DIABETES FROM ELECTRONIC HEALTH RECORDS
Artificial Intelligence
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
Internet of Things (IOT) - A guide to understanding
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PPT on Performance Review to get promotions
Fundamentals of safety and accident prevention -final (1).pptx
composite construction of structures.pdf
Embodied AI: Ushering in the Next Era of Intelligent Systems
OOP with Java - Java Introduction (Basics)
Sustainable Sites - Green Building Construction
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
CYBER-CRIMES AND SECURITY A guide to understanding
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
Well-logging-methods_new................
III.4.1.2_The_Space_Environment.p pdffdf
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
CH1 Production IntroductoryConcepts.pptx

MLApproachToProgramming.ppt

  • 1. A Machine Learning Approach to Programming
  • 2. Agenda  Overview of current methodologies.  Disadvantages of current methodologies.  MLAP: What, Why, How?  MLAP: An example.  MLAP: Design  MLAP: Advantages/Disadvantages  Scope  Conclusion
  • 3. Overview of software methodologies  SSAD: Here programming is procedural. The mapping between a real life object n its representation in a program is ambiguous.  OOAD: Here real life objects are mapped as classes in a program. Each class consists of attributes n methods.
  • 4. Disadvantages of other Methodologies  Testing n error fixing takes a very long time.  Enhancements are based on user feedback n usage. Collecting this information is a cumbersome process.  Usability issues are not given enough importance because of lack of information.  Optimization is difficult because of inadequate information.
  • 5. What is MLAP? In MLAP, a program encodes information about itself i.e. it is aware of its own design. It is a natural consequence of the Object Oriented Methodology wherein real-life objects are represented as classes. In MLAP, each class is also aware of its construction n purpose. This is an effort to take programming to a higher level wherein the program can fix its errors on its own n provide a better user experience i.e. minor defects r fixed by the program n the program helps a user make the best use of the application n runs based on the user’s preferences.
  • 6. MLAP- An Example class A { private: attribute1; attribute2; classinfo; //encodes functionality details //of class A public: method1(); method2(); getclassinfo(); //retrieves details of class A };
  • 7. MLAP- An Example Each class contains information about itself which is encoded as an attribute. This information can be stored in predicates to record functionality.
  • 8. Design EBL Engine Subsystem Subsystem Subsystem Knowledge Base Expert System for Error Processing n Optimization Application
  • 9. Design  EBL Engine: This will learn how it is used in the execution environment. The engine uses Explanation Based Learning. Domain theory will be specific to the application.  Knowledge Base: This will store domain theory n any rules that the EBL generates.  ES for Error Processing n Optimization: This can be added for real-time error processing n fixing.
  • 10. Advantages  Error fixing: Recording error info (steps traversed at the time of the error, point in code where error took place), real-time error processing will reduce time required to fix defects immensely.  Functionality/design enhancements: Recording code coverage n class usage for optimization n accurate error information will speed up development of new releases.
  • 11. Advantages  Usability: Various aspects of usage will be recorded by different users for usability studies.  Customization based on user preferences: UI preferences ,order of functions, batch processing based on user preferences n providing help whenever a user needs it will provide for a better user experience.
  • 12. Disadvantages  Higher memory usage.  An enhancement to a Basic implementation.  Higher costs.  Performance overhead due to additional functions.
  • 13. Scope  Project is still in its implementation stage.  The idea is to build an EBL engine with a knowledge base to support the application.  An expert system shell can be developed at a later stage for error processing.
  • 14. Conclusion  In MLAP, a program encodes information about itself n can enhance its own performance.  It can improve n speed up the process of error fixing.  It is aware of its functionality n design and works towards its enhancement.  It can provide a better user experience.
  • 15. References  Artificial Intelligence-”Nilsson”  Expert Systems-”Peter Jackson”