Vineeth Paleri
Eminent Speaker
Short CV:
Dr. Vineeth Paleri did his PhD at the Department of Computer Science and Automation, Indian Institute of Science Bangalore from 1994 to 1999. He served as a faculty member in the Department of Computer Science and Engineering, National Institute of Technology from 1986 to 2024. He was a visiting faculty in the Department of Computer Sciences at Purdue University for one year in 2003. He taught the subjects Foundations of Programming, Principles of Programming Languages, and Compiler Design at the National Institute of Technology Calicut and Software Engineering at Purdue University. His area of research is in Program Analysis and Code Optimisation. The research contributions of his research group include a simple and efficient algorithm for Partial Redundancy Elimination, ECOOP 2024.
Title of Talk 1: Software Engineering: A Methodology for Reliable Software
Synopsis: Programming, even today, is more of an art where most people learn only by watching others perform and through habit, with little direction as to the principles involved. Here we stress the need for conscious application of programming principles to produce reliable software. Reliable programs are no more a luxury in many critical areas. Unreliable software can cause severe harm to the society, including loss of lives. The proposed software engineering methodology emphasises on Specification and Design before Coding. The methodology uses Separation of Concerns as the key principle to address complexity of problems. The methodology also adopts a Modular Design strategy to control the complexity of software with Procedural Abstraction and Data Abstraction as the basic principles behind it. The approach takes the view that software as a product is not just the code but a package consisting of the Specification, the Program, and the Proof that the program meets the specification.
Title of Talk 2: Unravelling the Landscape of Computer Science Education
Synopsis: Computing is a broad discipline that crosses the boundaries between science, engineering, and business. This presentation provides a perspective for those who need to understand what the major computing disciplines are, and how they compare and complement each other. The computing disciplines cover a large area of expertise. To specialise in a computing-related field, one must have an idea of what are the computing disciplines, the knowledge that comes under each of them, and the possible careers and scope related to each of the domains.
Title of Talk 3: Object Orientation
Synopsis: Object-oriented systems make use of abstraction in order to tackle complexity in software development. An abstraction is something that relieves you from having to deal with details. Object-oriented systems combine procedural abstraction with data abstraction. Procedural abstraction separates the way a procedure would be used from the details of how the procedure would be implemented, in terms of more primitive operations. Data abstraction is a methodology that enables us to isolate how a compound object is used from the details of how it is constructed from more primitive data objects.
Vineeth Paleri
Qualifications: PhD, IISc Bangalore
Title: Professor
Affiliation: National Institute of Technology Calicut
LinkedIn:
Twitter/X:
Facebook:
Instagram:
Email:
About the speaker:
Qualifications: PhD, IISc Bangalore Current Position: Professor Affiliation: National Institute of Technology Calicut