SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.

Slides:



Advertisements
Similar presentations
Standards Alignment A study of alignment between state standards and the ACM K-12 Curriculum.
Advertisements

Object-Oriented Software Development CS 3331 Fall 2009.
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the.
Software Engineering About the Course Software Engineering Qutaibah Malluhi Computer Science and Engineering Department Qatar University.
Requirements Analysis Concepts & Principles
Copyright © 2009 On The Edge Software Consulting Advanced Enterprise Java Instructional Plan Presentation Tier Design using an Event Driven Design Methodology.
INFO101: Management Information Systems INFORMATION X.
Component Software: A New Software Engineering Course H. Conrad Cunningham, Yi Liu, Pallavi Tadepalli, and Mingxian Fu Software Architecture Research Group.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
EECE 310 Software Engineering Lecture 0: Course Orientation.
SOME IMPORTANT FACTORS IN TEACHING SOFTWARE ENGINEERING COURSES Presenter: Jingzhou Li Depart of ECE, University of Calgary,
SWE © Solomon Seifu CS425 Software Engineering Solomon Seifu Department of Computer Science Maharishi University of Management, Fairfield, IA.
CPSC 372 John D. McGregor Process Module 1 Session 1.
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
Sadegh Aliakbary Sharif University of Technology Fall 2012.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Sept Ron McFadyen1 UML & Design Patterns Course outlineoutline /3 Advanced Systems Design.
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
Ethics.ppt1 TDT Information Systems, Spring 2006 Today: Course Summary John Krogstie, IDI.
Object-Oriented Analysis and Design Fall 2009.
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN Objectives Describe the book goals and scope Define OOA/D (Object-Oriented Analysis and Design) Illustrate.
CSPC 464 Fall 2014 Son Nguyen.  Attendance/Roster  Introduction ◦ Instructor ◦ Students  Syllabus  Q & A.
Banaras Hindu University. A Course on Software Reuse by Design Patterns and Frameworks.
Fundamentals of Software Engineering. Instructor: Dr. Kal Bugrara Office: Snell Engineering, Rm 267 Office Hours: Sat: 12:00-2:00 pm Phone
New Specialization Training Requirement Available Now: Selling Business Outcomes v
Advanced Software Engineering Dr. Cheng
CSC 241: Introduction to Computer Science I
Advanced Programing practices
John D. McGregor Process Module 1 Session 1
CIM Modeling for E&U - (Short Version)
Object-Oriented Analysis & Design
Course Outline Network Management Bahador Bakhshi
COMPACT Web Design Approach:
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
CSC 221: Computer Programming I Fall 2005
Introduction to Eclipse Process Framework: EPF Composer and OpenUP
Today in OOAD Today in Lab Review EU-Lease Assignment (Vision)
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2005 Instructor: Patrice Chalin.
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
CEN 5011 Advanced Software Engineering
Welcome to COE212: Engineering Programming
Foundations of Programming Languages – Course Overview
EECE 310 Software Engineering
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2005 Instructor: Patrice Chalin.
Foundations of Programming Languages – Course Overview
Design and Implementation of Web services-oriented Application
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2005 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2005 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2005 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
Why do Research? Chapter 1.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
Advanced Programing practices
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
References: Eddie Burris, Rick Mercer
SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin.
CSC 241: Introduction to Computer Science I
Course Outline Network Management Spring 2018 Bahador Bakhshi
Logical Architecture & UML Package Diagrams
Presentation transcript:

SOEN 343 Software Design Computer Science and Software Engineering Department Concordia University Fall 2004 Instructor: Patrice Chalin

Agenda Welcome back! The SE challenge: an example of state-of-practice in SE. (For fun, not exam material.) Questionnaire to fill in (on your own). Design in context: What will be covered in this course? Course information and resources. 11/23/2018 SOEN 343, © P.Chalin,

Taking the Twinkle out of Starlight Cover article of Dec. 2003 issue of IEEE Spectrum. The Mt. Hopkins Observatory, in Arizona, which houses the 6.5-meter MMT telescope, sits 2600 meters above sea level. 11/23/2018 SOEN 343, © P.Chalin,

The Telescope Mt. Hopkins Observatory, in Arizona 6.5-meter MMT telescope, 2600 meters above sea level. 11/23/2018 SOEN 343, © P.Chalin,

The Telescope, a closer look 11/23/2018 SOEN 343, © P.Chalin,

The Problem Atmosphere blurs images of ground based telescopes. 11/23/2018 SOEN 343, © P.Chalin,

