Presentation is loading. Please wait.

Presentation is loading. Please wait.

Advanced Software Engineering

Similar presentations


Presentation on theme: "Advanced Software Engineering"— Presentation transcript:

1 Advanced Software Engineering
Introduction myself

2 Agenda Syllabus Review of Software Engineering Concepts UML
Literature Review Project Self-introduction Introduction myself

3 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: Song Guo Piyaphol Phoungphol Prerequisites: CSC 4350/6350 Software Engineering or equivalent Course Web Page: Introducing Two Teaching Assistants

4 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) IEEE Transactions on Software Engineering (TSE) Annals of Software Engineering (Kluwer) Automated Software Engineering (Kluwer) International Journal of Software Engineering and Knowledge Engineering (IJSEKE) (World Scientific) CROSSTALK: The Journal of Defense Software Engineering etc. 43 41

5 The course… is not about Programming Software Project Developing
is about Design Modeling Research Assuming you know you kind of programming language So, What is modeling?

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

7 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?

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

9 Content of the course The contents of the course are roughly divided into three parts (please refer to the schedule of lectures) Software reuse and design patterns. System modeling and design as exemplified by Discrete Event System Specification (DEVS). 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.

10 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

11 Grading The course will include a take-home midterm exam -- 35%
Literature review on a selected topic of software engineering (includes report and a presentation) -- 30%. This is broken down as 60% presentation, 40% report a modeling project (includes report and demonstration) -- 25%. This is broken down as 40% demonstration, 60% report 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: the project group and research group may be different. 40 38

12 Some topics for literature research
Open Source Software Real-time embedded software, Real-time UML Testing and Test Methods Self-Adaptive software, Autonomy-oriented computation 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) 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) 42 40

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

14 Class Rules No cell phone
No walk in and out in class No leave earlier Active participation (instead of passive listening) is strongly encouraged. Due to the nature of this advanced class, the “success” of a lecture highly depends on your active participation. So please ask questions, respond to my questions, and make comments 42 40

15 Review of Software Engineering
Elevator Example

16 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, Service-oriented computing

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

18 Literature Review Project

19 What do you have to do right now?
Form a team of 2 member Decide your topic for literature research. me your topic by Jan. 20th Computer/laptop issue 48 46

20 Self-introduction to help team formation


Download ppt "Advanced Software Engineering"

Similar presentations


Ads by Google