﻿<?xml version="1.0" encoding="utf-8" ?> 
<?xml-stylesheet type="text/xsl" href="../../webpages/courses.xsl" ?>
<!--
/////////////////////////////////////////////////////////////////////////////
//  CSE784codeL2.xml - provides links Lecture #2 materials                 //
//                     on the ECS college server                           //
//                                                                         //
//  Jim Fawcett, CST 2-187, Syracuse University, jfawcett@twcny.rr.com     //
/////////////////////////////////////////////////////////////////////////////
-->

<courses name="Fawcett">

  <btitle>CSE784 Lecture #2</btitle>
  <theme src="../../webpages/CodeTheme.css" />

  <visible>
  <title>CSE784 - Software Studio</title>
  <subtitle>Lecture #2  - Specification Attributes, Good and Bad</subtitle>
  <revised>07 September 2008</revised>
  
  <hilight>
    <ifile title="Home">../../webpages/FawcettHome.xml</ifile>&#32;
    <ifile title="Courses">../../webpages/Courses.xml</ifile>&#32;
    <ifile title="Code">../../webpages/Code.xml</ifile>&#32;
    <ilink title="Handouts">www.ecs.syr.edu/faculty/fawcett/handouts</ilink>&#32;
    <ifile title="CoreTech">../../webpages/CoreTechnologies.xml</ifile>&#32;
    <ifile title="Books">../../webpages/Books.xml</ifile>&#32;
    <ifile title="Articles">../../webpages/Articles.xml</ifile>&#32;
    <ifile title="Math">../../webpages/Mathematics.xml</ifile>&#32;
    <ifile title="Research">../../webpages/research.xml</ifile>&#32;
    <ifile title="Masters Projects">../../webpages/MastersProjects.xml</ifile>&#32;
    <ifile title="SWDev">../../webpages/swdev.xml</ifile>&#32;
    <ifile title="WebDev">../../webpages/webdev.xml</ifile>&#32;
    <ifile title="News">../../webpages/news.xml</ifile>&#32;
    <ifile title="OtherLinks">../../webpages/OtherLinks.xml</ifile>&#32;
    <ifile title="SiteDesign">../../webpages/SiteDesign.xml</ifile>&#32;
    <ifile title="Graduates">../../webpages/graduates.xml</ifile>&#32;
    <ifile title="AllPages">../../webpages/AllPages.xml</ifile>&#32;
    <ifile title="Office Hours">../../webpages/OfficeHours.xml</ifile>&#32;
    <notice title="Notices">../../webpages/notices.xml</notice>&#32;
    <html><a href="#contents">Contents</a></html>&#32;
  </hilight>

  <!-- <include src="CoursesNavBar.xml"/> -->

  <hilight>
    <ifile title="CSE681-SWMAA">../../webpages/CSE681.xml</ifile>&#32;
    <ifile title="CSE686-IP">../../webpages/CSE686.xml</ifile>&#32;
    <ifile title="CSE687-OOD">../../webpages/CSE687.xml</ifile>&#32;
    <ifile title="CSE775-DO">../../webpages/CSE775.xml</ifile>&#32;
    <ifile title="CSE776-DP">../../webpages/CSE776.xml</ifile>&#32;
    <ifile title="CSE778-AWP">../../webpages/CSE778.xml</ifile>&#32;
    <ifile title="CSE784-SWS">../../webpages/CSE784.xml</ifile>
  </hilight>

  <hilight>
    <ifile title="Lecture #01">../Lectures/CSE784CodeL1.xml</ifile>&#32;
    <ifile title="Lecture #02">../lectures/CSE784CodeL2.xml</ifile>&#32;
    <ifile title="Lecture #03">../Lectures/CSE784CodeL3.xml</ifile>&#32;
    <ifile title="Lecture #04">../Lectures/CSE784CodeL4.xml</ifile>&#32;
    <ifile title="Lecture #05">../Lectures/CSE784CodeL5.xml</ifile>&#32;
    <ifile title="Lecture #06">../Lectures/CSE784CodeL6.xml</ifile>&#32;
    <ifile title="Lecture #07">../Lectures/CSE784CodeL7.xml</ifile>&#32;<br/>
    <ifile title="Lecture #08">../Lectures/CSE784CodeL8.xml</ifile>&#32;
    <ifile title="Lecture #09">../Lectures/CSE784CodeL9.xml</ifile>&#32;
    <ifile title="Lecture #10">../Lectures/CSE784CodeL10.xml</ifile>&#32;
    <ifile title="Lecture #11">../Lectures/CSE784CodeL11.xml</ifile>&#32;
    <ifile title="Lecture #12">../Lectures/CSE784CodeL12.xml</ifile>&#32;
    <ifile title="Lecture #13">../Lectures/CSE784CodeL13.xml</ifile>&#32;
    <ifile title="Lecture #14">../Lectures/CSE784CodeL14.xml</ifile>&#32;<br/>
  </hilight>
  
  <hilight>
    <html><a href="#Contents">Contents</a></html>&#32;
    <html>
      <a href="../../webpages/cse784.xml#Syllabus">Syllabus</a>
    </html>&#32;
  </hilight>
  
  <section title="Web Resources:">
     <ilink title="Software Project Survival Guide">www.stevemcconnell.com/sg.htm</ilink>&#160;
     <ilink title="Steve McConnell's Top 10 Reading List">www.stevemcconnell.com/rl-top10.htm</ilink>&#160;
     <ilink title="Frederick Brooks">www.cs.unc.edu/~brooks/</ilink>&#160;
     <ilink title="Steve Dewhurst">www.semantics.org</ilink>&#160;
     <ilink title="techNetCast">technetcast.ddj.com</ilink>&#160;
     <ilink title="Multics">www.multicians.org</ilink>
  </section>
  
  <isection title="Office Hours:">
    <ifile title="Instructor &amp; TAs">../../webpages/officeHours.xml</ifile>
  </isection>
  
  <section title="Content:">
  <html><a name="contents"/></html>
    This lecture starts with a continuation our discussion of Specifications, moves on to testing, and provides links for 
    a discussion of design.  We probably won't get to design until next week.
    <olist>
      <litem>
        <html>
          <a href="../../webpages/CSE784.xml#Syllabus">Syllabus</a><br/>Describes topics to be covered,
          reading material for you to digest <u>before coming to class</u>, and due dates
          for the assigned projects.
        </html>
      </litem>
      <litem>
        <file title="Project #1">../projects/Pr1F08.doc</file>
      </litem>
      <litem>
        <link title="Creating SQL Server DB Programmatically">www.vbdotnetheaven.com/UploadFile/mahesh/CreateSQLDatabase04252005064419AM/CreateSQLDatabase.aspx</link>
        Dusan Palider found this link and we think it may be useful for Project #1.
      </litem>
      <litem>
        <ifile title="Product Model Scope">../presentations/ProductModelScope.ppt</ifile>&#160;&#160;
        <ifile title="Breaking Down/Building Up">../presentations/BreakingDownBuildingUp.ppt</ifile>&#160;&#160;
      </litem>
      <litem>
        <file title="Modules">../presentations/modules.ppt</file>
        Much of the discussion in this lecture involves specifying and testing modules.  If you need a refresher about modules,
        then look here.
      </litem>
      <litem>
        <html><h3>Concept Development:&#160;&#160; Project Center - Final Project, Fall 04</h3></html>
        Initial project concept development occurs before, or concurrently with, B-Level requirements development.  Use Cases Are
        a key part of the concept development process.  Here we show use cases prepared for the Final Project, Fall 04.
        <ulist>
          <litem>
            <file title="Project Center Packages">../presentations/ProjectCenterPackages.ppt</file>
          </litem>
          <litem>
            <file title="Project Center Use Cases">../presentations/ProjectCenterUseCases.ppt</file>
            Developing Use Cases is part of the project concept definition that is completed before beginning development of specifications.
            This presentation was developed for the Final Project, Fall 04.
          </litem>
        </ulist>
      </litem>
      <litem>
        <html><h3>Testing:</h3></html>
        The purpose of testing is to demonstrate that specifications are satisfied.
        <ulist>
          <litem>
            <file title="Test-Driven Development">../presentations/TestDrivenDevelopment.ppt</file>
          </litem>
          <litem>
            <file title="Test Harness Structure">../projects/TestHarnessStructure.ppt</file>
          </litem>
        </ulist> 
      </litem>     
      <litem>
        <file title="Specification and Architecture">../presentations/ArchSpec.ppt</file>
        In this lecture we finish the specification topic by discussing C-Level specs, e.g., design documents.
      </litem>
      <litem>
        <file title="SRS Quality Measures">../presentations/SRSQualityAssessment.ppt</file>
        Discusses what makes a specification good or bad.
      </litem>
      <litem>
        <html><h3>Help for Project #1</h3></html>
        Project #1 requires you to develop a DataLayer providing an object to relational mapping for all information stored in SQL Server.  These notes will help you
        with that implementation.
        <ulist>
          <litem>
            References for Winform based SQL Server data access:
            <ulist>
              <link title="Working with Databases in Asp.Net 2.0 and Visual Studio 2005">aspnet.4guysfromrolla.com/articles/110905-1.aspx</link>
              <link title="Really simple binding of Access DB to Gridview without using wizards">blog.paranoidferret.com/index.php/2007/09/05/c-tutorial-binding-a-datagridview-to-a-database/</link>
              <link title="SilverLight2 Data-centric Applications">blogs.msdn.com/brada/archive/2008/04/17/end-to-end-data-centric-application-with-silverlight-2.aspx</link>
              <link title="Data-centric UI controls">wiki.asp.net/page.aspx/72/data-centric-ui-controls/</link>
              <link title="Connecting to SQL Server from Visual Studio">msdn.microsoft.com/en-us/library/cc440724.aspx</link>
              <link title="Applying DataGridView on Winforms">www.devx.com/dotnet/Article/33748</link>
              <link title="solving db update problems">www.codeproject.com/cs/database/DataGridView2Db.asp</link>
              <link title="DataGridView Q&amp;A">msdn.microsoft.com/msdnmag/issues/06/01/DevQA/</link>
              <link title="DataGridView pdf">windowsclient.net/samples//Go%20To%20Market/DataGridView/DataGridView%20FAQ.doc</link>
            </ulist>
          </litem>
          <litem>
            I've used the pubs and northwind sample databases, developed by Microsoft, for several of the class handouts.  You can 
            <ilink title="Download Northwind and Pubs databases from Microsoft">www.microsoft.com/downloads/details.aspx?FamilyID=06616212-0356-46a0-8da2-eebc53a68034&amp;displaylang=en</ilink>, 
            or find them on the college server here: <ifile title="handouts/cse784/code/sampleDBs">../code/SampleDBs</ifile>.
          </litem>
          <litem>
            <file title="Relational Data Model">../presentations/RelationalModel.ppt</file>
          </litem>
          <litem>
            <file title="Active Data Objects (ADO)">../presentations/ActiveDataObjects.ppt</file>
          </litem>
          <litem>
            <file title="WinForm DB app Prototype">../code/WinFormDBapp</file>
          </litem>
          <litem>
            <file title="ADO Console Application Demo">../../CSE686/code/ADOConsoleDB</file>
            Simple demonstration of ADO with an Acess database.
          </litem>
          <litem>
            <file title="Basic SQL Demos">../code/BasicSQLDemos</file>
            Slightly modified examples from .Net SDK Samples.
          </litem>
          <litem>
            <link title="QuickStart Examples: ADO - Uses Asp.Net Platform">www.dotnetjunkies.com/quickstart/howto/</link>
          </litem>
<!--
          <litem>
            <file title="Database Wizards Demos">../code/DataWizardDemos</file>
            The Command and Adapter demonstrations show how to do most of the things you will need for this project.
            Note that these are ASP.NET applications and will not work unless you configure them for your environment.
            That entails setting up a virtual directory for each application on your server and setting the connection
            string property to match the server's SQL server and database.
          </litem>
-->
        </ulist>
      </litem>
      <litem>
        <file title="Software Design">../presentations/design.ppt</file>
        Discusses design attributes and how to judge their quality.
      </litem>
      <litem>
        <file title="Basic Design Issues">../presentations/BasicDesignIssues.ppt</file>
      </litem>
      <litem>
        <file title="Truely Awful Interface Design">../presentations/AwfulInterfaceDesign.ppt</file>
      </litem>
      <p/><hr/>
    </olist>
  </section>  
  </visible>
</courses>
