Advanced Software Engineering. Agenda Syllabus Review of Software Engineering Concepts UML.

Slides:



Advertisements
Similar presentations
SE curriculum in CC2001 made by IEEE and ACM: Overview and Ideas for Our Work Katerina Zdravkova Institute of Informatics
Advertisements

General information CSE 230 : Introduction to Software Engineering
Software Engineering About the Course Software Engineering Qutaibah Malluhi Computer Science and Engineering Department Qatar University.
CSE 322: Software Reliability Engineering Topics covered: Course outline and schedule Introduction, Motivation and Basic Concepts.
CSC 171 – FALL 2004 COMPUTER PROGRAMMING LECTURE 0 ADMINISTRATION.
Marcelo Santos – OOAD-CDT309, Spring 2008, IDE-MdH Object-Oriented Analysis and Design - CDT309 Period 4, Spring 2008 Introduction.
1 EEL 6935: Embedded Systems Seminar. 2 General Information Instructor: Ann Gordon-Ross Office: Benton Office Hours – By appointment.
CSCI 347 – Data Mining Lecture 01 – Course Overview.
Understanding data communications Taekyoung Kwon
1 Requirements Analysis and Design Engineering Southern Methodist University CSE 7313.
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang.
© Yilmaz “Agent-Directed Simulation – Course Outline” 1 Course Outline Dr. Levent Yilmaz M&SNet: Auburn M&S Laboratory Computer Science &
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang.
Course Introduction Software Engineering
(EE429) First day Course Materials Assistant Prof. Dr. Anwar Hassan Selected Topics Communications.
CEN 4010 First Lecture January 9, 2006 CEN 4010 Introduction to Software Engineering Spring 2006 Instructor: Masoud Sadjadi
Facility Planning and Material Handling. Today’s Agenda Information on syllabus Office hours Text Grading Exams & Homework Class format Introductory lecture.
Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering Foundations.
MRKT 370 – PRINCIPLES OF MARKETING FALL 2003 Dr. Ugur Yucelt Office Phone: Class Time: MW: 12:30-1:45 Office hours: MW:2:00-6:00 pm
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang.
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang.
EEE499 Real-Time Embedded Systems Introduction & Course Outline.
CEN First Lecture CEN 4010 Introduction to Software Engineering Instructor: Masoud Sadjadi
Object Oriented Programming (FIT-II) J. H. Wang Jan. 31, 2008.
01 - Course Intro.CSC4071 CSC407F Software Architecture & Design Prof. Penny LP396C
Advanced Software Engineering. Agenda Syllabus Review of Software Engineering Concepts UML Literature Review Project Self-introduction.
Computer Networks CNT5106C
CSC4320/6320 Operating Systems.  Instructor: Xiaolin Hu   Phone:  Office: 25 Park Place Building,
CSE Wireless and Adhoc networks Instructor: Ayman Alharbi Computer Engineering Dept. (Head of dept. ) Why ?
Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering.
Advanced Software Engineering. Agenda Syllabus Review of Software Engineering Concepts UML.
Advanced Programing practices
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview
Computer Network Fundamentals CNT4007C
Welcome to CS 4390/CS5381: Introduction to Formal Methods
Advanced Software Engineering
INTERNATIONAL BURCH UNIVERSITY
Computer Engineering Department Islamic University of Gaza
Software Engineering (1)
CSc 1302 Principles of Computer Science II
Software Requirements
Course Introduction 공학대학원 데이타베이스
Syllabus Introduction to Computer Science
Advanced Programming Dr. Sadi Seker.
Lecture 0 Software Engineering Course Introduction
Advanced Software Engineering
CSc 4350 / CSc 6350 SOFTWARE ENGINEERING Fall, 2007
Computer Networks CNT5106C
CSE305 Software Engineering
EEL 6686: Embedded Systems Seminar
CSc 4350 / CSc 6350 SOFTWARE ENGINEERING Fall, 2005
Mobile Ad hoc Networks (Spring 2003)
Course Overview CSE8313 Object-Oriented Analysis and Design
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview
Princess Nora University Faculty of Computer & Information Systems
CS 201 – Data Structures and Discrete Mathematics I
Computer Networks CNT5106C
Lecture 1: Introduction
ENG3380 Computer Organization
System Analysis and Design 2
EE422C Software Design and Implementation II
Teaching Functional Verification – Course Organization
Nonlinear Dynamic Control Systems
Term Dr Abdelhafid Bouhraoua
Computer Networks CNT5106C
Princess Nora University Faculty of Computer & Information Systems
System Analysis and Design 2
Computer Engineering Department Islamic University of Gaza
Term Dr Abdelhafid Bouhraoua
CPE 626 Advanced VLSI Design, Spring 2002 Admin
Presentation transcript:

Advanced Software Engineering

