﻿<?xml version="1.0" encoding="utf-8" ?> 
<?xml-stylesheet type="text/xsl" href="courses.xsl" ?>
<!--
/////////////////////////////////////////////////////////////////////////////
//  RepoTB.xml - CSE784 Final Project, Repository Testbed                  //
//                                                                         //
//  Jim Fawcett, CST 2-187, Syracuse University, jfawcett@twcny.rr.com     //
/////////////////////////////////////////////////////////////////////////////
-->

<courses name="Fawcett">

  <btitle>Repository &amp; Testbed Project</btitle>
  <theme src="CodeTheme.css" />

  <visible>
  <title>Repository and Testbed Project<br/>Fall 2005</title>
  <title>Software Studio</title>
  <revised>16 December 2005</revised>
  <hnav/><cnav/>  
  <hilight>
    <ifile title="Project Topics">Projects.xml</ifile>&#32;
    <ifile title="Master's Projects">MastersProjects.xml</ifile>&#32;
    <ifile title="Master's Theses">MastersTheses.xml</ifile>&#32;
    <ifile title="Research">research.xml</ifile>&#32;
    <ifile title="References">references.xml</ifile>&#32;
    <ifile title="Cloner">Cloner.xml</ifile>&#32;
    <ifile title="Software Foundry">Foundry.xml</ifile>&#32;
  </hilight>

  <html><img src="..\CSE784\FinalProj2005_RepoTB\pictures\RepoTBTeam.jpg" width="100%" /></html><br/><br/>
  <caption>
    CSE784 - Repository Testbed Project Team at Specification Review<br/>
    Project Manager - Gulru Ustundag (6th from right)<br/>Architect - Vijay Appadurai (9th from left)<br/>
    Test Manager - Sriram Ramamurthy (8th from left)<br/>
    Teams and Team Leaders listed below
  </caption>

  <section title="Repository Testbed System Project"/>
    The Repository Testbed System (RTBS) is a distributed system, composed of a Repository server, a
    Testbed Server, and one or more RTClients.  The system provides smart storage of software products,
    a production test facility, and clients that use the servers to support development of large complex software systems.
    <p/>
    The Repository server uses XML-based meta-data to describe items and components and their relationships.
    An item refers to a single source code file and its documentation.  A component consists of a root item
    and all the items on which it depends.  Using a single component name, all of the source and/or documentation
    necessary to build or describe an entire component, at any level, may be extracted from the repository.  The repository 
    also has an innovative versioning scheme, designed to smoothly support the collaboration of many teams
    across a large project.
    <p/>
    The Testbed server provides a test harness that loads test configurations and executes each configuration
    on its own thread.  The test run may be paused, stopped, or have its output adjusted between verbose and
    quiet modes of operation.  Each test configuration consists of a series of test and tested code libraries
    which are dynamically loaded and executed in a private Application Domain.  When the test completes the
    Application Domain is unloaded, freeing server memory for additional testing.
    <p/>
    The servers and clients are tied together with a Web-Service based message-passing communication system.
    The receiving end of a communication channel provides delegates, allowing any part of the receiver to
    register for messages it may wish to process.  This Observer Pattern based design has proven to be very
    effective for building this system.
    <p/>
    The RTClients are the operational centers for the RTBS.  They provide both developer and administrator 
    services, using a design that delegates all computation to surogate modules except very light weight 
    processing associated with presenting data to the user and collecting the user's responses.
    <p/>
    The Developers of this system are the students enrolled in CSE784 - Software Studio, during the Fall of 2005.
    This system was specified, designed, implemented, tested, integrated, and qualified in a period of 9 weeks.
    The qualification test consisted of the verification of approximately 160 requirements via scores of
    carefully written test procedures.  The system was qualified, in eight hours, on December 9th, 2005.
       
  <section title="Instructor's Comments">
    This project, like its predecessor, was an outstanding success, due not only to diligent and effective
    management, but also to the dedicated efforts of all the individual teams, listed below.
    <p/>
    I am proud of this class and have enjoyed being part of their experience with the RTB system.
    <olist>
      <litem>
        Project Manager - Gulru Ustundag
      </litem>
      <litem>
        Software Architect - Vijay Appadurai
      </litem>
      <litem>
        Test Team<br/>
        Sriram Ramamurthy - Team Leader<br/>
        Kevin Alden<br/>
        Pooja Desai<br/>
        Atanu Panda<br/>
        Pushkar Pathak
        Nikhil Sane
      </litem>
      <litem>
        Component Management and Communication Team<br/>
        Pushkar Pathak - Team Leader<br/>
        Ravi Bhargava<br/>
        Gautam Murti
      </litem>
      <litem>
        Repository Team<br/>
        Jeetendra Kukreja - Team Leader<br/>
        Farshid Ghods<br/>
        Kapil Kumar<br/>
        Vineet Kulkarni
      </litem>
      <litem>
        Testbed Server Team<br/>
        Jiaqi Yu - Team Leader<br/>
        Vijay Appadurai<br/>
        Subhodh Shivapuja
      </litem>
      <litem>
        RTClient Team<br/>
        Pooja Desai - Team Leader<br/>
        Dan McClung<br/>
        Avinash Prasad
      </litem>
    </olist>        
  </section>

  <section title="Comments from the Project Manager, Gulru Ustundag:">
    From the beginning I thought Repository Testbed System was a great project. Especially for people who write code intensively
    with a group of people and keep updating and testing it. Our team had incredible members; all excited about this project.
    From the very beginning, we started working hard, held meetings, once, twice, sometime thrice a week, 
    with constant communication to make this project a success and to make our customer proud. 
    Our architect gave us a great backbone to work on; and our teams, with the help of their team leaders,
    built on it as if it was their own work of art. Our life revolved around MadLab, with everyone encouraging others,
    to make this product a success. 
    <p/>
    Prof Fawcett gave us useful insights about how things could be done, but always left the door open
    for our designs, and left the final decision to me. He gave me full control of the project,
    and I must say, I am proud to be the Project Manager of this group and this project.
    He was a great customer who wanted his requirements satisfied but he was open to adjustments to make
    this product usable and worthwhile. (I wish every customer would be just like Prof Fawcett.)
    All our reviews went very well, and managing those reviews was a challenging experience for me;
    In the end, each of the team members developed and presented their specifications and designs effectively. 
    <p/>
    We worked extremely hard, before showing the final product to our customer, with the help of the Test Team,
    and kept fixing bugs and adding new functionalities till the last minute.
    Our Qualification Test was a great success and we kept applauding all the members of the team who made this
    interesting product possible. We passed 100% of our tests, and we were still so hyped up even 3:30 am when our Qual Test ended. 
    <p/>
    I must say I am proud to be the Project Manager of this project which is "actually" usable, fast, 
    and is a work of 17 skillful people who put their heart in it. 
    I have learned so much from this experience, having had many roles including the management,
    which was so like a real life professional experience. I am sure that everyone will remember this course as one of
    the life-altering experiences of their lives. 
  </section>
