1 CS145 Lecture 26 What’s next?. 2 What software questions do we study? Where is software headed?

Slides:



Advertisements
Similar presentations
Information and Software Technology Option: Artificial intelligence, simulation and modelling.
Advertisements

A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
Information and Software Technology
Computer Science It’s more than programming Eric Lantz.
Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
Department of Mathematics and Computer Science
B.A. (Mahayana Studies) Introduction to Computer Science November March What is a Computer? An overview of what a computer is, the.
Reseach in DistriNet (department of computer science, K.U.Leuven) General overview and focus on embedded systems task-force.
Digital Systems Emphasis for Electrical Engineering Students Digital Systems skills are very valuable for electrical engineers Digital systems are the.
Artificial Intelligence
LECTURE-2. Software Is a Product Designed by software engineers. Consists of : –Programs - that execute within a computer and provides desired functions.
INTRODUCTION COMPUTATIONAL MODELS. 2 What is Computer Science Sciences deal with building and studying models of real world objects /systems. What is.
What do Computer Scientists and Engineers do? CS101 Regular Lecture, Week 10.
Chapter Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing Describe.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
NSF Foundations of Hybrid and Embedded Software Systems UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI A New System Science.
CS 1 with Robots CS1301 – Where it Fits Institute for Personal Robots in Education (IPRE)‏
Distinctions Between Computing Disciplines
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
Biointelligence Laboratory School of Computer Science and Engineering Seoul National University Cognitive Robots © 2014, SNU CSE Biointelligence Lab.,
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
The Continuing Story of the Computer Age: Past, Present, and Future
Chapter 01 Nell Dale & John Lewis.
L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수,
Introduction to Computer and Programming CS-101 Lecture 6 By : Lecturer : Omer Salih Dawood Department of Computer Science College of Arts and Science.
C OMPUTER S CIENCE, C OMPUTER E NGINEERING, I NFORMATION T ECHNOLOGY AND S YSTEMS, F LOW OF C ONTROL, B ATCH AND I NTERACTIVE P ROCESSING Week 5 Mr. Mohammed.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
6.01 Understand emerging technologies.
A Survey of COMPUTER GRAPHICS
 DATABASE DATABASE  DATABASE ENVIRONMENT DATABASE ENVIRONMENT  WHY STUDY DATABASE WHY STUDY DATABASE  DBMS & ITS FUNCTIONS DBMS & ITS FUNCTIONS 
© 2007 Pearson Addison-Wesley. All rights reserved 0-1 Spring(2007) Instructor: Qiong Cheng © 2007 Pearson Addison-Wesley. All rights reserved.
Andrew C. Samuels, Information Technology Specialist Trainer c/o Ministry of Education Mona High School, Kingston, Jamaica 1 Unit 1 Module 1 Specific Objective:
Chapter 1 Computer Systems. Why study Computer Architecture? Examples Web Browsing - how does the browser access pages from a server? How can we create.
1 Machine Learning 1.Where does machine learning fit in computer science? 2.What is machine learning? 3.Where can machine learning be applied? 4.Should.
I Robot.
Teaching Robots There are two ways to teach a robot how to do something: Type a program of instructions into the controlling computer. Use lead-through.
Major Disciplines in Computer Science Ken Nguyen Department of Information Technology Clayton State University.
ELEMENTS OF A COMPUTER SYSTEM HARDWARE SOFTWARE PEOPLEWARE DATA.
CSE 102 Introduction to Computer Engineering What is Computer Engineering?
CS 127 Introduction to Computer Science. What is a computer?  “A machine that stores and manipulates information under the control of a changeable program”
Master’s Degree in Computer Science. Why? Acquire Credentials Learn Skills –Existing software: Unix, languages,... –General software development techniques.
Computer Software Types Three layers of software Operation.
1 CS145 Lecture 24 What’s next?. 2  What questions does Computer Science study?  Where is programming and Computer Science headed? –With special emphasis.
More Computer Science in your Future? CSE 142 Autumn
Real-Time Systems, Events, Triggers. Real-Time Systems A system that has operational deadlines from event to system response A system whose correctness.
Chapter 7 What Can Computers Do For Me?. How important is the material in this chapter to understanding how a computer works? 4.
Adrian Janson, Melbourne High School Information Systems, Data and Information, The IPC and Organisations For VCE Software Development ¾, 2007.
1 MIS in Practice Types of Information Systems (IS)
College of Computer Science, SCU Computer English Lecture 1 Computer Science Yang Ning 1/46.
CSC 480 Software Engineering Lecture 17 Nov 4, 2002.
CS4315A. Berrached:CMS:UHD1 Introduction to Operating Systems Chapter 1.
Software Integrado Team # What is an Embedded software? Is a computer software which plays an integral role in the electronics it is supplied with.
Hierarchical Modeling.  Explain the 3 different types of model for which computer graphics is used for.  Differentiate the 2 different types of entity.
Lecture #1: Introduction to Algorithms and Problem Solving Dr. Hmood Al-Dossari King Saud University Department of Computer Science 6 February 2012.
Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
CS 1 with Robots CS1301 – Where it Fits Institute for Personal Robots in Education (IPRE)‏
1 INTRODUCTION TO COMPUTER GRAPHICS. Computer Graphics The computer is an information processing machine. It is a tool for storing, manipulating and correlating.
Sub-fields of computer science. Sub-fields of computer science.
Definition CASE tools are software systems that are intended to provide automated support for routine activities in the software process such as editing.
Computer Science Courses
CSC 480 Software Engineering
Introduction To software engineering
CS1301 – Where it Fits Institute for Personal Robots in Education
CS1301 – Where it Fits Institute for Personal Robots in Education
CS1301 – Where it Fits Institute for Personal Robots in Education
COMPUTER GRAPHICS with OpenGL (3rd Edition) Donald Hearn M
The Curriculum of the Department of Informatics TEI-A
Technology of Data Glove
Presentation transcript:

1 CS145 Lecture 26 What’s next?

2 What software questions do we study? Where is software headed?

3 What software questions do we study Basic Questions System Software Network Software Middleware Information Systems Scientific Computing Embedded and Real-Time Systems Graphics Artificial Intelligence Software Engineering

4 Basic Questions Data structures for storing and representing different kinds of application data –Some kinds of structures Maps (map one type of object to another) Trees, Graphs Sets Analysis of Algorithms –Time and space efficiency of algorithms and data structures Computer Architectures –How to make computers work better with various kinds of software Better = Faster, Cheaper, Less Power Consumption, etc.

5 System Software System Software: Software that supports other kinds of software –As opposed to application software: Software that faces the user Some kinds of system software: –Operating systems –Programming Languages Compilers and Virtual Machines –Database Management Systems

6 Network Software Supports communication between systems and software –Definition and Implementation of communication protocols Interesting protocols –TCP/IP –HTTP (as opposed to HTML) –FTP –SSL

7 Middleware Software that sits between systems and applications –Typically systems type software with more of an application focus Some examples –Software for integrating different applications –Model Driven Architecture Build your integration software by drawing the right kinds of diagrams

8 Information Systems Usually systems that support the operation of a business –More generally: Systems that store and manipulate business kinds of information Some interesting areas: –Data Base (the organization of data, not the underlying software) –Business applications ERP, CRS, … –Business rules Just describe the rules and the necessary software is automatically generated

9 Scientific Computing Large numeric computations for science and engineering applications Issues –Efficient algorithms for large computations –Efficient coordination of large computing resources Some examples –Predict the weather or climate –Wind tunnel –Simulate nuclear weapons –Protein folding

10 Embedded and Real-Time Systems Control operation of machines, equipment, etc. Some issues –Operating systems supporting real-time (deadline) processing Examples –Fly an airplane –Drive a car –Run a factory –Record a television program –Run the graphics card in your computer

11 Graphics Generate realistic graphics (pictures, video) from digital descriptions Issues –Understanding how light interacts with physical objects –Efficient algorithms Examples –Shrek, Gollum, Polar Express –Cleaning up old movies

12 Artificial Intelligence Software and systems that behaves as if they were intelligent This is a large area with many subareas: –Rule based systems –Neural Network –Natural language processing –Evolutionary algorithms –Machine Learning –Robotics –Game playing –Proving Software Correct

13 Software Engineering How to we go about building software? Areas of interest –Requirements, Requirements Management –Architecture and Design –Testing –Software Methodology and Process –Diagramming Software (e.g. UML) –Managing Building Software –Costing and Scheduling of Software Development

14 Where is software headed? How good is your crystal ball? Programming languages and systems –Try to make software developers more efficient Artificial Intelligence –More “intelligent” systems Business applications –Standard “easily tailorable” applications

15 Where is software headed? (continued) All areas –Make better use of increasing processing power and storage capacity Software Engineering –“Software is always late and over budget” –Can we fix this?