Latest trends in Global Software Industry Dr. Jeyakesavan Veerasamy

Slides:



Advertisements
Similar presentations
Analysis of Algorithms: time & space Dr. Jeyakesavan Veerasamy The University of Texas at Dallas, USA.
Advertisements

Complex Systems Applications Dr. Jeyakesvan Veerasamy The University of Texas at Dallas, USA Good morning!
Evolution of Telecom Software Perspectives from a Software Engineer Dr. Jey Veerasamy.
Higher studies, Jobs & Trends in Computer Science in USA Dr. Jeyakesavan Veerasamy
Android OS : Core Concepts Dr. Jeyakesavan Veerasamy Sr. Lecturer University of Texas at Dallas
Welcome to C++ Programming Workshop at The University of Texas at Dallas Presented by John Cole July 8-12, 2013.
MIS 2000 Class 20 System Development Process Updated 2014.
Advanced Java Concepts Dr. Jeyakesavan Veerasamy
Emerging Trends for Jobs in IT Sector & Business IT.
Modern Software Development Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
1 CMSC 132: Object-Oriented Programming II Software Development I Department of Computer Science University of Maryland, College Park.
Systems Programming Course Gustavo Rodriguez-Rivera.
8 Systems Analysis and Design in a Changing World, Fifth Edition.
Chapter 10 Application Development. Chapter Goals Describe the application development process and the role of methodologies, models and tools Compare.
Final year projects, Higher studies, Jobs & Software Trends in USA Dr. Jeyakesavan Veerasamy
Business of Online Education in USA Dr. Jeyakesavan Veerasamy
Dr. V. Jeyakesavan: Academia, Industry & Personal Dad was a school teacher B.E. (ECE) in CEG Guindy, Anna University – UNIX System Software Engineer,
Aiding intelligent next-gen systems with mobile applications Dr. Jeyakesavan Veerasamy University of Texas at Dallas Note: Almost all.
Online Education is the future? Dr. Jeyakesavan Veerasamy The University of Texas at Dallas, USA.
Future of Online Education in USA
Current trends in usage of Smart-phones in USA Dr. Jeyakesavan Veerasamy Director of Senior Design projects & Sr. Lecturer University of Texas at Dallas.
Software Development – Thoughts & observations Dr. Jeyakesavan Veerasamy
Research Scholars: Shaping your future Dr. Jeyakesavan Veerasamy University of Texas at Dallas
Latest trends in Global Software Industry Dr. Jeyakesavan Veerasamy
Welcome to KGiSL Institute of Technology (KITE)! Dr. V. Jeyakesavan University of Texas at Dallas, USA
Hello! Dr. Jeyakesavan Veerasamy CS faculty, The University of Texas at Dallas Website:
Virtual learning for Management education Dr. Jeyakesavan Veerasamy
© 2009 GroundWork Open Source, Inc. PROPRIETARY INFORMATION: Information contained herein is not for use or disclosure outside of GroundWork Open Source,
Life as Software Engineer Dr. Jeyakesavan Veerasamy University of Texas at Dallas
Client/Server Architectures
Estimation Wrap-up CSE 403, Spring 2008, Alverson Spolsky.
Software Reuse Course: # The Johns-Hopkins University Montgomery County Campus Fall 2000 Lecture # 1 - September 7, 2004.
Ch 1. Introduction Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2012.
Introduction COMP104: Fundamentals and Methodology.
The changes and challenges in supporting learners whatever their devices – an experience of migrating to cloud computing Dr. Kathy Maitland Academic Lead.
CS110/CS119 Introduction to Computing (Java)
Introduction CSE 1310 – Introduction to Computers and Programming
CS 3305 Course Overview. Introduction r Instructor: Dr Hanan Lutfiyya r Office: MC 355 r hanan at csd dot uwo ca r Office Hours: m Drop-by m Appointment.
Final Year Projects Dr. Jeyakesavan Veerasamy Director of CS Senior Design Program University of Texas at Dallas, USA
Information Technology Ms. Rocío Acevedo August 2006.
Purpose of the Technology Department at an Investment Bank
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Software Industry – Historical View Dr. Jeyakesavan Veerasamy University of Texas at Dallas
Testing Challenges in an Agile Environment Biraj Nakarja Sogeti UK 28 th October 2009.
Role of IT in management Dr. Jeyakesavan Veerasamy
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Game Programming in Java Dr. Jeyakesavan Veerasamy CS faculty, The University of Texas at Dallas Website:
C5- IT Infrastructure and Emerging Technologies. Input – Process - Output 2 A computer  Takes data as input  Processes it  Outputs information CPU.
MANAGING SOFTWARE ASSETS ~ pertemuan 6 ~ Oleh: Ir. Abdul Hayat, MTI 1[Abdul Hayat, SIM, Semester Genap 2007/2008]
The Erik Jonsson School of Engineering and Computer Science Dissertation and beyond: Ph.D. in CS/SE at UTD Dr. Balaji Raghavachari Department of Computer.
Final Year Projects Dr. Jeyakesavan Veerasamy Director of CS Senior Design Program University of Texas at Dallas, USA
Final Year Projects Dr. Jeyakesavan Veerasamy Director of CS Senior Design Program University of Texas at Dallas, USA
Definition of Done in the Age of DevOps Intel Agile and Lean Development Conference Piotr Żmijewski May 22 nd, 2014.
Passionate Programming & IT trends Dr. Jeyakeavan Veerasamy The University of Texas at Dallas, USA Web:
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Meghe Group of Institutions Department for Technology Enhanced Learning 1.
Word Guess Team (Team #4) October 8, Word Guess Team  Team Members  Chakib Kouhel:  Steve Mattingley:
Nguyen Thi Thanh Nha HMCL by Roelof Kemp, Nicholas Palmer, Thilo Kielmann, and Henri Bal MOBICASE 2010, LNICST 2012 Cuckoo: A Computation Offloading Framework.
This slide deck is for LPI Academy instructors to use for lectures for LPI Academy courses. ©Copyright Network Development Group Module 01 Introduction.
/16 Final Project Report By Facializer Team Final Project Report Eagle, Leo, Bessie, Five, Evan Dan, Kyle, Ben, Caleb.
CS50x Kansas City. Agenda Welcome! This is CS50x, Kansas City Edition Introduction to: LaunchCode CS50x Course Tools used in the course Programming How.
CS education: teaching computer science. Teaching programming Teaching computer science has become a huge industry: Huge job growth Not enough CS- trained.
Advanced Higher Computing Science The Project. Introduction Worth 60% of the total marks for the course Must include: An appropriate interface using input.
Introduction to CSCI 1311 Dr. Mark C. Lewis
Advanced Higher Computing Science
MASS Java Documentation, Verification, and Testing
Software What Is Software?
Introduction CSE 1310 – Introduction to Computers and Programming
Programming COMP104: Fundamentals and Methodology Introduction.
Quality Assurance in an Agile Development Team Michelle Wu 2018 PNSQC
Presentation transcript:

Latest trends in Global Software Industry Dr. Jeyakesavan Veerasamy

Agenda Introduce myself Software: Then & Now SW development environment options SW Efficiency – does it matter? Latest buzz Trends in CS education Open Q&A

Dr. V. Jeyakesavan: Academia, Industry & Personal Dad was a school teacher B.E. (ECE) in CEG Guindy, Anna University – UNIX System Software Engineer, HCL Limited, Chennai, MS Computer Science, University of Texas at Dallas (UTD),

Dr. V. Jeyakesavan: Academia, Industry & Personal … Telecom Software Engineer, Northern Telecom, Dallas, Ph.D. Computer Science (part-time), University of Texas at Dallas (UTD), Technical Lead, Samsung Telecom, Got married in 1998 Adjunct Faculty, UTD CS department, Online Adjunct Faculty in several online universities from 2000

Dr. V. Jeyakesavan: Academia, Industry & Personal … Adjunct Faculty, Southern Methodist University, 2010 Sr. Lecturer (full-time), UTD Computer Science, 2010-present 2 daughters: Nila (8) and Chinmayee (4) Passionate about teaching – happy to share ideas to improve teaching quality in colleges

Dr. V. Jeyakesavan: Summary 18 years experience as Software Engineer 12 years of teaching experience

Software: Then & Now Note: Almost all the content is based on observations & experience only.

Complexity of software projects: historical snippets Ad-hoc development model Waterfall model – slow & unpredictable – heavy documentation effort – cost overruns & missed deadlines

My experience with huge SW projects (Waterfall model) Period of instability collisons during merge product delays Is it good enough to release?

Agile process

Agile methods Limited documentation Better tracking of current status Frequent releases Continuous interaction with the customer Several refinements: XP, SCRUM, …

A typical industry project in 1990 C standard library Home-grown library New code

Same industry project NOW C++/Java standard library Home-grown library Open source components Commercial libraries for industry segment IDE modules New code Follow-up Q: Any disadvantages? Follow-up Q: How one becomes experienced programmer?

Questions Expert programmer: what does it mean? Future projects: No code? Just integration? Knowledge of Java/C++/… down the drain?

Application Specific Programming M1M2M3 Intrepreter Mn script … …

Data Exchange A1 A3 A2 A4

Data Exchange Binary or text data  XML or JSON … Independent data checkers tools available. A1 A3 A2 A4

Software Outsourcing Goal: reduce cost Projects need to fit certain criteria – Bit formal & clear requirements – Interfaces well defined/understood – should be of reasonable size Not a good idea for small/poorly defined/time- critical/security-sensitive projects Opinion: may stay at current level or go down Industry not conducive for more outsourcing With increased cost, Indian SW companies under pressure

Design decisons Purchase modules or use open-source?.NET or Java?

Running time of a program amount of input: n global vs. local variables? – minor impact basic algorithm / actual processing: – time complexity, space complexity? -constants: c. n + d -O(log n) vs. O(n) executable code size – compiler/linker optimization? ~20% memory access speed: up  running time down CPU/processor speed: up  running time down # of processors?

Compare 3 algorithms AlgorithmO(log n)O(n)O(2 n ) When n goes up by 1 neglegibleGoes up by 1 unit Doubles! When n doubles Goes up by 1 unit DoublesGoes up by 2 n

Software efficiency: Do we really care? Goal is to make software work & meet deadline for most industry projects. Game console: Algorithm takes longer to run  requires higher-end CPU to keep realism  higher price  product fails amid competition Web-server: Algorithm takes longer to run (consider 5 seconds vs. 20 seconds)  tests web-users’ patience & requires more web server capacity. Daily data crunching: What if it takes >1 day?

Data crunching pseudocode initial setup loop – read one tuple – open db connection – send request to db – get response from db – close db post-processing Equation for running time = c 1. n + d 1 Time complexity is O(n)

Data crunching pseudocode initial setup open db connection loop – read one tuple – send request to db – get response from db close db post-processing Equation for running time = c 2. n + d 2 Time complexity is still O(n), but the constants are different. c 2 < c 1 d 2 > d 1

A few more points … Standalone applications  Enterprise bundles Local SW installation  intranet based Build in-house  Buy & customize Heavy text based coding  visual programming (GUI builders & debuggers …) Desktops  Laptops + Smartphones

SW projects: Multi-dimensional problem Companies want to complete Software Projects with Smaller team Limited resources Higher quality Reduced cost On-time delivery This is what each project manager tries to do 

Smart-phone development My kids know/play games in Android phone For me, , calendar and contacts are in sync with company data Question: can we do more with them? Industry trend is to port several meaningful business applications to smartphones. Example for cross-platform development

Game development Lot of interest in real-time action games Most games done in C/C++ in Los Angeles area Algorithm optimization at work!

Latest trends in CS education in USA Difficulty in attracting US students to CS Introduction to Programming : going visual – Alice, Scratch, GUI games, … Java dominates in CS1 & CS2 courses Industry projects in the final year Online courses becoming popular, augmenting education landscape Lots of online multimedia lectures in the web Game design programs & Smart-phone applications Augmenting open-source applications

Dallas-Ft. Worth metroplex

Advertisement: University of Texas at Dallas Erik Jonsson School of Engineering and Computer Science Computer Science: ~500 MS students and ~150 PhD students Surrounded by 100s of companies in Dallas- Fort Worth metroplex Students can get internships right after 2 semesters and continue studies in parallel Flyers available – see me after the lecture

Questions & Answers

Thanks for attending! Dr. Jeyakesavan Veerasamy