<!--
  <images>
    <imageItem src="..\CSE784\FinalProj2005_RepoTB\pictures\SpecReview.jpg" size="500"/><br/><br/>
  </images>
-->
  <section title="Repository Testbed Project Teams at Qualification Test"/>
  <images>
    <imageItem src="..\CSE784\FinalProj2005_RepoTB\QualTest\TestTeam.jpg" size="500"/><br/><br/>
  </images>
  <caption>Test Team - lead by Sriram Ramamurthy (2nd from left)<br/>and other project members who helped a lot with testing</caption>
  <images>
    <imageItem src="..\CSE784\FinalProj2005_RepoTB\QualTest\RepositoryTeam.jpg" size="450"/><br/><br/>
  </images>
  <caption>Repository Server Team - Lead by Jeetendra Kukreja (top right)</caption>
  <images>
    <imageItem src="..\CSE784\FinalProj2005_RepoTB\QualTest\TestBedTeam.jpg" size="375"/><br/><br/>
  </images>
  <caption>Testbed Server Team - Lead by Jaiqi Yu (middle)</caption>
  <images>
    <imageItem src="..\CSE784\FinalProj2005_RepoTB\QualTest\UITeam.jpg" size="450"/><br/><br/>
  </images>
  <caption>RT Client Team - lead by Pooja Desai (2nd from left)</caption>
  <images>
    <imageItem src="..\CSE784\FinalProj2005_RepoTB\QualTest\CommTeam.jpg" size="450"/><br/><br/>
  </images>
  <caption>Communication Team - lead by Pushkar Pathak (3rd from left)</caption>
<!--
  <section title="From the Project Manager's Perspective">  
    Cloner was indeed a challenging project to work on. Notwithstanding weeks of sleep deprivation,
    what we came away with was a clear understanding of what is involved in the building of a
    non-trivial software product, and what it requires of us. Working through each of the phases
    of the software development lifecycle and undertaking the formal review and test processes was
    extremely instructive – certainly not something you would get out of most classrooms.
    <p/>
    Personally, I found the hands-on approach to managing Cloner very effective and was wearing
    many hats at the same time – contributing in different roles while working with the different teams.
    <p/>
    We really appreciated the degree of independence Dr. Fawcett gave us with respect to project
    and team decisions, and yet he always seemed to be right around the corner whenever we needed guidance.
    He was both a demanding customer and accommodating instructor at the same time!
    <p/>
    I am proud that we as a team reached all project milestones on time, and met all our deadlines
    (in spite of hiccups in integration and testing threatening to throw us off gear at one stage).
    I am particularly proud of how we managed to fine-tune the exchange of ideas between ourselves
    in the team – the 800 odd email messages we sent to each other in the span of 2 months was not
    just communication, but true collaboration. But what we are all most proud of is the fact the
    Cloner successfully passed all test procedures on Qualification Test day. (Well, except for an
    incomplete manual/maintenance page on one module). Starting at 6:00 in the evening, Quals went
    on till 5:00 the next morning! I know that is a record, Dr. Fawcett. And hope it’s a record
    Software Studio teams in the future don’t have to break!
  </section>
-->
  <section title="Qualification Test"/>
  <html><img src="..\CSE784\FinalProj2005_RepoTB\QualTest\teamstrip.jpg" width="100%" /></html><br/><br/>
  <caption>CSE784 - Most of Project Team after finishing Qualification</caption>
  </visible>
</courses>
