The Software Engineering Profile at Umeå University

Size: px
Start display at page:

Download "The Software Engineering Profile at Umeå University"

Transcription

1 from: Proceedings ISSEU 97, The First International Symposium on Software Engineering in Universities, Rovaniemi, Finland, The Software Engineering Profile at Umeå University J. Börstler Department of Computing Science, Umeå University, S Umeå, Sweden jubo@cs.umu.se Abstract This paper describes the software engineering profile at Umeå University. In particular it discusses the organization of a series of practical project-oriented courses. In software engineering education practical courses are very important, since many aspects of this discipline cannot be taught adequately in traditional classroom lectures. In an experience section the paper describes the critical elements to make a students project a success, namely support for project management, selection of the right type of project, and selection of the right tools. 1 Introduction During the last three years the Department of Computing Science at Umeå University, Sweden successively reorganized its course structure towards a stronger Software Engineering profile. Besides the Software Engineering profile our department provides profiles in Cognitive Science, Parallel Computing, and Scientific Computing. The Software Engineering profile covers the following three aspects of software engineering: Theoretical background in creation, handling, and analysis of software; The study of well-known application domains; Practical application of the principles in team oriented projects. Especially the last point is very important in Software Engineering education. Software engineering is a discipline which evolved to cope with the complexity of large software systems and their production. But approaches to cope with complexity are difficult to teach in classroom lessons alone for mainly two reasons. First there are almost no useful examples. During traditional lectures most software engineering methods and techniques appear to be trivial, since there is not enough time to introduce complex examples. Small exercises or assignments do not help either, since the real value of software engineering does not proof itself

2 to be useful for them. The application of software engineering methods and techniques rather seem to be counterproductive in causing the production of a lot of superfluous documents. The second problem is to teach the importance of communication and teamwork. Without doing any real teamwork this is very difficult. A deeper understanding of software engineering can therefore only be gained by practical experiences ([1], [2]). The reminder of the paper is organized as follows. Section 2 gives an overview over the software engineering profile at Umeå University. Section 3 describes the outlines of the main (project-oriented) courses in the profile. Experiences with these courses are discussed in section 4. Section 5 concludes the paper. 2 Profile Overview Figure 1 gives an overview over the course structure for the relevant courses. The students start with courses on Mathematics followed by a sequence of introductory Computing Science courses (PM, CS1, and DA). These first year courses have been recently redesigned to more deeply cover systematic program development (PM) and basic theoretical computer science (CS1). We found it very important to teach some theoretical background already during the first year. We see it as very important for the students to understand the computational power of computers as well as its limitations. The lessons on systematic program development stress the importance of abstraction and information hiding, the usage of assertions, and ab- CC1 AA CC2 OS CSA PM CS1 DA CSB SP SE HCI SC1 compulsory courses (first and second year) SC2 CS2 DB OOSE SPT PSC SEC optional SE profile courses (third and fourth year) Figure 1: Course structure of our Software Engineering profile (computing science courses only).

3 stract data types. CSA is accompanied by a series of assignments, which range from simple in-lab exercises to complete programs. All assignments, but the simplest ones have to be submitted together with a complete documentation. During the second year the students take courses on Systems Programming (SP), Scientific Computing (SC1/2), Human-Computer Interaction (HCI), and Software Engineering (SE). SE splits into a traditional part and a project oriented part. It focuses on structured techniques and will be discussed in more detail in section 2.1. Furthermore students have some more maths courses and a course on Logic, Logic Programming and Computability (CS2). The first year and second year courses are compulsory for all students in our Computing Science programme. During their third and fourth year the students can specialize in several areas. In the software engineering profile we provide courses on Compiler Construction (CC1/2), Algorithm Analysis (AA), Operating Systems (OS), Databases (DB), Object-Oriented Software Engineering (OOSE), Semantics and Program Theory (SPT), Program Specification and Construction (PSC), and a conference like seminar (SEC). In the sequel of the paper we will focus on the core software engineering courses of the profile, that means SE, OOSE, and SEC. All of these courses have in common that they are practical courses. They are oriented towards concrete projects and consist of traditional lectures, formal (group) meetings, and presentations. All courses require more or less extensive documentation. 3 Courses outlines Our software engineering courses should be seen as a series of courses experiencing all software engineering related activities. Apart from the traditional software life-cycle oriented activities this includes project management, team dynamics, and the presentation of results and ongoing work. The SE and OOSE courses are geared towards practical software development, whereas the SEC course is geared towards research, that means it focuses on technical writing and presentation. In all courses the world wide web is used as a platform for information exchange. 3.1 The Basic Software Engineering Course SE is taught in two parts. Part one consists of traditional lectures, exercises, assignments, and a written exam. The second part of the course is team project oriented. See table 1 for the details of the course structure.

4 The goal of the course is to give students an introduction to the theory and practice of the software development process and all activities related to the development of large (software) projects ([3], [4]). The main purpose of the project part is to let the students experience that working in teams really adds another dimension to software development. To make things as realistic as possible, we have chosen a two-stage team structure, where each team itself is a member of a bigger team. In this project the students realize the importance of well-designed interfaces and reliable components. We think that this is a very important lesson. Students completely unexperienced in teamwork may experience big problems, when they join a big team for the first time. They realize that they do not have full control over the whole project and depend on others to fulfil an assigned task. week lecture topics assignments exercises project lectures: Software Life-Cycle Software Quality Project Planning Requirem Engineering 3 lectures: Requirem Engineering User Interface Design Software Design 2 lectures: Software Design Quality Assurance 2 lectures: Testing Version Control Project Management Structured Analysis 1 exercise: Lectures exercise: Lectures exercises: Lectures 7 9 Introduction 5 examination GUI design 6 GUI selection Group restructuring 7 Development 8 Development 9 Development 10 Final Presentations Prototype Demos Final Report Table 1: Structure of the basic Software Engineering (SE) course

