CSE681 - Software Modeling and Analysis

Revised: 6/12/2010
Home  Courses  SWTrack  Code  Handouts  StudCult  CoreTech  Books  Articles  Math  Research  TechnicalLinks  Student Projects  CASE Projects  Project Topics  SWDev  WebDev  News  OtherLinks  SiteDesign  Graduates  AllPages  Office Hours  Seminars  Notices  contents 

CSE382-AADS  CSE681-SWMAA  CSE686-IP  CSE687-OOD  CSE775-DO  CSE776-DP  CSE778-AWP  CSE784-SWS 

Resources: Lectures Code Syllabus projects File Download ScreenShot Project Upload Instructions

Best Final Projects

Elie ElAaraj, Nisith Dash, John Goddard, and Karthik Parthiban

Course Scope:

This course is concerned with modeling software - especially large distributed systems - including architecture, design, and implementation. To do this we introduce: One major focus is the representation of software and software systems with means other than code, although we do develop code in this course.

Five projects are required that are progressively more challenging. The first and second projects are concerned with describing the architecture needed to realize a set of requirements and its implementation, respectively. The third and fourth projects repeat this for a more complex, distributed, system. The final project requires the creation of an architecture for a large, complex, distributed system.

The use of C# and the .Net Framework Class Libraries are required. This is covered by the class text and in help sessions conducted by the instructor and teaching assistants. A lot of work outside of class is expected. Students that complete this course with good grades will understand how to lay the foundations for the successful development of large, distributed systems.

Required Texts, Notes, and Projects:

  1. Pro C# 2008 and the .Net 3.5 Platform, Fourth Edition, Troelsen, Apress, 2007, ISBN 1-59059-884-9
  2. Class Notes, available on www.ecs.syr.edu/faculty/fawcett/handouts/cse681
  3. Five projects are required: three require creation of an Operational Concept Document (OCD) to record a software architecture. Three require code to implement the systems of the first two OCDs and provide prototype code for the final project.

Supplementary Text and links

  1. Programming Microsoft .Net, Jeff Prosise, Microsoft Press, 2002, ISBN 0-7356-1376-1
    We will use parts I and III only.
  2. UML - web notes UML - Object Mentor pdf .Net Quickstarts Core Technologies .Net Code Samples by Mike Woodring

Prerequisites:

Students are expected to have a good working knowledge of the C Programming Language. No prior knowledge of C# is required.

Syllabus - Fall 2008:

LectureTopicsRead before classProject
Lecture #1
Wed, Aug 27
What is analysis? software architecture,
Universal Modeling Lanaguage (UML), Class Text, Handouts
UML Noteshand out
Pr1 & Pr2
Lecture #2
Wed, Sep 3
C# Language, Modules, Project concepts and Prototype codeText Chaps 1,2
UML notes
Module notes
Pr1
Lecture #3
Wed, Sep 10
C# techniques, WinForms programmingText chaps 1-4
prototype code
Pr1 due
Lecture #4
Wed, Sep 17
XML, XML code prototypesClass Notes
prototype code
Pr2
Lecture #5
Wed, Sep 24
Interprocess communication, Sockets,
Windows Communication Foundation,
Web Services
Text chap 25
prototype code
Class Notes
Pr2 due
hand out
Pr3 and Pr4
Lecture #6
Wed, Oct 01
Processes, Threads, Kernel Objects,
.Net Platfrom vs. Win32 Platform
Class Notes,
Text chap 18
prototype code
Pr3
Lecture #7
Wed, Oct 8
Multi-threaded systems, queues,
asynchronous systems
Text chap 18
prototype code
Pr3
Lecture #8
Wed, Oct 15
Review for MidtermAll notes and textPr3 due
Lecture #9
Wed, Oct 22
Windows Presentation FoundationClass notes,
Text Chap 28
Pr4
Lecture #10
Wed, Oct 29
Midterm ExaminationClass notesPr4
Lecture #11
Wed, Nov 05
Queuing Theory, Random Processes, Performance Analysisclass notesPr4
Lecture #12
Wed, Nov 12
Managed C++, Attibuted Programming
help with Pr5
Class notesPr4 due
Lecture #13
Wed, Nov 19
Midterm Exam results, Instructor's solutions,
Prototype code to support Pr5
class notes
prototype code
Pr5
Wed, Nov 26Thanksgiving Holidays - no class  
Lecture #14
Wed, Dec 03
Course Summary, Help with Pr5
what next?
 Pr5 due
Class meets once per week for three hours.