coursework >
> spring '04
> fall '04
> spring '03
> fall '02

spring '04

IS214: Needs and Usability Assessment
This course addresses concepts and methods of needs and usability assessment. The emphasis will be on understanding users' needs and practices and translating them into design decisions. Topics to be covered include: methods of identifying and describing user needs and requirements; user centered design; and evaluation of information systems. We will practice a number of major usability assessment methods, including heuristic evaluation, surveys and focus groups, and naturalistic/ethnographic methods. Finally, we will discuss methods of bringing needs and usability assessment into the design process.
IS272: Qualitative Research Methods for Information Management
IS272 focuses upon the use of qualitative methods for research about information technologies. Methods including interviewing, focus groups, participant observation and ethnography will be taught and practiced. Significant qualitative research findings about the social impact of information technologies will be read, to analyze what we know about IT thus far, how we know it, and as models of theories and methods for future research. Frequent field exercises are assigned to develop qualitative research skills and best practices, but the primary assignment is to engage in a substantial fieldwork project. Methods covered will include video if grant support or other budget resources are found.
IS290: Digital Media Design Studio
IS290 Digital Media Design Studio is an advanced graduate level studio course in which students develop and present a digital media application prototype. Projects would ideally involve the creation, use, and reuse of digital media and metadata (descriptions of media content and structure). IS290 Digital Media Design Studio is the second course of a two course series that began with IS246 Multimedia Information and is intended to enable Fall IS246 students to implement, iterate, and present their projects designed in IS246.

The course features two different sessions per week: 90 minutes of lecture/seminar and 90 minutes of studio instruction. The lecture/seminar topics and readings will include advanced topics in digital media applications and multimedia information systems focused on the particular student projects being developed in the course. The lecture/seminar sessions will also feature several guest lectures from leading digital media researchers and designers. The studio sessions will involve in-class design sessions, presentations, and crit of student work. The course will culminate in a public presentation of student projects with guest evaluators from industry and academia.

IS247: Information Visualization and Presentation
The design and presentation of digital information. Use of graphics, animation, sound, visualization software, and hypermedia in presenting information to the user. Methods of presenting complex information to enhance comprehension and analysis. Incorporation of visualization techniques into human-computer interfaces.

Computer visualization is used widely in scientific and engineering disciplines to help people understand the systems they study, but has only recently begun to be applied to general information. This course will focus on the use of visualization to enhance comprehension and analysis of structured information such as text collections, networked systems like the Web, work processes, etc.

fall '04

CS294-8 Design Realization 2
This course is an introduction to realization of smart or networked artifacts. By realization, we mean the creation of working prototypes. Most of the course will concentrate on physical artifacts, but the first two sections cover 3D models and animation. This course is intended to be part of the introductory sequence for the Berkeley Institute of Design's 2-year Masters program. It is the second course in the sequence, and assumes the student has had an introductory design course. Undergraduate courses such as ME110 (Product Development) or CS160 (User Interfaces) or any of the 100-series courses from Architecture are also ideal.

This course is very broad, and includes material from at least 5 specialties. Its main goal is to develop each student's fluency in the making of smart artifacts. It has several secondary goals: Students will develop their abilities to work in interdisciplinary teams, they will be better able to fill disciplinary gaps and work across disciplines (as in a small company), and they will improve their meta-knowledge about design realization: specifically how to acquire or enhance their design skills in a new domain, and to collaboratively share that knowledge. The reasons for integrating several methodologies are that (i) the boundaries between design disciplines today are in flux, and (ii) there are many opportunities for innovations at the boundaries between disciplines, (iii) fluency can be acquired today much more easily than in the past because of better learning resources and computer-aided design tools, and (iv) (hypothesis) today's most effective knowledge worker is more adaptable than in the past, and has a greater breadth of knowledge that enables them to specialize as needed for the project at hand. The topics that we covered are here.
  • 3D Prototyping and Animations (i.e. playing with Maya)
    We learned to use Maya as a tool to do rapid 3D prototyping as well as to perform 3D animations. I like to call these exercises playing with Maya, because in the two weeks or so we had to learn the tool little could be done to master it. However, learning the basics is a good peek into the worlds of 3D modeling and animation , and provides a very rich set of skills to build upon:
    "Posture-Correct" Chair Designs -- Chair 1 (.mp) & Chair 2 (.mp)
    Animated Character (.avi)
  • Survey of Designers Image Assets Management Habits
    Storing and retrieving imagery is a big problem for those who produce large numbers of it. To determine if the cell phone work we were concurrently researching (automatically adding contextual metadata to imagery produced on a cell phone) would be a good match for this user group, we interviewed 10 designers. We talked to them about how they store, organize, and use image repositories. We attempted to answer this question: "Are Designers Good Applicants for Low-Resolution Image Capture with Automated Content Metadata Annotation?" Below are the final paper and summarized powerpoint of our findings:
    Final Paper (.pdf)
    Summarized Powerpoint (.ppt)
