Text Box: BlackBoardText Box: Course Map 

 

 

CIS 342: Networked Application Systems

Spring 2008

 

Welcome to CIS 342.   Your instructor is David Lefkovitz.  I can be reached at

·         Office               315 Wachman Hall

·         Telephone        215-204-5550

·         e-mail               d.lefkovitz@temple.edu

 

The TA's name is Rui Li   

 

Ø     Course Objective

This course takes a technology-based approach to the software engineering of networked application systems design and programming.  Normally a course does not predicate itself upon a particular proprietary system, but the new Microsoft .NET technology inherently contains so many implications for new software engineering paradigms that it cannot be ignored.  This course, therefore, will draw upon this new technology for its theoretical, architectural, and system design foundations.  If one were to view the Microsoft evolution of its application development tools over the past 20 years, 3 characteristics would be revealed: (1) Improvement of developer productivity through coding aids and automation, (2) response to accepted (and competing) open technologies like Unix and Java, and (3) response to the ubiquitous use of the internet.  An evolutionary time line might appear as:

 

MS-DOS

      Windows

             Office

                  VB/Access/SQLServer

                      OLE/COM/COM+

                            ASP

                                  .NET

 

.NET is the current and most advanced stage of this evolution, drawing together the three above mentioned characteristics into a system that bridges:

 

 

Concrete and Pragmatic

 

Abstract and Conceptual

 
 

 


 

Software Engineering Principles

 

Design Methodolgy and Programming Technique

 
 

 


The course thus uses .NET as a model for the software engineering of enterprise applications primarily intended for networked and distributed deployment and takes its cue from these 3 characteristics:

 

Ø      How to optimize productivity of the software engineer

Ø      How to integrate the best that open technologies have to offer

Ø      How to build large scale systems that operate most efficiently on the internet.

  

Ø     ASP.NET and VB.NET Languages and Course Resources
The basic prerequisite knowledge of the course is the use of web based client/server language systems involving HTML and VBscript  or Javascript for client side processing and ASP/VB or JSP/Java for server side processing.   The corresponding .NET technologies that we will be learning are syntactically more similar to ASP/VB but structurally more similar to JSP/Java, because they are more purely object oriented languages.  These languages are ASP.NET and VB.NET.

 

Resources for learning and using these languages are:

 

(1) The website that you are currently reading, referred to as the WebNotes.

(2) The Reference Book

(3) OnLine References

(4) MSDN online documentation

(5) VB.NET online Class definitions

(6) The Help system embedded in VS.NET 

(7) Intellisensing within VS.NET

 

Ø     Course Structure and Textbook
There are 3 major segments to the course.
 

1.   Learning the relationship of .NET structure to Software Engineering principals and system architectures

 

2.   Learning the basics of ASP.NET and VB.NET through the course resources discussed above, exercises found in the textbooks, examples within these WebNotes that serve as code models, and the lab exercises.  The actual coded solutions for all of the book examples are available to you on the class Board.  You can examine and run them as you study the corresponding chapters of the two books. Many other examples will be presented and discussed in detail in the lectures.  

 

3.   Development of a Term Project.  This includes design, coding and testing of the project.

 

Textbook

The textbook is not required but is a good Reference book for the course. 

Programming Microsoft ASP.NET 2.0, Dino Esposito, Microsoft Press, 2006, ISBN: 978-0-7356-2176-3.  It’s available at Temple Library Online at http://libproxy.temple.edu:2071/book/id_13578/toc.asp

 

You can order the book at http://www.bestwebbuys.com/books/ or at http://www.amazon.com .  Both of these sites provide a clearinghouse service for all sites with the book, either new or used. 

 

You can download the code for this book at http://www.microsoft.com/mspress/companion/0-7356-2176-4/ .  You can also find some other online booksellers there with discounted prices.

 

The former textbook was Moving to ASP.NET: Web Development with VB.NET, by Steve Harris and Rob Macdonald, Apress, 2002.  ISBN:1-59059-009-0.  It is based upon ASP.NET 1.0  However, many of the cross references in the notes still refer to pages of this book.  If you do not already own this book, it is available online, at no charge, from the Temple library’s database at http://diamond.temple.edu/search/?searchtype=i&searcharg=1-59059-009-0&searchscope=29&SORT=D .  

 

Ø     Grading

The course is very lab intensive.  70% of the grade will be based upon assigned programming exercises and the term project.  A midterm exam comprises 10% and a final exam the remaining 20%.

 

The seven lab assignments are each weighted by difficulty.  Each assignment will be given a letter grade based on a curve.  These are then converted to the GPA numeric equivalent from 0 to 4, weighted by the Assignment Weight shown in the Project Schedule, summed and divided by 23, which is the total of the Assignment Weights, and multiplied by 0.7.  The exam is graded in the same way, making up the other 30%, and is added to the numeric score of the projects.  The result is a number from 0 to 4, which is converted back to a letter grade for the course.  The formula is:

 

0.7*(Swigi)/23 + 0.1*m + 0.2*f

 

where wi is the weight of the lab assignment i, gi is the numeric grade of Lab Assignment i, m is the numeric grade of the midterm exam, and f is the numeric grade of the final exam.

 

Each assignment has a deadline, shown in the Due Date column of the Project Schedule.    Submission policy is that an assignment turned in by the Due Date gets the full letter grade.  It can be turned in up to one week late but will be downgraded by 1 letter grade.  It will not be accepted after the Late Date.  Note that Project 6.4 has no Late Date.

 

Ø     Development Tools

We will use the following development tools, all of which are available in the lab and which can also be provided to you for installation on your home computer:

·         Visual Studio (VS) .NET for development of aspx web pages, VB code behinds, and VB components.

·         Microsoft Enterprise Manager for SQL Server

 

Ø     The Course Map

Most of the information that you will need for this course can be obtained by a navigation process through the Course Map.  This map contains the following sections:

 

·         Syllabus

·         Schedules

o        Lecture

o        Project Assignment

o        Accounts

·         Reference Material

 

·        Schedules and Accounts

The Lecture Schedule presents a series of Lecture units, textbook readings and links to more detailed lecture material.  

 

The Project Schedule presents the 7 lab assignments and their due dates.  These have been described above under Grading.  

 

The Accounts describe 4 account types on 4 server machines.

(1) A class account, c434201nn, is assigned on Walt to each student, where documentation and miscellaneous files can be stored.  Also, VB class files and forms can be stored there. A shared directory, called Board provides a means for the Instructor to distribute programs or files to the class.

 

(2) Each student will have a virtual web root for Web Applications on Corona.  The name of this web is Spring2008/c434201nn.  A subweb structure can be developed under the web root for the various projects.

 

(3) Each student will have a virtual web root for Web Services on Zbach.  The name of the web is Spring2008/WSc434201nn.  A subweb structure can be developed under the web root for various web service projects.

 

(4) The DBMS is SQL Server, which runs on Dwarf.  Each student will be assigned a Database, named sp08_c434201nn

 

 

·        Reference Material

Finally, the Reference Material section will give you links to OnLine references and some hard copy references.  The OnLine references are classified by major topics, such as HTML, ASP.NET VBScript, VB.NET, Java, JSP, etc.

You should also search the web for additional, and possibly better, references for languages in the course.  If you find better references than the ones provided, or links that are no longer available, please send the urls to the Instructor.  

 

Good Luck and enjoy the course.