Difference: CS290Fall08 (3 vs. 4)

Revision 42008-02-14 - ChenDing

Line: 1 to 1
META TOPICPARENT name="ChenDingLeftBar"
Line: 10 to 10
  This experimental course teaches principles and practices of collaborative software development and its use in converting data into knowledge and knowledge into tools. The topics include fundamentals of programming (more for organizing information than for managing computers), lessons from past information systems, and current practice and tools for teamwork and (virtual) collaboration. The main assignments are a series of group projects including the final project of developing a possibly on-line recommendation system. The projects will be evaluated based on the design, implementation, and deployment, including an end-of-semester competition based on a user survey.

Draft Syllabus

  • Fundation of programming
    • what's a program
    • abstraction and implementation (lambda calculus)
    • object orientation
    • dynamic languages
    • case studies
      • continuation and actor model
  • Software engineering
    • basis of the discipline
      • Brooks, Parnas, and other selected reading
    • version control, testing, bug tracking
    • virtual collaboration (chats, wiki, remote file sharing)
    • user interface design and documentation
    • case studies
      • Gcc and open source
      • industry software development (IBM or Microsoft)
  • Collective intelligence
    • data representation and processing
    • data modeling and data mining
    • case studies
  • Scalable information systems
    • decentralized and self-organizing systems
    • sustainable development
    • related literature
      • strategy games
      • evolutionary principles
    • case studies
      • Web 2.0

Work in progress (restricted access)

This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2018 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding URCS? Send feedback