5 The project part is subdivided into a graphical user interface (GUI) design part and a product prototyping part. For the GUI part the students form teams of 3 or 4 students and use a commercial GUI builder to develop a GUI prototype. From these prototypes we select some for further development. The teams are then grouped into larger teams to build a running prototype using the selected GUI as its interface. A teacher or teaching assistant is assigned to each main team to ensure that the project does not get out of control. All teams run the same project, that means that the teams compete against each other for the best results. This leads to interesting and very lively final presentations. Our two-stage team structure makes project organization very difficult. We therefore select a simple project to reduce the technical problems to a minimum. Simple in this case means that the problem is clearly defined and the problem domain is well-known to the students. Since the project part spans only 6 weeks the requirements engineering and architectural design phases are mainly left to the teachers and teaching assistants. 3.2 The Object-Oriented Software Engineering Course The OOSE course focuses on object-oriented analysis and design ([5]) and builds on the SE course described before. OOSE is a team project oriented course (see [6]) and strongly oriented towards the deliverables the students teams have to produce. See table 2 for the details of the course structure. Each team consists of 4 to 6 students and runs a whole project from the developement of a project plan to the presentation of a running prototype. Each team member fulfils the roles of one or more specialists, for example team manager, requirements specialist, an so on. The roles define responsibilities for one or more deliverables and/or presentations. This gives the lecturer some means to control that all students in a team do some work. During the project each team acts as a customer, as a contractor, and as a subcontractor. As a customer it proposes a project for selection by the other teams. During the requirements engineering phase the proposing team then has to negotiate requirements with a contracting team (the contractor). A team must not contract its own proposal. We introduced this restriction since students usually have big problems writing down requirements for their own ideas. In their heads most of the things are crystal clear. They therefore tend to produce incomplete requirements documents which are difficult to understand for others. During the project each team must subcontract another team for a small part of the prototype implementation. To do this each team designates a well-defined part of its design and

6 provides it with black-box test cases. These parts have then to be subcontracted by another team for implementation. This (again) confronts the teams with the importance of fixed and clear interfaces. This part is still not working perfectly due to the freedom we allow in choosing languages, tools, and application domains. It does therefore sometimes occur that there are no teams available, which are able to do the subcontracting. In the few cases this happened we allowed the teams to subcontract their own parts. Finally we require that each team evaluates another teams prototype to motivate the production of a user manual and to assist the lecturer in project evaluation. week lecture topics project deliverables due 1 2 lectures: Repetition Object-Oriented Analysis (OOA) Team Descriptions Project Proposals 2 Oral presentations of teams and proposals OOA continued 3 Example continued Object-Oriented Design Example continued Subtyping vs Inheritance Another Example More Inheritance Frameworks Design Heuristics Project Plans Requirements Documents Oral presentations of projects analysis and designs Design Heuristics continued Design Patterns Design Documents Test Plans Subcontracting Information Prototype User Manuals Prototype Demonstrations 10 Prototype Evaluations 11 Final Reports Table 2: Structure of the Object Oriented Software Engineering (OOSE) course. To ensure that useful proposals are available students teams are not required to take another teams proposal for the remainder of the course. They may also contract projects proposed by the teacher or teaching assistants of the course. To make the courses projects even more realistic, we are currently running two projects proposed by regional companies.

7 3.3 The Conference Course This course was designed to stimulate research and to improve the writing and presentation skills of our students. To make this course as attractive as possible we run it as a conference to give students a forum, where they can actively participate in research. The course is a practical course for those students interested in research and introduces students to independently researching an interesting topic, writing a scientific report on their work, and presenting their work at a conference. The course is open to all students with at least one successfully completed course in the computing sciences. This will hopefully give the course an interdisciplinary character. week 1 Course Introduction: Researching a topic 2 Writing a paper Giving talks 3 Preparation of contributions 4 Evaluation of contributions scheduled activity Extended Abstracts due 5 Notification of Acceptance 6 7 Preparation of final paper 8 9 Final Papers due 10 Preparation P of ftalks and posterst Publishing of proceedings 11 The Conference 4 Experiences Table 3: Schedule for the Conference Course (SEC). Participation had been about 40 students in the SE course and about 18 students in the OOSE course for the last three years. Due to some reorganization of our courses and increasing popularity participation has increased considerably for the fall 96 term (80 and 40 students resp). According to our experiences there are three critical elements for the success of a project oriented software engineering course: project management project type