IS246 Multimedia Information
The SIMS “Multimedia Information” class is an introduction to the past, present, and future of the theory and practice of multimedia information systems. We explore the concepts and methods of the multimedia production cycle comprising the creation, description, retrieval, editing, management, distribution, and reuse of digital media. Students will gain theoretical background and practical experience to help them design, innovate, critique, and assess digital multimedia information systems.

The course will be divided into three parts: (1) Past. This part is concerned with the history and theory of digital multimedia production. Brief excursions into semiotics, film and media theory, the history and theory of computation, and computational media theory will provide the underlying basis for the discussion and evaluation of state-of-the-art systems and concepts. (2) Present. This part surveys current commercial and academic research systems for media production, editing, annotation, retrieval, and reuse. (3) Future. We will look into the future of digital multimedia information systems including systems that automate and integrate many aspects of digital media production and reuse.

Two hands-on assignments in producing short videos will be done. Additionally, the final project design specifications produced at the end of IS246 will form the basis of a Spring 2004 follow on studio/project/seminar course "Digital Media Design Studio".
IS290: Project Management Case Studies: Rescuing Mismanaged Systems Implementations
Discusses case studies of project management and problems with poor project management methods. We review real management problems of major corporations and discuss their positive and negative decisions, as well as how different strategies would have altered the outcome. Students create strategic plans to alleviate those mistakes and learn how to manage a large project to successful completion. Interdisciplinary work involvement is highlighted in this business course, with Engineering, Haas, and SIMS students all in attendance.

spring '03

IS213 User Interface Design and Development
User interface design and human-computer interaction. Examination of alternative design. Tools and methods for design and development. Human- computer interaction. Methods for measuring and evaluating interface quality. This course covers the design, prototyping, and evaluation of user interfaces to computers which is often called Human-Computer Interaction (HCI). It is loosely based on course CS1 described in the ACM SIGCHI Curricula for Human-Computer Interaction (Association for Computing Machinery, 1992). HCI covers many topics including:
  1. Human capabilities (e.g., visual and auditory perception, memory, mental models, and interface metaphors);
  2. Interface technology (e.g., input and output devices, interaction styles, and common interface paradigms);and,
  3. Interface design methods (e.g., user-centered design, prototyping, and design principles and rules), and interface evaluation (e.g., software logging, user observation, benchmarks and experiments).
  • ArchMiner is a data mining application built for the Center for the Built Environment. We have designed and developed the interface using standardized methods, such as persona development, storyboarding, and flow charting. We then tested our initial lo-fi paper prototype against user subjects, iterated it, and implemented a high-fi Java application. We used Java Swing for the GUI components. You may see all steps to this process as well as download the Java .exe on the site below:
    Archminer project site.
IS290 Document Engineering for E-business
It is natural to conceptualize the business relationships between companies as document exchanges, and XML, with its ability to define formal structural and semantic definitions for electronic documents, has rapidly emerged as a key enabling technology as e-business takes hold on the Internet. After introducing XML syntax, styles and transformations, and schema languages, a substantial part of the course is devoted to teaching students practical skills for designing and implementing the documents that enable e-business transactions and applications. These skills include: developing information requirements, analyzing existing documents, identifying and organizing document components, implementing XML schemas, modeling business processes, specifying business processes and service interfaces using XML schemas, and 'choreographing' complex chains of document exchanges for multi-company business activities.