Agenda Syllabus Review of Software Engineering Concepts UML

CSc 8350 ADVANCED SOFTWARE ENGINEERING  Instructor: Xiaolin Hu   Phone:  Office: One Park Tower 1438  Hours: Mon, Wed 10:00-11:30am or by appt  TAs: TBD Prerequisites: CSC 4350/6350 Software Engineering or equivalent  Course Web Page:

Textbooks  Textbook E. Gamma, R. Helm, R. Johnson, J. Vlissides, “Design Patterns”, Addison- Wesley, 1995 The literature  Journals:  ACM Transactions on Software Engineering and Methodology (TOSEM) ACM Transactions on Software Engineering and Methodology (TOSEM)  IEEE Transactions on Software Engineering (TSE) IEEE Transactions on Software Engineering (TSE)  Annals of Software Engineering (Kluwer) Annals of Software Engineering  Automated Software Engineering (Kluwer) Automated Software Engineering  International Journal of Software Engineering and Knowledge Engineering (IJSEKE) (World Scientific) International Journal of Software Engineering and Knowledge Engineering (IJSEKE)  CROSSTALK: The Journal of Defense Software Engineering CROSSTALK: The Journal of Defense Software Engineering  etc.

The course… is not about  Programming  Software Project Developing is about  Design  Modeling  Research So, What is modeling?

Credit: Slides from Daniel Westreich Department of epidemiology UNC-Chapel Hill

How is this related to software? From the design point of view, a software system has two (three) aspects:  Structure (architecture)  Behavior  Data – for data intensive systems Given a description of a software system to be developed, such as the software running on you cell phone, how do you develop the software? How do you design the structure/behavior of the software? How these are handled in UML?

Objectives of the Class To enable students to (1) comprehend and appreciate software reuse and design patterns; (2) understand a variety of advanced research topics in software engineering; (3) learn and employ discrete event system specification (DEVS) and understand its relationship to software design and verification; (4) conduct literature research on specific topics and give professional presentations.

Content of the course The contents of the course are roughly divided into three parts (please refer to the schedule of lectures) 1) Software reuse and design patterns. 2) System modeling and design as exemplified by Discrete Event System Specification (DEVS). 3) Advanced research topics in software engineering.  For the “advanced topic” part, students will research related literature and present the results to the entire class.  The course will be conducted in a seminar format.

What is DEVS?  DEVS stands for Discrete Event System Specification  The DEVS formalism is based on dynamic systems theory  DEVS allows to develop models in a modular hierarchical fashion  It also supports simulation of models  A quick demonstration of a DEVS example

Grading The course will include 1. a take-home midterm exam -- 30% 2. a modeling project (includes report and demonstration) -- 30%. This is broken down as 40% demonstration, 60% report 3. Literature review on a selected topic of software engineering (includes report and a presentation) -- 30%. This is broken down as 50% presentation, 50% report 4. attendance – 10% Attendance will be taken randomly and is mandatory for specific announced classes.  Both project and research report are team work with 2 members  Note: 1) the project group and research group may be different; 2) A modeling project may have 3 group members if appropriate

Some topics for literature research  Real-time embedded software  Real time JAVA, OR Real-time UML  Self-Adaptive software  Reliability and dependability  Verification and validation  Formal methods  Software quality assurance, metrics  Software Architectures  Extreme programming, agile methods  Aspect-oriented programming  Management issues in software development  System specification, requirement specification  Web service and service-oriented architecture (SOA)  Model driven Architecture (MDA)  Software Engineering Education (note: for whatever topic you choose, you should obtain the general background in the field as well as two or three specific approaches that are being researched)

Topic Areas for Your Modeling and Simulation Project  Network systems: computer network (wired or wireless)  Agent systems: artificial agents, mobile agents  Diffusion systems: epidemiology, knowledge spread, technology (product) acceptance, heat diffusion, etc.  Workflow systems: Manufactory systems, business process  Other topics related to your own research – strongly encouraged

Class Rules  No cell phone  No walk in and out in class  No leave earlier  Class participation is strongly encouraged, please ask questions, and make comments

What do you have to do right now?  Form a team of 2 member  Decide your topic for literature research. me your topic before next class (Jan. 22 nd )  Computer/laptop issue

Review of Software Engineering Elevator Example

Software Engineering Topics  System specification, requirement specification – functional requirement, non-functional requirement  analysis, use cases, sequence diagram  system design, system architecture  object design, design patterns  implementation, programming language  testing, verification, validation, simulation-based testing, formal methods  software lifecycle model  management issue  modeling and design, FSM, Petri net, DEVS  UML  OO, component-based design, MDA  SOA

UML  The heart of object-oriented problem solving is the construction of a model  UML stands for Unified Modeling Language  A online tutorial:

Self-introduction to help team formation