8 tool support Since the SEC course will be taught in spring 97 for the first time, we can only discuss experiences from the SE and OOSE courses in this section. 4.1 Project Management Our experiences show that students have a lot of difficulties with project planning and intra- as well as inter-team communication. In our first SE project we did a library project with a graphical user interface. Since the user interface depends on most of the other parts of the system we assigned the user interface groups some of the project management tasks. This turned out to be a bad decision. It ended up with a very heavy work-load for these groups, since other groups where unwilling to help in parts integration. In the SE course project management is therefore mainly done by the lecturers to avoid a too uneven work load between groups. In addition we introduced an assignment into the traditional part to do project scheduling for the actual project to be run in the project part. In the OOSE course each team must produce a project plan (mainly consisting of project scheduling) as an early deliverable. Minutes of all team meetings have to be included into the final report to get some control over the decisions made, actual work distribution, etc. This has the effect that students take planning and communication quite seriously. It is our believe that planning and communication are impossible to teach in the classroom alone. Without project orientation there is no chance for the students to even recognize that these are one of the biggest problems in team projects. 4.2 Project Type Up to now we tested the following kinds of projects: Different kinds of editors, inventory systems, accounting systems, simulations, and die games, and an internet-based robot. Inventory and accounting systems are proposed very often as good examples for students projects. According to our experiences they are not very well-suited for courses on object-oriented analysis and design. Their basic architectures are too simple. They mainly consist of a simple database to keep track of some kinds of stocks or states of accounts and a user interface component. There usually is no real processing logic, or object behavior. Often the systems are simply some kind of data entry and viewing system. But object behavior modeling is a very important aspect of object-oriented analysis and design (independent of the actual method used). Therefore behavior modeling cannot be taught adequately in such

9 inventory and accounting systems. The application of use case analysis, scenario modeling, state transition diagrams, etc. is usually not needed to model the systems behavior. The students therefore avoid the usage of these techniques, since they only add complexity to the analysis and design phase. The other types of projects offer much more opportunities for behavior modeling, like for example the modeling of the rules of a game or the complex interactions of simulated (real world) objects. Games and simulations have two additional advantages. First the problems are easy to understand and it is very easy to convince students that requirements may change. You can very easily play through scenarios that show the effects of changing requirements. A very good example is to change the number and types of dice in a game. In doing so students can experience the importance of design, the planning for change, and reusability. Second and not less important, games and simulations are more fun to produce. 4.3 Tool Support Tools are very important for two reasons. First the students should be enabled to concentrate on the problem instead of wasting their time with the drawing of diagrams. And second the students should get a feeling for the type of tool they might use in industry. The problem with tool support is that there exist vast amounts of tools for every single step in a project, but these tools do not work smoothly together. What is needed is an integrated toolkit, which supports all basic software development activities, starting with project scheduling down to test case development, the edit-compile-debug cycle, version control, and documentation generation. The SE projects run under UNIX and C/C++ and we provide the students with an edit-compile-debug environment and a GUI toolkit. The students already know C and the edit-compile-debug environment from previous courses. Knowledge in C++ is advantageous, since the GUI toolkit generates C++ code. In the OOSE course the students may choose platform, language, and tools freely. The notation for doing analysis and design however is fixed ([5]) and a tool is provided to support object-oriented analysis and design. In both courses WWW and are heavily used for communication and distribution of information. 5 Conclusions The software engineering profile at Umeå University give a broad introduction to theory and practice of software development. Students run non-trivial team-oriented projects in their second and third year.

10 In our opinion such courses are needed, since several important topics cannot be taught in the classroom alone, like project management, coping with complexity, and working in teams. Although most of the students like how the SE and OOSE courses are organized, there are some recurring complaints. These are too tight schedules, too much programming, and we need better tools, and all of them are justifiable. The projects actually have tight schedules, but this is necessary to embed them into our existing overall course structure. That the projects consist of a lot of programming is correct too. The students often add to their complaints that they do not need another programming course, but would like to concentrate on analysis and design. In our opinion programming and testing are necessary to proof a designs quality and if it is implementable at all. Without programming the degree of freedom during design is too big and design decisions do not have any disastrous consequences for the coding phase. In both courses the students may use languages, which are not part of the courses prerequisites. Doing so had pragmatic reasons. In the SE course we did not find any GUI toolkit generating C and could not install the preferred one for Pascal (due to platform problems, but this will be better next year). In the OOSE course students may choose languages almost freely and therefore often test something new, like for example Java. That better tool are needed do we all know. Unfortunately this is not only a question of availability, but also of pricing. Most project management tools or integrated environments are simply far too expensive for educational purposes. References [1] M. Moore, C. Potts, Learning by Doing: Goals and Experiences of Two Software Engineering Project Courses, Technical Report, Georgia Institute of Technology, [2] B.T. Mynatt, Software Engineering with Student Project Guidance, Prentice-Hall, [3] R. S. Pressman, Software Engineering, A Practitioner s Approach, European edition, McGraw-Hill, [4] W. S. Humphrey, A Discipline for Software Engineering, Addison-Wesley, [5] G. Booch, Object-Oriented Analysis and Design, with Applications, 2nd ed., Benjamin/Cummings, [6] J. Börstler, Experiences from a Project Oriented Software Engineering Course, Technical Report UMINF 95.27, Umeå University, Umeå, Sweden, 1995.

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 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

More information

IT3203 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3

IT3203 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3 INTRODUCTION This course is designed to provide the students with the basic competencies required to identify requirements, document

More information

COMPUTER SCIENCE. FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa

COMPUTER SCIENCE. FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa COMPUTER SCIENCE Computer Science is the study of computer programs, abstract models of computers, and applications of computing.

More information

Five High Order Thinking Skills

Five High Order Thinking Skills Five High Order Introduction The high technology like computers and calculators has profoundly changed the world of mathematics education. It is not only what aspects of mathematics are essential for learning,

More information

page 1 (9) Design Connections One-year course, 60 credits Umeå Institute of Design Umeå Arts Campus

page 1 (9) Design Connections One-year course, 60 credits Umeå Institute of Design Umeå Arts Campus page 1 (9) Design Connections One-year course, 60 credits Umeå Institute of Design Umeå Arts Campus page 2 (9) Umeå Institute of Design In the far north of Sweden, in Umeå, one of the top industrial design

More information

