Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1
|
|
- Audrey Simon
- 8 years ago
- Views:
Transcription
1 The Role of Programming in Informatics Curricula A. J. Cowling Department of Computer Science University of Sheffield Structure of Presentation Introduction The problem, and the key concepts. Dimensions to Programming Programming technology and artefacts; Programming activities: layers of abstraction and description; Dependencies and programming. Teaching Programming Knowledge and skills; Groups of topics; Disciplines within informatics. Summary and Conclusions Concepts of Informatics 1 The Core of Informatics Traditionally, this was the role of programming; Arguably, the core is actually software development; So, what is the role of programming? apart from being one part of software development. Fundamental Concepts Information, and how it is structured; Computation, or how information is processed. Implementing These Concepts Information is processed by systems: which carry out the computations; Systems must be constructed: which involves hardware and software technologies. Concepts of Informatics 2 Studying Technologies A range of aspects, from practical to theoretical: applications of the technologies, the technologies themselves, and the theories that underpin the technologies. Programming is a Key Software Technology So all three aspects of it must be covered. Applications of Programming Technology These can be equated to programming paradigms: imperative, functional, object-oriented, etc; Developing a system involves choosing a paradigm: this forms part of the topic of software architecture. Programming Technology 1 The Structures Mirror Those of Informatics Programming has a products dimension: concerned with programs as artefacts; Programming has a processes dimension: concerned with the activities of programming; Programming has a people dimension: which is related to both products and processes; People have requirements for software systems: what they must do, and how well they should do it; People perform the activities of programming: studied as the psychology of programming. Programming Technology 2 Linking Computation and Information Programming is not just about computation: even if most code describes control structures; Programming is also about information: data structures are equally important, they define the information to be processed. Algebraic Theories of Abstract Data Types Data structures are defined by the elementary operations; These are also the primitives used in the control structures. Maintaining the Link is Essential To link control structures with data structures; and To link computation with information. 1
2 Programs as Artefacts 1 Layers of Abstraction of Artefacts Layer Units Open applications Systems of systems Closed applications Systems Programs as Artefacts 2 Elementary Programs A key layer for introductory courses; Covers basic structuring mechanisms (control and data); Focuses on the ability to develop program fragments: which may typically be simple programs; Emphasises the forms of these fragments, rather than their utility. Components Program modules Elementary programs System libraries Assembly language Microcode APIs Classes, objects Program fragments System functions Routines Instructions Program Modules Focuses on packaging fragments to provide useful but limited functions; Covers different structuring mechanisms; Is also a key layer for introductory courses; The issue of which of these layers should come first will be ignored. Programs as Artefacts 3 Components Abstractions that provide useful functionality; This is described in terms of APIs. Closed Applications Systems that just have limited interfaces for other systems; Only designed to interact with a few other systems. Open Applications Systems where the interfaces for others are key features; Provide defined interfaces that are open to any other systems; Allow systems of systems to be constructed. Programs as Artefacts 4 System Libraries The key layer below program fragments; Focus on making hardware facilities easier to use. Assembly Language Reflects the underlying hardware structure; Usually viewed in terms of program fragments: correspond to standard control and data structures, focus on making efficient use of the hardware. Microcode Highly specialised form of programming; Implements hardware instructions in terms of register transfers. The Activities of Programming 1 Layers of Specialisation of Concepts Orthogonal to the artefact structures; Progress from general theories to specific structures. Layer Programs Languages Paradigms Models Foundation Computational Concepts Features of the selected language Defined by the selected paradigm Selected model features Functions, recursions, state transitions, etc Storage and transformation of information The Activities of Programming 2 Foundation Layer Information systems as a branch of general systems theory; Systems that process information by carrying out computation: where at least some of this processing is automated; Hence, systems that capture, store and transform information. Fundamental Models Mathematical models of information system structures: algebras to model components of information, functions and relations to model data structuring, functions to model primitive computations; Different approaches to constructing models, eg: single or multiple assignments to variables, recursive functions or iterative state machines. 2
3 The Activities of Programming 3 Programming Paradigms Standard combinations of modelling choices: which have evolved to achieve internal consistency; The features of each paradigm affect the activities: how to think about creating programs, how to trace the behaviour of programs. Languages Concrete expressions of the choices in a paradigm; Determine how programmers can express computations: what constructions are available, what syntax must be used for them; Determine how computations behave: as constrained by the language semantics. The Activities of Programming 4 Programs Specific artefacts created in a particular language; They could be at any of the levels of abstraction of the artefacts: from microcode to open applications; They will depend on all of the lower levels of artefact: but the aim is to hide these dependencies as far as possible. Layers and Descriptions Here, the lower layers define what computations are; The upper layers are concerned with how computations are described: by defining and using syntax and semantics, which applies to all of the layers of artefacts, but is done differently for programs and for systems. Describing Structures 1 Layers of Description of Structures Similar to layers of specialisation of concepts; But, with the most specific as the base layer. Layer Meta-grammar Grammar Artifact Execution Programs Meta-language Programming language Program Values of variables Systems Meta-metamodel Modeling language System model States of objects Describing Structures 2 Describing the Execution of Artefacts Here, artefacts are specific programs or systems of objects; Describing execution involves specifying changes: for programs, to the values of variables, for systems, to the states of objects, or to associations between objects. Artefacts Describe Execution Paths Programs describe how they will be executed; System models (eg in UML) describe: system structures (in terms of diagrams), and how they should behave (eg OCL annotations). Describing Structures 3 Grammars and Languages The syntax of a programming language is defined by its grammar; The meanings of constructions should also be defined: by denotational semantics, by operational semantics, or using less formal structures; System modelling languages also have grammars: largely graphical, define the symbols that may be used, and how they may be arranged; These assume a core of standard constructions: eg classes, objects, attributes, associations, inheritance, aggregation, etc. Describing Structures 4 Defining Grammars Requires appropriate meta-languages; These need to be able to describe themselves; For programming languages, we use forms of extended BNF; For system modelling languages, the equivalent is the MetaObject Facility (MOF). Aligning Specialisation and Description Meta-grammars and paradigms relate to classes of languages; Grammars describe languages; Artefacts are instances of the programs or systems; Execution describes how programs or systems behave. 3
4 Dependencies and Programming 1 The Role of Dependencies An 8 x 5 topic space has been defined; Dependencies can help to cluster these topics. Information and Computation All of informatics depends on these concepts; This applies particularly within the layers of specialisation: models, paradigms, languages & programs; Topics outside this space also depend on these concepts. Dependencies and Programming 2 Applications of Information Systems Properties of different classes of information systems affect: how these systems are used in business, and the natures and structures of the business organisations, eg centralised data warehouses versus distributed databases; These properties identify application domains; These properties may involve large-scale models for information structures: eg relational databases versus semi-structured ones; They are effectively independent of programming technology. Dependencies and Programming 3 Applications of Programming Technology Includes many knowledge areas within informatics: including computer networking, parallel and distributed systems, database systems, operating systems, computer graphics, computer vision, natural language processing, robotics, other sub-fields of artificial intelligence, etc; These will require study of example programs or fragments: which may cover all of the layers of specialisation, and several adjacent layers of artefacts, but which layers will depend on the topic. Dependencies and Programming 4 Programming and Software Development Programming is an important activity in software development: often called the construction phase; In principle, other activities could therefore depend on it; In practice, only the ones immediately before and after it do; Software design involves choices that depend on it, for: the structures of program modules, components and applications, and which programming languages will be the most suitable; Installing developed systems may also depend on how their code is structured and organised. Dependencies and Programming 5 Computational Thinking Focuses on applying computational concepts to other areas: not necessarily within informatics, but informatics applications are important; Combines mathematical and engineering ways of viewing problems; Is based on fundamental principles: of systems engineering, and of applying mathematical models; Emphasises spanning multiple layers of abstractions; Is applicable to all the layers of artefact abstractions: as in the recurring concepts of Curriculum 91; Depends on the foundation and models layers of specialisation: not on paradigms or languages. Knowledge and Skills 1 The Significance of Dependencies Topics in the 8 x 5 space define both knowledge and skills; If one topic depends on another, then Either of these for it may depend on either of them for the other. Knowledge Depending on Knowledge Applies to dependencies on the foundation or knowledge layers: undergraduates use models of computation, they are not expected to create new ones. Skills Depending on Knowledge Creating programs in a language depends on knowledge of its paradigm; And transitively on knowledge of the underlying models. 4
5 Knowledge and Skills 2 Skills Depending on Skills Creating program modules depends on the skill of creating program fragments; And transitively on the skill of using library components. Knowledge Depending on Skills Commonly seems to arise as part of building up experience: eg, knowledge about managing versions of software requires some experience of actually creating it; But the actual dependency is on the underlying knowledge: eg of the properties of software components, and how these change during development; Hence, virtually no dependencies come in this class. Knowledge and Skills 3 Grouping the Topics Apply these classes to the previous kinds of dependencies; Will start to indicate clusters of topics. Dependence on Information and Computation Applies to programming paradigms, languages and programs; They depend on the concepts of information, computation and models; Includes skills depending on knowledge: eg creating and tracing programs will depend on concepts and models of information and computation; And knowledge depending on knowledge: eg knowledge of programming paradigms will also depend on these. Knowledge and Skills 4 Applications of Programming Technology And also dependencies for applications of systems; Are on the details of the technology; Include skills depending on knowledge: eg as in studying sample programs or fragments; And include knowledge depending on knowledge: eg knowledge of the properties of the different kinds of systems; And include skills depending on skills: eg when analysing application systems; And might appear to include knowledge depending on skills: but, studying sample programs is part of the learning process, not a learning outcome, so these are not real dependencies of the topics. Knowledge and Skills 5 Software Development and Programming Software development focuses on achieving skills; These may depend on programming concepts; eg on knowledge of particular language structures; Or on programming skills: eg in software design; And knowledge of software development concepts may depend on programming concepts. Computational Thinking Is a skill that depends on the knowledge of these concepts. Partitioning the Topics 1 Partition the Dimension of Specialisation A partition for the foundation and models layers: is concerned just with knowledge, topics outside this space also depend on it; A partition for programming paradigms: again, concerned just with knowledge; A partition for languages and programs: concerned primarily with skills, depends on the other two partitions. Partitioning the Topics 2 Partition the Dimension of Artefact Abstractions Does not affect the fundamental concepts; Partly applies to the paradigms; Applies completely to the languages and programs. Combining Layers of Artefact Abstractions Hardware structures each apply to one layer: register and bus structures to the microcode layer, addressable registers to the assembly language layer; Language and program structures may apply to several layers: system libraries to component implementations; And similarly architectural structures: component structures to applications. 5
6 Partitioning the Topics 3 The Structure of Partitions A r t e f a c t s Fundamentals Paradigms Languages & programs Architecture Programming Assembly Language Microprogramming Disciplines Within Informatics 1 The Partition for Fundamentals Contains material that is core to Computer Science; This is spread across several knowledge areas in CS2001: Discrete Structures, Programming Languages, Programming Fundamentals; But, there is not much emphasis on the mathematical models; These topics should not really be classed as programming: they underpin it, but they also underpin everything else as well. Specialization Disciplines Within Informatics 2 The Partition for Microprogramming A highly specialised form of programming; Core material for Computer Engineering; Part of an equally specialised form of software development; Hence the main focus is on skills, rather than knowledge. The Partition for Assembly Language Also core material for Computer Engineering; Again, the focus there is on skills; It also underpins some Computer Science: eg operating systems, compilers, etc; Here, the focus may be more on knowledge: of why particular structures are needed. Disciplines Within Informatics 3 The Partition for Architecture Concerned with high-level system structures; Core material for Software Engineering and Information Systems; Highly relevant to Information Technology; Concerned with a form of programming: at one time called programming in the large, now called software architecture ; Concerned with quality as well as functions; Closely linked with other activities within software development. The Partition for Programming Important in all of the disciplines: knowledge of it underpins other areas of informatics; For all disciplines, the focus is on skills: the applications of these vary across the disciplines; These skills are part of the wider set of software development skills. Summary Foundational Topics The nature of information and computation; Mathematical models of them; Underpin the whole of informatics; Underpin computational thinking; Not just part of programming. Aspects of Programming Apply at different levels of artefact abstractions; Different levels are core to different disciplines; Each level has paradigms, languages and programs/systems. Conclusions Role of Programming At all the levels of artefacts: knowledge of the concepts is important, but the focus is on developing skills; These are part of the wider set of software development skills. Dependencies in Curriculum Models Dependencies between topics are well understood: and are mainly on knowledge of concepts; Dependencies within the educational process: may include dependencies on skills, still need further analysis. 6
7 The End Thanks for your attention!! Any Questions? 7
Structure of Presentation. Stages in Teaching Formal Methods. Motivation (1) Motivation (2) The Scope of Formal Methods (1)
Stages in Teaching Formal Methods A. J. Cowling Structure of Presentation Introduction to Issues Motivation for this work. Analysis of the Role of Formal Methods Define their scope; Review their treatment
More informationDatavetenskapligt Program (kandidat) Computer Science Programme (master)
Datavetenskapligt Program (kandidat) Computer Science Programme (master) Wolfgang Ahrendt Director Datavetenskap (BSc), Computer Science (MSc) D&IT Göteborg University, 30/01/2009 Part I D&IT: Computer
More informationADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science
ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science Program Schedule CTech Computer Science Credits CS101 Computer Science I 3 MATH100 Foundations of Mathematics and
More informationHow To Get A Computer Science Degree At Appalachian State
118 Master of Science in Computer Science Department of Computer Science College of Arts and Sciences James T. Wilkes, Chair and Professor Ph.D., Duke University WilkesJT@appstate.edu http://www.cs.appstate.edu/
More informationPage 1 of 5. (Modules, Subjects) SENG DSYS PSYS KMS ADB INS IAT
Page 1 of 5 A. Advanced Mathematics for CS A1. Line and surface integrals 2 2 A2. Scalar and vector potentials 2 2 A3. Orthogonal curvilinear coordinates 2 2 A4. Partial differential equations 2 2 4 A5.
More informationBachelor of Bachelor of Computer Science
Bachelor of Bachelor of Computer Science Detailed Course Requirements The 2016 Monash University Handbook will be available from October 2015. This document contains interim 2016 course requirements information.
More informationCOURSE TITLE COURSE DESCRIPTION
COURSE TITLE COURSE DESCRIPTION CS-00X COMPUTING EXIT INTERVIEW All graduating students are required to meet with their department chairperson/program director to finalize requirements for degree completion.
More informationSchool of Computer Science
School of Computer Science Head of School Professor S Linton Taught Programmes M.Sc. Advanced Computer Science Artificial Intelligence Computing and Information Technology Information Technology Human
More informationDivision of Mathematical Sciences
Division of Mathematical Sciences Chair: Mohammad Ladan, Ph.D. The Division of Mathematical Sciences at Haigazian University includes Computer Science and Mathematics. The Bachelor of Science (B.S.) degree
More informationChapter 1. Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705. CS-4337 Organization of Programming Languages
Chapter 1 CS-4337 Organization of Programming Languages Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705 Chapter 1 Topics Reasons for Studying Concepts of Programming
More informationSoftware Engineering Transfer Degree
www.capspace.org (01/17/2015) Software Engineering Transfer Degree This program of study is designed for associate-degree students intending to transfer into baccalaureate programs awarding software engineering
More informationEastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students
Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent
More informationCourse Descriptions - Computer Science and Software Engineering
One of the nation's top undergraduate engineering, science, and mathematics colleges Course Descriptions - Computer Science and Software Engineering Professors Anderson, Boutell, Chenoweth, Chidanandan,
More informationReasons for need for Computer Engineering program From Computer Engineering Program proposal
Reasons for need for Computer Engineering program From Computer Engineering Program proposal Department of Computer Science School of Electrical Engineering & Computer Science circa 1988 Dedicated to David
More informationComputer Science/Software Engineering
292 School of Science and Engineering Computer Science/Software Engineering Everald E. Mills, PhD, Chair Objectives The computer science program seeks to prepare students for careers that require sophisticated
More informationPOSTGRADUATE PROGRAMME SPECIFICATION
POSTGRADUATE PROGRAMME SPECIFICATION Programme Title: Awarding Body: Teaching Institution: Masters Computing Degrees Scheme Staffordshire University Faculty of Computing, Engineering and Sciences at Staffordshire
More informationSchool of Computer Science
School of Computer Science Computer Science - Honours Level - 2014/15 October 2014 General degree students wishing to enter 3000- level modules and non- graduating students wishing to enter 3000- level
More informationDraft dpt for MEng Electronics and Computer Science
Draft dpt for MEng Electronics and Computer Science Year 1 INFR08012 Informatics 1 - Computation and Logic INFR08013 Informatics 1 - Functional Programming INFR08014 Informatics 1 - Object- Oriented Programming
More informationInstructional Design Framework CSE: Unit 1 Lesson 1
Instructional Design Framework Stage 1 Stage 2 Stage 3 If the desired end result is for learners to then you need evidence of the learners ability to then the learning events need to. Stage 1 Desired Results
More informationProfessional Organization Checklist for the Computer Science Curriculum Updates. Association of Computing Machinery Computing Curricula 2008
Professional Organization Checklist for the Computer Science Curriculum Updates Association of Computing Machinery Computing Curricula 2008 The curriculum guidelines can be found in Appendix C of the report
More informationDoctor of Philosophy in Computer Science
Doctor of Philosophy in Computer Science Background/Rationale The program aims to develop computer scientists who are armed with methods, tools and techniques from both theoretical and systems aspects
More informationMaster of Science in Computer Science
Master of Science in Computer Science Background/Rationale The MSCS program aims to provide both breadth and depth of knowledge in the concepts and techniques related to the theory, design, implementation,
More informationWhat is a programming language?
Overview Introduction Motivation Why study programming languages? Some key concepts What is a programming language? Artificial language" Computers" Programs" Syntax" Semantics" What is a programming language?...there
More informationComputer Science. Master of Science
Computer Science Master of Science The Master of Science in Computer Science program at UALR reflects current trends in the computer science discipline and provides students with a solid theoretical and
More informationThe Role of Modelling in Teaching Formal Methods for Software Engineering
The Role of Modelling in Teaching Formal Methods for Software Engineering A. J. Cowling Department of Computer Science University of Sheffield Sheffield, England A.Cowling@dcs.shef.ac.uk Abstract. This
More informationUNDERGRADUATE DEGREE PROGRAMME IN COMPUTER SCIENCE ENGINEERING SCHOOL OF COMPUTER SCIENCE ENGINEERING, ALBACETE
UNDERGRADUATE DEGREE PROGRAMME IN COMPUTER SCIENCE ENGINEERING SCHOOL OF COMPUTER SCIENCE ENGINEERING, ALBACETE SCHOOL OF COMPUTER SCIENCE, CIUDAD REAL Core Subjects (CS) Compulsory Subjects (CPS) Optional
More informationBachelor Degree in Informatics Engineering Master courses
Bachelor Degree in Informatics Engineering Master courses Donostia School of Informatics The University of the Basque Country, UPV/EHU For more information: Universidad del País Vasco / Euskal Herriko
More informationFall 2012 Q530. Programming for Cognitive Science
Fall 2012 Q530 Programming for Cognitive Science Aimed at little or no programming experience. Improve your confidence and skills at: Writing code. Reading code. Understand the abilities and limitations
More informationMEng, BSc Computer Science with Artificial Intelligence
School of Computing FACULTY OF ENGINEERING MEng, BSc Computer Science with Artificial Intelligence Year 1 COMP1212 Computer Processor Effective programming depends on understanding not only how to give
More informationStudy Program Handbook Computer Science
Study Program Handbook Computer Science Bachelor of Science Jacobs University Undergraduate Handbook CS - Matriculation Fall 2015 Page: ii Contents 1 The Computer Science (CS) Study Program 1 1.1 Concept......................................
More informationPoznan University of Technology Faculty of Electrical Engineering
Poznan University of Technology Faculty of Electrical Engineering Contact Person: Pawel Kolwicz Vice-Dean Faculty of Electrical Engineering pawel.kolwicz@put.poznan.pl List of Modules Academic Year: 2015/16
More informationmodel-driven development
focus model-driven development What Models Mean Ed Seidewitz, InteliData Technologies If today s software developers use models at all, they use them mostly as simple sketches of design ideas, often discarding
More informationComputer Science Curriculum Revision
Computer Science Curriculum Revision Background Undergraduate programs in computing-related disciplines began to emerge in the 1960s. At that time there were only three kinds of computing-related programs:
More informationMaster Degree Program in Computer Science (CS)
Master Degree Program in Computer Science (CS) Students holding Bachelor s degree in Computer Science are accepted as graduate students, after meeting the general requirements stated below. Applicants
More informationDEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING
DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING Fall 2000 The instructions contained in this packet are to be used as a guide in preparing the Departmental Computer Science Degree Plan Form for the Bachelor's
More informationTexas Essential Knowledge and Skills Correlation to Video Game Design Foundations 2011 N130.0993. Video Game Design
Texas Essential Knowledge and Skills Correlation to Video Game Design Foundations 2011 N130.0993. Video Game Design STANDARD CORRELATING PAGES Standard (1) The student demonstrates knowledge and appropriate
More informationLONG BEACH CITY COLLEGE MEMORANDUM
LONG BEACH CITY COLLEGE MEMORANDUM DATE: May 5, 2000 TO: Academic Senate Equivalency Committee FROM: John Hugunin Department Head for CBIS SUBJECT: Equivalency statement for Computer Science Instructor
More informationMEng, BSc Applied Computer Science
School of Computing FACULTY OF ENGINEERING MEng, BSc Applied Computer Science Year 1 COMP1212 Computer Processor Effective programming depends on understanding not only how to give a machine instructions
More informationDiploma Of Computing
Diploma Of Computing Course Outline Campus Intake CRICOS Course Duration Teaching Methods Assessment Course Structure Units Melbourne Burwood Campus / Jakarta Campus, Indonesia March, June, October 022638B
More informationLanguage Evaluation Criteria. Evaluation Criteria: Readability. Evaluation Criteria: Writability. ICOM 4036 Programming Languages
ICOM 4036 Programming Languages Preliminaries Dr. Amirhossein Chinaei Dept. of Electrical & Computer Engineering UPRM Spring 2010 Language Evaluation Criteria Readability: the ease with which programs
More informationDegrees Major in Computer Science Minor in Computer Science Major in Software Engineering
LT400, Independent Study: Directed reading registering. (U)(1). LT401, Independent Study: Directed reading registering. (U)(2). LT402, Independent Study: Directed reading registering. (U)(3). LT499, Honors
More informationSERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS
SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The Service-Oriented Modeling Framework
More informationSequence Diagrams. Massimo Felici. Massimo Felici Sequence Diagrams c 2004 2011
Sequence Diagrams Massimo Felici What are Sequence Diagrams? Sequence Diagrams are interaction diagrams that detail how operations are carried out Interaction diagrams model important runtime interactions
More informationGuide to the MSCS Program Sheet
Guide to the MSCS Program Sheet Eric Roberts September 2004 Welcome to the Stanford Computer Science Department! This guide is designed to help you understand the requirements for the Master of Science
More informationBasic Trends of Modern Software Development
DITF LDI Lietišķo datorsistēmu programmatūras profesora grupa e-business Solutions Basic Trends of Modern Software Development 2 3 Software Engineering FAQ What is software engineering? An engineering
More informationPROGRAMME SPECIFICATION POSTGRADUATE PROGRAMME
PROGRAMME SPECIFICATION POSTGRADUATE PROGRAMME KEY FACTS Programme name Advanced Computer Science Award MSc School Mathematics, Computer Science and Engineering Department or equivalent Department of Computing
More informationChallenges and Opportunities for formal specifications in Service Oriented Architectures
ACSD ATPN Xi an China June 2008 Challenges and Opportunities for formal specifications in Service Oriented Architectures Gustavo Alonso Systems Group Department of Computer Science Swiss Federal Institute
More informationA Multi-layered Domain-specific Language for Stencil Computations
A Multi-layered Domain-specific Language for Stencil Computations Christian Schmitt, Frank Hannig, Jürgen Teich Hardware/Software Co-Design, University of Erlangen-Nuremberg Workshop ExaStencils 2014,
More informationCS Standards Crosswalk: CSTA K-12 Computer Science Standards and Oracle Java Programming (2014)
CS Standards Crosswalk: CSTA K-12 Computer Science Standards and Oracle Java Programming (2014) CSTA Website Oracle Website Oracle Contact http://csta.acm.org/curriculum/sub/k12standards.html https://academy.oracle.com/oa-web-introcs-curriculum.html
More informationLecture 1: Introduction
Programming Languages Lecture 1: Introduction Benjamin J. Keller Department of Computer Science, Virginia Tech Programming Languages Lecture 1 Introduction 2 Lecture Outline Preview History of Programming
More informationUndergraduate Major in Computer Science and Engineering
University of California, Irvine 2015-2016 1 Undergraduate Major in Computer Science and Engineering On This Page: Overview Admissions Requirements for the B.S. in Computer Science and Engineering Sample
More informationComputer Science Information Sheet for entry in 2016. What is Computer Science?
Computer Science Information Sheet for entry in 2016 What is Computer Science? Computer Science is about understanding computer systems and networks at a deep level. Computers and the programs they run
More informationThe value of modeling
The value of modeling Level: Introductory Gary Cernosek, Marketing Manager, IBM Rational Eric Naiburg, Group Market Manager Desktop Products, IBM Rational 15 Nov 2004 from The Rational Edge: This article
More information01219211 Software Development Training Camp 1 (0-3) Prerequisite : 01204214 Program development skill enhancement camp, at least 48 person-hours.
(International Program) 01219141 Object-Oriented Modeling and Programming 3 (3-0) Object concepts, object-oriented design and analysis, object-oriented analysis relating to developing conceptual models
More informationObject-Oriented Software Specification in Programming Language Design and Implementation
Object-Oriented Software Specification in Programming Language Design and Implementation Barrett R. Bryant and Viswanathan Vaidyanathan Department of Computer and Information Sciences University of Alabama
More informationCSE4213 Lecture Notes
CSE4213 Lecture Notes Introduction to B Tools Computer Science and Software Engineering Monash University 20070226 / Lecture 1 ajh 1/15 1 Outline 2 3 4 5 ajh 2/15 In this course we will be introducing
More informationValue equivalent. ECTS equivalent. Value 120 60 N/A
PROGRAMME APPROVAL FORM SECTION 1 THE PROGRAMME SPECIFICATION 1. Programme title and designation Computer Science Single honours Joint Major/minor 2. Final award Award Title Credit ECTS Any special criteria
More informationProject VIDE Challenges of Executable Modelling of Business Applications
Project VIDE Challenges of Executable Modelling of Business Applications Radoslaw Adamus *, Grzegorz Falda *, Piotr Habela *, Krzysztof Kaczmarski #*, Krzysztof Stencel *+, Kazimierz Subieta * * Polish-Japanese
More informationMaster of Science in Software Engineering (MSC)
Master of Science in Software Engineering The MSc in Software Engineering provides a thorough grounding in how to apply rigorous engineering principles to deliver elegant, effective software solutions
More informationHow To Get A Computer Science Degree At Coastal Carolina University
New Degree Program in Information Technology Mike Murphy, Ph.D., Assistant Professor, Department of Computing Sciences Will Jones, Ph.D., Associate Professor and Chair, Department of Computing Sciences
More informationMaster of Science in Information Systems management
Master of Science in Information Systems management The MSc in Information Systems Management programme responds to the growing need for IT professionals to acquire the more general management skills and
More informationCollege of Science, Engineering and Technology. School of Computing. college of science, engineering and technology. Learn without limits.
College of Science, Engineering and Technology School of Computing Learn without limits. college of science, engineering and technology WELCOME TO THE SCHOOL OF COMPUTING The vision of the school is to
More informationBudapest University of Technology and Economics Department of Measurement and Information Systems. Business Process Modeling
Budapest University of Technology and Economics Department of Measurement and Information Systems Business Process Modeling Process, business process Workflow: sequence of given steps executed in order
More informationSchoo\ of Computing. Middlesbrough. Teesside University. 22 June 2015. To whom it may concern
Dr Simon Stobart Dean School of Compuling Teesside University Middlesbrough Tees Val\ey TS l 3BA Ul< T: 44 (0) 1642 342631 F: 44 (0) 1642 230527 tees.ac.uk Teesside University 22 June 2015 To whom it may
More informationInformation and Communications Technology Courses at a Glance
Information and Communications Technology Courses at a Glance Level 1 Courses ICT121 Introduction to Computer Systems Architecture This is an introductory course on the architecture of modern computer
More informationDepartment of Computer Science
The University of Texas at San Antonio 1 Department of Computer Science The Department of Computer Science offers a Bachelor of Science degree in Computer Science and a Minor in Computer Science. Admission
More informationProfessional Organization Checklist for the Computer Information Systems Curriculum
Professional Organization Checklist f the Computer Infmation Systems Curriculum Association of Computing Machinery and Association of Infmation Systems IS 2002 Model Curriculum and Guidelines f Undergraduate
More informationModel-Driven Development: A Metamodeling Foundation
Model-Driven Development: A Metamodeling Foundation Colin Atkinson University of Mannheim 68161 Mannheim, Germany atkinson@informatik.uni-mannheim.de Thomas Kühne Darmstadt University of Technology 64283
More informationUNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW
UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW John C. Knight, Jane C. Prey, & Wm. A. Wulf Department of Computer Science University of Virginia Charlottesville, VA 22903
More informationComputer Science Department. Course Descriptions
Computer Science Department Course Descriptions Introduction to Programming (CS011) (0 Credit hours) Topics include: problem solving steps, programming methods evolution, modeling tools (i.e. flowchart,
More informationChapter 6: Programming Languages
Chapter 6: Programming Languages Computer Science: An Overview Eleventh Edition by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Chapter 6: Programming Languages 6.1 Historical Perspective
More informationLEHMAN COLLEGE OF THE CITY UNIVERSITY OF NEW YORK DEPARTMENT OF MATHEMATICS AND COMPUTER SCIENCE CURRICULUM CHANGE
LEHMAN COLLEGE OF THE CITY UNIVERSITY OF NEW YORK DEPARTMENT OF MATHEMATICS AND COMPUTER SCIENCE CURRICULUM CHANGE 1. Type of Change: Course Description and Credit Change. 2. Course Description: From:
More informationCore Curriculum to the Course:
Core Curriculum to the Course: Environmental Science Law Economy for Engineering Accounting for Engineering Production System Planning and Analysis Electric Circuits Logic Circuits Methods for Electric
More informationUF EDGE brings the classroom to you with online, worldwide course delivery!
What is the University of Florida EDGE Program? EDGE enables engineering professional, military members, and students worldwide to participate in courses, certificates, and degree programs from the UF
More informationEngineering Process Software Qualities Software Architectural Design
Engineering Process We need to understand the steps that take us from an idea to a product. What do we do? In what order do we do it? How do we know when we re finished each step? Production process Typical
More informationChap 1. Introduction to Software Architecture
Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)
More informationData Modeling Basics
Information Technology Standard Commonwealth of Pennsylvania Governor's Office of Administration/Office for Information Technology STD Number: STD-INF003B STD Title: Data Modeling Basics Issued by: Deputy
More informationCMSC 435: Software Engineering Course overview. Topics covered today
CMSC 435: Software Engineering Course overview CMSC 435-1 Topics covered today Course requirements FAQs about software engineering Professional and ethical responsibility CMSC 435-2 Course Objectives To
More informationA New MSc Curriculum in Computer Science and Mathematics at the University of Zagreb
A New MSc Curriculum in Computer Science and Mathematics at the University of Zagreb Robert Manger, Goranka Nogo, Mladen Vuković Department of Mathematics, University of Zagreb Bijenička cesta 30, 10000
More informationHPC Wales Skills Academy Course Catalogue 2015
HPC Wales Skills Academy Course Catalogue 2015 Overview The HPC Wales Skills Academy provides a variety of courses and workshops aimed at building skills in High Performance Computing (HPC). Our courses
More informationComputer Science. Requirements for the Major (updated 11/13/03)
Computer Science Faculty: Knox Chair; Komagata,, Martinovic, Neff, Sampath, Wolz Faculty from mathematics with joint teaching appointments in computer science: Conjura, Greenbaun, Iannone The computer
More informationM.S. Computer Science Program
M.S. Computer Science Program Pre-requisite Courses The following courses may be challenged by sitting for the placement examination. CSC 500: Discrete Structures (3 credits) Mathematics needed for Computer
More informationDesign with Reuse. Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1
Design with Reuse Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1 Objectives To explain the benefits of software reuse and some reuse
More informationMasters in Information Technology
Computer - Information Technology MSc & MPhil - 2015/6 - July 2015 Masters in Information Technology Programme Requirements Taught Element, and PG Diploma in Information Technology: 120 credits: IS5101
More informationSchool of Computing and Technology
School of Computing and Technology We offer employmentfocused education and research in computing, the built environment and engineering, giving our students industry-relevant skills and knowledge. Applied
More informationSERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED BUSINESS INTEGRATION MODEL LANGUAGE SPECIFICATIONS
SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED BUSINESS INTEGRATION MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The Service-Oriented Modeling Framework
More informationChapter 13: Program Development and Programming Languages
Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented
More informationREGULATIONS FOR THE DEGREE OF BACHELOR OF SCIENCE IN BIOINFORMATICS (BSc[BioInf])
820 REGULATIONS FOR THE DEGREE OF BACHELOR OF SCIENCE IN BIOINFORMATICS (BSc[BioInf]) (See also General Regulations) BMS1 Admission to the Degree To be eligible for admission to the degree of Bachelor
More informationBachelor of Information Technology
Bachelor of Information Technology Detailed Course Requirements The 2016 Monash University Handbook will be available from October 2015. This document contains interim 2016 course requirements information.
More informationvalue equivalent value 120 60 N/A
PROGRAMME APPROVAL FORM SECTION 1 THE PROGRAMME SPECIFICATION 1. Programme title and designation Computer Science with Robotics For undergraduate programmes only Single honours Joint Major/minor 2. Final
More informationFACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY AUTUMN 2016 BACHELOR COURSES
FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY Please note! This is a preliminary list of courses for the study year 2016/2017. Changes may occur! AUTUMN 2016 BACHELOR COURSES DIP217 Applied Software
More informationM.Tech. Software Systems
M.Tech. Software Systems Input Requirements Employed professionals holding an Integrated First Degree of BITS or its equivalent in relevant disciplines, with minimum one year work experience in relevant
More informationLIST OF REGISTRABLE COURSES FOR BSC COMMUNICATION TECHNOLOGY JUNE 2014
100 Level Title Unit Status GST 101 Use of English and Communication Skills I 2 C GST 107 The Good Study Guide 2 C BIO101 General Biology 2 C CHM101 Introductory Inorganic Chemistry 2 C CIT 101 Computers
More informationSchool of Computer Science
Computer Science Honours Level 2013/14 August 2013 School of Computer Science Computer Science (CS) Modules CS3051 Software Engineering SCOTCAT Credits: 15 SCQF Level 9 Semester: 1 This module gives a
More informationThomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation
Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science updated 03/08/2012 Unit 1: JKarel 8 weeks http://www.fcps.edu/is/pos/documents/hs/compsci.htm
More informationComputer Science Introduction
Computer Science Introduction Computer science (CS) is the scientific and practical approach to computation and its applications. CS is a fast-moving field that brings together many disciplines, including
More informationBuilding Reliable, Scalable AR System Solutions. High-Availability. White Paper
Building Reliable, Scalable Solutions High-Availability White Paper Introduction This paper will discuss the products, tools and strategies available for building reliable and scalable Action Request System
More informationProgramming Languages
Programming Languages Qing Yi Course web site: www.cs.utsa.edu/~qingyi/cs3723 cs3723 1 A little about myself Qing Yi Ph.D. Rice University, USA. Assistant Professor, Department of Computer Science Office:
More informationStructure of Postgraduate Programs (2005)
Computing and Information Technology Structure of Postgraduate Programs (2005) Entry Point 1: Program 7342 Graduate Certificate in Computing (NEW) GradCert 24 units of credit 24uc (4 courses) over 1 or
More information