A Solution: Adaptive Optics “Correct” the effect of atmospheric distortions. Can result in an improvement of image sharpness by a factor of 10. Here is an example … 11/23/2018 SOEN 343, © P.Chalin,

Take a look in Orion SOEN 343, © P.Chalin, This is a picture of the Orion constellation. The following picture comes from part of the sword (not shown above). 11/23/2018 SOEN 343, © P.Chalin,

Wow! How Do They Do It? Adaptive optics. Implemented with real-time computing power! 11/23/2018 SOEN 343, © P.Chalin,

AO Built Into Secondary Mirror 11/23/2018 SOEN 343, © P.Chalin,

336 Actuators and 10 nm accuracy 11/23/2018 SOEN 343, © P.Chalin,

336 Sensors Measurements accurate to 3 nm. SOEN 343, © P.Chalin, 11/23/2018 SOEN 343, © P.Chalin,

Entire Assembly 11/23/2018 SOEN 343, © P.Chalin,

But Wait, That’s Not All! Technique for the direct observation of extra-solar planets. Details can be found in the article. 11/23/2018 SOEN 343, © P.Chalin,

“Design” in Context Where do design activities fit into an overall SE process? Let us take a look … 11/23/2018 SOEN 343, © P.Chalin,

Rational Unified Process (RUP) Disciplines 11/23/2018 SOEN 343, © P.Chalin,

Design vs. Requirements Can you qualify the difference between a statement of requirements and a design statement? (I will be asking you for an answer next class.) 11/23/2018 SOEN 343, © P.Chalin,

Design vs. Requirements Implementation Architectural In most cases it is clear whether an artifact or part of an artifact belongs to Req, Design or Impl. In other cases it is not so clear. The important point is not to waste time debating what it should be labeled and simply document it! Detailed 11/23/2018 SOEN 343, © P.Chalin,

Guidelines: International Summit SE Education Be grounded in Sound research and mathematical theory, Widely accepted best practice. Underlying and enduring principles. Have a significant real-world basis Students gain some experience with tools (but not the focus). (International Summit SE Education, 2003) International Summit on SE Education Co-located with ICSE 2003 (icse-conferences.org). SE should be taught as a problem-solving discipline. Underlying and enduring principles should be emphasized, rather than details of specific tools. 11/23/2018 SOEN 343, © P.Chalin,

Course Theory Practice Tools 11/23/2018 SOEN 343, © P.Chalin,

Design Theory Fundamental design principles. Focus: Object-oriented analysis & design. OOP fundamentals Patterns. Secondary: design notations UML. (Requirements artifacts: understanding will be assumed, but briefly reviewed.) 11/23/2018 SOEN 343, © P.Chalin,

Theory Application Practice makes perfect … and Practice makes the material concrete. Design & implementation. Eclipse 2.1 (+ XDE). 11/23/2018 SOEN 343, © P.Chalin,

Practice: Application Domain Enterprise Applications. (What?) 11/23/2018 SOEN 343, © P.Chalin,

Practice: Enterprise Applications EA Web applications. Java Server Pages (JSP) technology. Secure & robust EA can be difficult to get right. Martin Fowler’s, Patterns of Enterprise Application Architecture. Foundations in this course. More advanced patterns in S/W Architecture course. 11/23/2018 SOEN 343, © P.Chalin,

EA: Why? Hot area. Fun. Demand for qualified developers. Easy to develop poor, insecure EA’s. Gives you an edge in the job market! 11/23/2018 SOEN 343, © P.Chalin,

EA: JSP Technology Actively used by industry. Sample sites follow … 11/23/2018 SOEN 343, © P.Chalin,

EA: Airport of Montreal 11/23/2018 SOEN 343, © P.Chalin,

EA: CIBC 11/23/2018 SOEN 343, © P.Chalin,

EA: IBM 11/23/2018 SOEN 343, © P.Chalin,

EA: Toronto Stock Exchange Uses patterns that you will learn in this course. E.g. page controller. E.g. page controller, as is evident in some of the URLs. 11/23/2018 SOEN 343, © P.Chalin,

Languages, Techniques, Tools UML. Eclipse 2.1 (Rational XDE) Model Driven Design. Refactoring. JUnit: for test-driven design. EA: Tomcat. 11/23/2018 SOEN 343, © P.Chalin,

Course Information & Resources Syllabus: any questions? Course web site: http://www.cs.concordia.cs/~soen343 Your to do list: Register to course mailing list via course web site. Register your Concordia address. Choose work groups (size 5). Attend this Friday’s tutorial in H-929 or H-905. 11/23/2018 SOEN 343, © P.Chalin,