Experience in Early and Late Software Engineering Project Courses

Experience in Early and Late Software Engineering Project Courses Experience in Early and Late Engineering Project Courses Birgit Demuth, Mike Fischer and Heinrich Hussmann Department of Computer Science Dresden University of Technology D-01062 Dresden, Germany {Birgit.Demuth,

More information

Guide to the MSCS Program Sheet

Guide to the MSCS Program Sheet Guide to the MSCS Program Sheet Eric Roberts (revisions by Claire Stager) September 2008 Welcome to the Stanford Computer Science Department! This guide is designed to help you understand the requirements

More information

INTERBUSSINES ACADEMY LTD. Business Administration. Bachelor's Program

INTERBUSSINES ACADEMY LTD. Business Administration. Bachelor's Program INTERBUSSINES ACADEMY LTD Business Administration Bachelor's Program Tbilisi 2014 Program name business administration Direction: 02 business administration Educational program Type/Model academic/major

More information

Draft dpt for MEng Electronics and Computer Science

Draft 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 information

CS 40 Computing for the Web

CS 40 Computing for the Web CS 40 Computing for the Web Art Lee January 20, 2015 Announcements Course web on Sakai Homework assignments submit them on Sakai Email me the survey: See the Announcements page on the course web for instructions

More information

Programming Languages

Programming 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 information

Faculty of Engineering and Science Curriculum - Aalborg University

Faculty of Engineering and Science Curriculum - Aalborg University Faculty of Engineering and Science Board of Studies for Computer Science Curriculum for the master s programme in Information Technology (Software Development) Aalborg University, September 2012 The programme

More information

Science teachers pedagogical studies in Finland

Science teachers pedagogical studies in Finland 1 Science teachers pedagogical studies in Finland Jari Lavonen Summary An overview of planning, organising and evaluating of science teachers pedagogical studies in Finland is given. Examples are from

More information

Agreement on. Dual Degree Master Program in Computer Science KAIST. Technische Universität Berlin

Agreement on. Dual Degree Master Program in Computer Science KAIST. Technische Universität Berlin Agreement on Dual Degree Master Program in Computer Science between KAIST Department of Computer Science and Technische Universität Berlin Fakultät für Elektrotechnik und Informatik (Fakultät IV) 1 1 Subject

More information

DoQuP project. WP.1 - Definition and implementation of an on-line documentation system for quality assurance of study programmes in partner countries

DoQuP project. WP.1 - Definition and implementation of an on-line documentation system for quality assurance of study programmes in partner countries DoQuP project WP.1 - Definition and implementation of an on-line documentation system for quality assurance of study programmes in partner countries Deliverable 1.3 - Methodologies and procedures of definition,

More information

Software Engineering Transfer Degree

Software 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 information

Chap 1. Introduction to Software Architecture

Chap 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 information

University of Calgary Schulich School of Engineering Department of Electrical and Computer Engineering

University of Calgary Schulich School of Engineering Department of Electrical and Computer Engineering University of Calgary Schulich School of Engineering Department of Electrical and Computer Engineering Research Area: Software Engineering Thesis Topics proposed by Dr. Dietmar Pfahl, Assistant Professor

More information

Software Design. Learning Guide Information for Students. 1. Description

Software Design. Learning Guide Information for Students. 1. Description Software Design Learning Guide Information for Students 1. Description Grade Máster Universitario en Ingeniería de Software/ European Master on Software Engineering Module Area Subject Software Development

More information

MEng, BSc Computer Science with Artificial Intelligence

MEng, 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 information

2. Analysis, Design and Implementation

2. Analysis, Design and Implementation 2. Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Individual Programs to Complete Application Systems Software Development: Goals, Tasks, Actors,

More information

Guide to the MSCS Program Sheet

Guide 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 information

Igniting young minds through computer programming

Igniting young minds through computer programming Igniting young minds through computer programming igniting young minds W riting computer programs is a challenging, yet extremely satisfying personal experience that develops essential skills in logic,

More information

Abstraction in Computer Science & Software Engineering: A Pedagogical Perspective

Abstraction in Computer Science & Software Engineering: A Pedagogical Perspective Orit Hazzan's Column Abstraction in Computer Science & Software Engineering: A Pedagogical Perspective This column is coauthored with Jeff Kramer, Department of Computing, Imperial College, London ABSTRACT

More information

School of Computer Science

School 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 information

FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY AUTUMN 2016 BACHELOR COURSES

FACULTY 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 information

GOAL-BASED INTELLIGENT AGENTS

GOAL-BASED INTELLIGENT AGENTS International Journal of Information Technology, Vol. 9 No. 1 GOAL-BASED INTELLIGENT AGENTS Zhiqi Shen, Robert Gay and Xuehong Tao ICIS, School of EEE, Nanyang Technological University, Singapore 639798

More information

Datavetenskapligt Program (kandidat) Computer Science Programme (master)

Datavetenskapligt 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 information

Description of the program

Description of the program Study program Faculty Cycle Software Engineering Contemporary Sciences and Technologies Postgraduate ECTS 120 Offered in Tetovo Description of the program The Masters programme in Software Engineering

More information

SYSTEMS, CONTROL AND MECHATRONICS

SYSTEMS, CONTROL AND MECHATRONICS 2015 Master s programme SYSTEMS, CONTROL AND MECHATRONICS INTRODUCTION Technical, be they small consumer or medical devices or large production processes, increasingly employ electronics and computers

More information

Programme Specification for the. Cardiff Metropolitan University. Master of Science (MSc) in Information Technology

Programme Specification for the. Cardiff Metropolitan University. Master of Science (MSc) in Information Technology LONDON SCHOOL OF COMMERCE Programme Specification for the Cardiff Metropolitan University Master of Science (MSc) in Information Technology Contents Programme Aims and Objectives 3 Programme Structure

More information

Module Handbook for the Master Degree Programme "Intercultural Communication and European Studies (ICEUS)

Module Handbook for the Master Degree Programme Intercultural Communication and European Studies (ICEUS) Module Handbook for the Master Degree Programme "Intercultural Communication and European Studies (ICEUS) M 1 Communication, Intercultural Communication and Understanding the Cultural Other Learning Objectives:

More information

Institute of Research on Information Systems (IRIS) Course Overview

Institute of Research on Information Systems (IRIS) Course Overview Department of Supply Chain Management, Information Systems & Innovation Institute of Research on Information Systems (IRIS) Course Overview BACHELOR PROGRAM COURSES... 2 INFORMATION SYSTEMS DEVELOPMENT...

More information

CREDENTIALS & CERTIFICATIONS 2015

CREDENTIALS & CERTIFICATIONS 2015 THE COMMUNITY FOR TECHNOLOGY LEADERS www.computer.org CREDENTIALS & CERTIFICATIONS 2015 KEYS TO PROFESSIONAL SUCCESS CONTENTS SWEBOK KNOWLEDGE AREA CERTIFICATES Software Requirements 3 Software Design

More information

Teaching HCI in SE Curriculum

Teaching HCI in SE Curriculum Proceedings of the 4th WSEAS/IASME International Conference on Engineering Education, Agios Nikolaos, Crete Island, Greece, July 24-26, 2007 236 Teaching HCI in SE Curriculum KRISTINA MOROZ LAPIN, SAULIUS

More information

Final Year Projects at itm. Topics 2010/2011

Final Year Projects at itm. Topics 2010/2011 Final Year Projects at itm Topics 2010/2011 Chair of Information Technology in Mechanical Engineering Prof. Dr.-Ing. B. Vogel-Heuser Prof. Dr.-Ing. Frank Schiller Prof. Dr.-Ing. Klaus Bender Technische

More information

MEng, BSc Applied Computer Science

MEng, 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 information

Why process models? Topic 3 Software process models. 3. Process models. What is a process model?

Why process models? Topic 3 Software process models. 3. Process models. What is a process model? Why process models? Topic 3 Software process models SE is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software... (IEEE Standard

More information

AC 2008-1581: A COURSE SEQUENCE FOR INTEGRATING PROBLEM SOLVING AND CRITICAL THINKING IN A HYBRID OUTCOME-BASED IS/IT CURRICULUM

AC 2008-1581: A COURSE SEQUENCE FOR INTEGRATING PROBLEM SOLVING AND CRITICAL THINKING IN A HYBRID OUTCOME-BASED IS/IT CURRICULUM AC 2008-1581: A COURSE SEQUENCE FOR INTEGRATING PROBLEM SOLVING AND CRITICAL THINKING IN A HYBRID OUTCOME-BASED IS/IT CURRICULUM Azzedine Lansari, Zayed University Azzedine Lansari received a Ph.D. from

More information

Basic Trends of Modern Software Development

Basic 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 information

LONDON SCHOOL OF COMMERCE. Programme Specification for the. Cardiff Metropolitan University. BSc (Hons) in Computing

LONDON SCHOOL OF COMMERCE. Programme Specification for the. Cardiff Metropolitan University. BSc (Hons) in Computing LONDON SCHOOL OF COMMERCE Programme Specification for the Cardiff Metropolitan University BSc (Hons) in Computing Contents Programme Aims and Objectives Programme Structure Programme Outcomes Mapping of

More information

COURSE DESCRIPTIONS IN MANAGEMENT

COURSE DESCRIPTIONS IN MANAGEMENT COURSE DESCRIPTIONS IN MANAGEMENT MIS 241. Introduction to Management Information Systems Credit 3(3-0) This course is an introduction to management information systems and their role in supporting and

More information

Evaluating OO-CASE tools: OO research meets practice

Evaluating OO-CASE tools: OO research meets practice Evaluating OO-CASE tools: OO research meets practice Danny Greefhorst, Matthijs Maat, Rob Maijers {greefhorst, maat, maijers}@serc.nl Software Engineering Research Centre - SERC PO Box 424 3500 AK Utrecht

More information

Undergraduate education part of the development plan of KTH CSC June 2008

Undergraduate education part of the development plan of KTH CSC June 2008 Undergraduate education part of the development plan of KTH CSC June 2008 Programmes The aim of the Master of Science in Engineering program in Computer Science and Engineering is to give graduate engineers

More information

PROGRAMME SYLLABUS Master of Science in Product Development, specialisation Software Product Engineering, 120 credits

PROGRAMME SYLLABUS Master of Science in Product Development, specialisation Software Product Engineering, 120 credits PROGRAMME SYLLABUS Master of Science in Product, specialisation Software Product Engineering, 120 Programmestart: Autumn 2015 School of Engineering, Box 1026, SE-551 11 Jönköping VISIT Gjuterigatan 5,

More information

A 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 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 information

Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology

Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology Peter Mileff PhD SOFTWARE ENGINEERING The Basics of Software Engineering University of Miskolc Department of Information Technology Introduction Péter Mileff - Department of Information Engineering Room

More information

Reflection Report International Semester

Reflection Report International Semester Reflection Report International Semester Studying abroad at KTH Royal Institute of Technology Stockholm 18-01-2011 Chapter 1: Personal Information Name and surname: Arts, Rick G. B. E-mail address: Department:

More information

Integration of Mathematical Concepts in the Computer Science, Information Technology and Management Information Science Curriculum

Integration of Mathematical Concepts in the Computer Science, Information Technology and Management Information Science Curriculum Integration of Mathematical Concepts in the Computer Science, Information Technology and Management Information Science Curriculum Donald Heier, Kathryn Lemm, Mary Reed, Erik Sand Department of Computer

More information

Managing Variability in Software Architectures 1 Felix Bachmann*

Managing Variability in Software Architectures 1 Felix Bachmann* Managing Variability in Software Architectures Felix Bachmann* Carnegie Bosch Institute Carnegie Mellon University Pittsburgh, Pa 523, USA fb@sei.cmu.edu Len Bass Software Engineering Institute Carnegie

More information

Person Responsible for Module (Name, Mail address): I&E UNS coordinator, Cédric Ulmer. Department: Computer science, Faculty of Science

Person Responsible for Module (Name, Mail address): I&E UNS coordinator, Cédric Ulmer. Department: Computer science, Faculty of Science Name of Module: Business Development labs I&E Credit Points (ECTS): 9 Module-ID: SMZII1E (for 2 ECTS) in semester 1, and a new course (for 7 ECTS) in semester 2 to be created Person Responsible for Module

More information

C. Wohlin and B. Regnell, "Achieving Industrial Relevance in Software Engineering Education", Proceedings Conference on Software Engineering

C. Wohlin and B. Regnell, Achieving Industrial Relevance in Software Engineering Education, Proceedings Conference on Software Engineering C. Wohlin and B. Regnell, "Achieving Industrial Relevance in Software Engineering Education", Proceedings Conference on Software Engineering Education & Training, pp. 16-25, New Orleans, Lousiana, USA,

More information

CHEMICAL EDUCATION AND NEW EDUCATIONAL TECHNOLOGIES : AN INTER-UNIVERSITY PROGRAM FOR GRADUATE STUDIES

CHEMICAL EDUCATION AND NEW EDUCATIONAL TECHNOLOGIES : AN INTER-UNIVERSITY PROGRAM FOR GRADUATE STUDIES CHEMISTRY EDUCATION: RESEARCH AND PRACTICE IN EUROPE 2000, Vol. 1, No. 3, pp. 405-410 THE PRACTICE OF CHEMISTRY EDUCATION (REPORT) Teacher education and training Chryssa TZOUGRAKI, 1 Michael P. SIGALAS,

More information

DIABLO VALLEY COLLEGE CATALOG 2014-2015

DIABLO VALLEY COLLEGE CATALOG 2014-2015 COMPUTER SCIENCE COMSC The computer science department offers courses in three general areas, each targeted to serve students with specific needs: 1. General education students seeking a computer literacy

More information

The B.S. Degree Program in Information Systems

The B.S. Degree Program in Information Systems 1 Prince Sultan University College of Computer and Information Sciences Department of Information Systems The B.S. Degree Program in Information Systems 2010/2011 2 Introduction The Information Systems

More information

02-201: Programming for Scientists

02-201: Programming for Scientists 1. Course Information 1.1 Course description 02-201: Programming for Scientists Carl Kingsford Fall 2015 Provides a practical introduction to programming for students with little or no prior programming

More information

Computer Science Electives and Clusters

Computer Science Electives and Clusters Course Number CSCI- Computer Science Electives and Clusters Computer Science electives belong to one or more groupings called clusters. Undergraduate students with the proper prerequisites are permitted

More information

For students entering Part 1 in 2012/3. Relevant QAA subject Benchmarking group(s): Programme length:

For students entering Part 1 in 2012/3. Relevant QAA subject Benchmarking group(s): Programme length: BSc Computer Science For students entering Part 1 in 2012/3 Awarding Institution: Teaching Institution: Relevant QAA subject Benchmarking group(s): Faculty: Programme length: Date of specification: Programme

More information

Bachelor of Information Technology (Incorporating Diploma in Information Technology (Levels 5 and 6)

Bachelor of Information Technology (Incorporating Diploma in Information Technology (Levels 5 and 6) Bachelor of Information Technology (Incorporating Diploma in Information Technology (Levels 5 and 6) Programme Structure STAGE ONE This stage makes up the Diploma in Information Technology (Level 5) 120

More information

CREDENTIALS & CERTIFICATIONS 2016

CREDENTIALS & CERTIFICATIONS 2016 THE COMMUNITY FOR TECHNOLOGY LEADERS www.computer.org CREDENTIALS & CERTIFICATIONS 2016 KEYS TO PROFESSIONAL SUCCESS CONTENTS SWEBOK KNOWLEDGE AREA CERTIFICATES Software Requirements 5 Software Design

More information

Current requirements for a major (page 83 of current catalog)

Current requirements for a major (page 83 of current catalog) To present the proposal of the Department of Mathematics and Computer Science for changing the requirements for a major in Computer Science, we first describe the current major requirements followed by

More information

Supporting an Information Systems Curriculum with a Management Science Course. Scott J. Seipel *

Supporting an Information Systems Curriculum with a Management Science Course. Scott J. Seipel * Supporting an Information Systems Curriculum with a Management Science Course Abstract Scott J. Seipel * The development of skills directly pertaining to information systems (IS) is often perceived as

More information

LECTURE 1. SYSTEMS DEVELOPMENT

LECTURE 1. SYSTEMS DEVELOPMENT LECTURE 1. SYSTEMS DEVELOPMENT 1.1 INFORMATION SYSTEMS System A system is an interrelated set of business procedures used within one business unit working together for a purpose A system has nine characteristics

More information

LOUGHBOROUGH UNIVERSITY

LOUGHBOROUGH UNIVERSITY LOUGHBOROUGH UNIVERSITY Programme Specification Computer Science Please note: This specification provides a concise summary of the main features of the programme and the learning outcomes that a typical

More information

BSc Systems Engineering For students entering Part 1 in 2004

BSc Systems Engineering For students entering Part 1 in 2004 BSc Systems Engineering For students entering Part 1 in 2004 UCAS code: H650 Awarding Institution: The University of Reading Teaching Institution: The University of Reading Relevant QAA subject benchmarking

More information

2. Basis for computing design and implementation at all levels through OS, distributed systems, human interface and computer graphics.

2. Basis for computing design and implementation at all levels through OS, distributed systems, human interface and computer graphics. School of Science 1 Awarding institution Bangor University 2 Teaching institution Bangor University 3 Programme accredited by BCS 4 Final award BSc (Hons) 5 Programme Science 6 UCAS code G400 7 QAA subject

More information

Maturity, motivation and effective learning in projects - benefits from using industrial clients

Maturity, motivation and effective learning in projects - benefits from using industrial clients Maturity, motivation and effective learning in projects - benefits from using industrial clients C Johansson Ericsson Software Technology AB/University of Karlskrona/Ronneby P Molin University of Karlskrona/Ronneby,

More information

Object-oriented design methodologies

Object-oriented design methodologies Object-oriented design methodologies An object-oriented methodology is defined as the system of principles and procedures applied to object-oriented software development. Five years ago, there was no standard

More information

Java in Education. Choosing appropriate tool for creating multimedia is the first step in multimedia design

Java in Education. Choosing appropriate tool for creating multimedia is the first step in multimedia design Java in Education Introduction Choosing appropriate tool for creating multimedia is the first step in multimedia design and production. Various tools that are used by educators, designers and programmers

More information

Computer and Information Sciences

Computer and Information Sciences Computer and Information Sciences Dr. John S. Eickmeyer, Chairperson Computers are no longer huge machines hidden away in protected rooms and accessible to only a few highly-trained individuals. Instead,

More information

TEACHING PROJECT COURSES IN LARGE SCALE USING INDUSTRY LIKE METHODS EXPERIENCES AFTER TEN YEARS

TEACHING PROJECT COURSES IN LARGE SCALE USING INDUSTRY LIKE METHODS EXPERIENCES AFTER TEN YEARS TEACHING PROJECT COURSES IN LARGE SCALE USING INDUSTRY LIKE METHODS EXPERIENCES AFTER TEN YEARS Tomas Svensson, Svante Gunnarsson Linköping University, Sweden ABSTRACT A Design-Build-Test (DBT) project

More information

Doctor of Philosophy in Informatics

Doctor of Philosophy in Informatics Doctor of Philosophy in Informatics 2014 Handbook Indiana University established the School of Informatics and Computing as a place where innovative multidisciplinary programs could thrive, a program where

More information

The Software Industry and Software Engineering

The Software Industry and Software Engineering The Software Industry and Software Engineering Dror Feitelson Basic Seminar on Software Engineering Hebrew University 2009 What Software Did You Use Today? We are usually unaware of most software... What

More information

DEVELOPMENT OF PROJECT DOCUMENTATION: KEY INGREDIENT IN TEACHING SYSTEMS ANALYSIS AND DESIGN

DEVELOPMENT OF PROJECT DOCUMENTATION: KEY INGREDIENT IN TEACHING SYSTEMS ANALYSIS AND DESIGN DEVELOPMENT OF PROJECT DOCUMENTATION: KEY INGREDIENT IN TEACHING SYSTEMS ANALYSIS AND DESIGN Mohammad A. Rob, University of Houston Clear Lake, rob@uhcl.edu ABSTRACT Systems Analysis and Design (SAD) is

More information

Qualification details

Qualification details Qualification details Title New Zealand Diploma in Information Systems (Level 5) Version 1 Qualification type Diploma Level 5 Credits 120 NZSCED 020399 Information Technology > Information Systems > Information

More information

Information Technology in teaching student s perspective

Information Technology in teaching student s perspective Educational mini-project Wojciech Krajewski Sonchita Bagchi Information Technology in teaching student s perspective Introduction The nature of teaching has virtually been unaltered throughout centuries,

More information

Systems Engineering with RUP: Process Adoption in the Aerospace/ Defense Industry

Systems Engineering with RUP: Process Adoption in the Aerospace/ Defense Industry March 2004 Rational Systems Engineering with RUP: Process Adoption in the Aerospace/ Defense Industry Why companies do it, how they do it, and what they get for their effort By Dave Brown, Karla Ducharme,

More information

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN INFORMATION TECHNOLOGY IN EDUCATION (MSc[ITE])

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN INFORMATION TECHNOLOGY IN EDUCATION (MSc[ITE]) 229 REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN INFORMATION TECHNOLOGY IN EDUCATION (MSc[ITE]) (See also General Regulations) Any publication based on work approved for a higher degree should contain

More information

Policy for the Organization of Curricula for Undergraduate Degrees. Policy for the Management of Curricula for Undergraduate Degrees

Policy for the Organization of Curricula for Undergraduate Degrees. Policy for the Management of Curricula for Undergraduate Degrees Nishikyushu University Policy for the Organization of Curricula for Undergraduate Degrees 1. In order to achieve the educational objectives of its faculties and departments, Nishikyushu University shall

More information

Masters in Human Computer Interaction

Masters in Human Computer Interaction Masters in Human Computer Interaction Programme Requirements Taught Element, and PG Diploma in Human Computer Interaction: 120 credits: IS5101 CS5001 CS5040 CS5041 CS5042 or CS5044 up to 30 credits from

More information

Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting

Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting petemcbreen@acm.org All rights reserved. You have permission to copy and distribute the document as long as you make no changes

More information

Masters in Advanced Computer Science

Masters in Advanced Computer Science Masters in Advanced Computer Science Programme Requirements Taught Element, and PG Diploma in Advanced Computer Science: 120 credits: IS5101 CS5001 up to 30 credits from CS4100 - CS4450, subject to appropriate

More information

Requirements Engineering Process for Sales Management System Case study: Tin Phong Trading Co., Ltd. Thanh Duc Tang

Requirements Engineering Process for Sales Management System Case study: Tin Phong Trading Co., Ltd. Thanh Duc Tang Requirements Engineering Process for Sales Management System Case study: Tin Phong Trading Co., Ltd. Thanh Duc Tang Thesis report Business Information Technology 2009 Abstract 10.02.2009 Business Information

More information

The Master s Degree Programme in. Digital Design

The Master s Degree Programme in. Digital Design Academic regulations for The Master s Degree Programme in Digital Design THE FACULTY OF HUMANITIES THE UNIVERSITY OF AARHUS 2008 1. Framework Conditions Title Prepared by Digital design Master s Degree

More information

Real-World Object-Oriented Design Experience for Computer Science Students

Real-World Object-Oriented Design Experience for Computer Science Students Real-World Object-Oriented Design Experience for Computer Science Students Abstract Due to the limitations of time and resources, many undergraduate Software Engineering courses provide a survey of a broad

More information

Design Patterns for Complex Event Processing

Design Patterns for Complex Event Processing Design Patterns for Complex Event Processing Adrian Paschke BioTec Center, Technical University Dresden, 01307 Dresden, Germany adrian.paschke AT biotec.tu-dresden.de ABSTRACT Currently engineering efficient

More information

Masters in Artificial Intelligence

Masters in Artificial Intelligence Masters in Artificial Intelligence Programme Requirements Taught Element, and PG Diploma in Artificial Intelligence: 120 credits: IS5101 CS5001 CS5010 CS5011 CS4402 or CS5012 in total, up to 30 credits

More information

A Design Paradigm in Undergraduate Electrical Engineering Curriculum

A Design Paradigm in Undergraduate Electrical Engineering Curriculum A Design Paradigm in Undergraduate Electrical Engineering Curriculum Habib Rahman Saint Louis University Department of Electrical and Computer Engineering McDonnell Douglas Hall, 3450 Lindell Boulevard

More information

MASTER OF PHILOSOPHY IN RISK PSYCHOLOGY, ENVIRONMENT AND SAFETY

MASTER OF PHILOSOPHY IN RISK PSYCHOLOGY, ENVIRONMENT AND SAFETY MPHIL IN RISK PSYCHOLOGY, ENVIRONMENT AND SAFETY SIDE 575 MASTER OF PHILOSOPHY IN RISK PSYCHOLOGY, ENVIRONMENT AND SAFETY Approved by the Board of NTNU 01.10.2008, with changes made by the Faculty of Social

More information

Course Syllabus. Upon completion of all six modules, participants will have:

Course Syllabus. Upon completion of all six modules, participants will have: Course Syllabus COURSE Health Informatics (101) Introduction to Health Informatics (101) COURSE DESCRIPTION Introduction to Health Informatics (101) offers an overview of the field of health informatics

More information

1st semester Common Core subjects taught to all classes

1st semester Common Core subjects taught to all classes Course Description Purchasing Management/AP Degree in Business, Design and Technology Common Core projects done by all students from all lines in the 1 st, 2 nd and 3 rd semesters TEKO project (1 st semester)

More information

DOVER-SHERBORN HIGH SCHOOL PROGRAM OF STUDIES

DOVER-SHERBORN HIGH SCHOOL PROGRAM OF STUDIES DOVER-SHERBORN HIGH SCHOOL PROGRAM OF STUDIES 2014-2015 Educational Technologies Intro to Computer Applications Computer Graphics Astronomy Web Design & Development Intro to Programming (Visual Basic)

More information

CS 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) 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 information

Chapter 13: Program Development and Programming Languages

Chapter 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 information

Masters of Science in Software & Information Systems

Masters of Science in Software & Information Systems Masters of Science in Software & Information Systems To be developed and delivered in conjunction with Regis University, School for Professional Studies Object Oriented Design Table of Contents January

More information

LONG BEACH CITY COLLEGE MEMORANDUM

LONG 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 information

SCHOOL OF ELECTRONICS AND COMPUTER SCIENCE

SCHOOL OF ELECTRONICS AND COMPUTER SCIENCE SCHOOL OF ELECTRONICS AND COMPUTER SCIENCE Information systems and software engineering are the key disciplines that ensure effective modelling, definition of requirements and specification, and the efficient

More information

ENGINEERING AND TECHNOLOGY EDUCATION DEPARTMENT

ENGINEERING AND TECHNOLOGY EDUCATION DEPARTMENT ENGINEERING AND TECHNOLOGY EDUCATION DEPARTMENT Advanced Manufacturing I 5608 TEH600, TEH601 Grades 10-12 Dual credit through Ivy Tech Recommended Prerequisite: Introduction to Advanced Manufacturing and

More information