The course also introduces and evaluates the relevant XML standards, specifications, and software architectures for the design, development, and deployment of document-centric e-business applications, e-marketplaces, and web services. It explains the co-evolution of document-centric e-business models and their enabling architectures and computational environments (it has been said that 'XML gives Java something to do'). It interleaves technology issues with management and business concerns, such as selecting a standards strategy, assessing an organization's readiness for document engineering, and meeting the legal, policy, and interoperability challenges within and between electronic trading communities.
IS290 Laboratory in Document Engineering
Engineering for E-Business." This course complements IS290-4 with more extensive coverage of XML programming models and frameworks, XML tools and development environments, and implementation experience with emerging XML and Web services standards.
IS206 Distributed Computing Applications and Infrastructure
This course gives a broad overview of applications of networked computing, the computing systems and infrastructure that support them, and the supplier industry. We proceed top-down, starting with the applications and moving down through the layers of supporting infrastructure, understanding their role in supporting the applications and layers above them. The course is intellectually centered about a set of cross-cutting core concepts, seeing how they are applied in different contexts. An abstracted view is presented, focusing on issues relevant from an application perspective, and avoiding many detailed issues necessary for successful implementation of such systems. The objective is to understand distributed computing and its infrastructure in sufficient depth to conceptualize and specify new distributed applications and to work with the implementation team to realize them.
  • P2P Application
    We are currently building a peer-to-peer networked application for message exchange between groups in our class.

Fall '02

CS61B Data Structures
Fundamental dynamic data structures, including linear lists, queues, trees, and other linked structures; arrays strings, and hash tables. Storage management. Elementary principles of software engineering. Abstract data types. Algorithms for sorting and searching. Using the Java programming language.
  • Attaxx Game
    I built a threaded game that is played between two remote machines, using a Java GUI to display the board. The object of the game is to capture as many of your opponents pieces as possible. A player may capture his opponent by simply placing their own piece next to the opponents. Movement regulations of jump: moving two places and jumping an opponent, and place: moving a piece to the next square, are put on all pieces. An intelligence is built into the game as well, so an automated player may play in place of any live opponent(s).
IS204 Information Users and Society
Designing and managing effective information systems requires an understanding of the circumstances of their use: real people use them for specific purposes under specific circumstances. Information systems (computer-based and traditional) both shape and are shaped by their users and their context. In the first half of this course, we consider the social nature of information and information systems, and their design and use as part of how people make sense out of their worlds, interact with one another, and coordinate action across time and space. We consider such issues as the social construction of information; knowledge communities (including organizations) and the collaborative nature of knowledge; the self and community in an electronic world; assessing user needs; involving users in system design; and issues in human-computer interaction, and computer-supported cooperative work.

Designing and managing effective information systems also requires having a larger understanding of law and policy issues arising from the uses of information. Sometimes these laws, especially intellectual property laws, provide important sources of protection against unauthorized uses or appropriations of information. Because information law and policy is evolving at a fairly rapid pace in response to new technologies, it is important to have a sense of some of the larger information policy debates going on at national and international levels, such as those requiring libraries to filter content and those concerning privacy, because what is a policy debate now may turn out to be a regulation or a broader rule at a later time. As information becomes the principal commodity of the information economy, traditional "freedom of information" policies need to be adjusted.
IS202 Information Organization and Retrieval
Organization, representation, and access to information. Categorization, indexing, and content analysis. Data structures. Design and maintenance of databases, indexes, classification schemes, and thesauri. Use of codes, formats, and standards. Analysis and evaluation of search and navigation techniques. This course will introduce students to the principles of information storage and retrieval systems and databases. Students will learn how effective information search and retrieval is interrelated with the organization and description of information to be retrieved. Students will also learn to use a set of tools and procedures for organizing information.
  • The Photo Project consisted of building a class-wide metadata classification system used to annotate photos. Based on group themes, each group created a faceted metadata system encompassing all properties of the photographs taken pertaining to that theme. As a class we then collaborated our systems into one central architecture which was used to store and retrieve all photo types.View project site or completed photo database.
home | resume | portfolio | coursework | contact