CSCI N341 Introduction to Client-side Web Programming Teaching/Learning Goals
The Who and What of N341
Who - Anyone with an interest in understanding implementation of web
based systems. Background should include one semester of programming
that covers C, C++, Java style languages and basic data structures such
as arrays (C201 or other programming experience is sufficient). The course is of
interest to anyone seeking skills for building Web systems.
What - A project-oriented course on user interface design and
implementation with special attention to Web sites. Design topics include
methods for determining site and user interface purpose and structure,
modeling and prototyping, and usability. Implementation topics include
laboratory sessions to practice elements of user interface design as applied
to Web site development. More specific information can be obtained by reading
the following discussion of course goals or by examining exercises listed
as home works on the course syllabus.
CSCI N341 Learning Goals
The learning goals of each computer science course strive to capture
intended learning outcomes. The goals are expressed using the terms that
follow. These terms describe the level of familiarity (most to least) with
respect to various kinds of material and procedures.
The N341 learning goals cover important areas recommended jointly in a
report by the Association of Computing Machinery (ACM) and the Computer
Society of the IEEE in 2001 for university computing curricula. These international
organizations were established to promote academic and professional excellence
in the computer sciences. The complete baccalaureate curricula list consists
of nine subject areas, of which a portion are covered in this course, primarily
those areas which better prepare the student to succeed in subsequent Indiana
University Southeast computer science courses and as professional computer
scientists. Several supplementary areas are covered that have developed
since publication of the curricula report. Many of these subjects listed
below will often recur in subsequent courses and at a level requiring further
Mastery means the student will be able to exhibit knowledge of the
material and/or skill with the procedure, in a new but appropriate context,
even when not instructed to do so.
Familiarity means the student will be able to answer questions about
the material and/or to use the procedure, in a new but appropriate context,
when instructed to do do.
Exposure means the student will have heard the term and/or seen
the procedure, but may not be able to discuss or use it effectively without
HC4. Graphical user-interface design (6)
NC5. Building web applications (6)
HC2. Human-centered software evaluation (3)
HC5. Graphical user-interface programming (6)
HC7. Human Computer Interface aspects of collaboration and communication
HC1. Foundations of human-computer interaction (3)
HC3. Human-centered software development (3)
Design of N341 to Achieve These Goals
Computer science demands competency in a range of skills. Therefore,
students benefit from the guided practice in the environment of a university
class. To facilitate this, N341 includes the following:
Students complete assignments aimed at developing the foundational skills
of of interface design and programming. Assignments are graduated in difficulty
as is the amount of guidance provided the student which decreases through
Class time is divided between instructor lecture, discussion, and exercise.
Individual student questions serve to guide the class discussion.
Design and programming methodology is used throughout the course to assist
students in visualizing assignments and solutions, and managing the details
of designing and implementing user interfaces.
Exercises are available as Web pages and are discussed in class when assigned
using the pages available to the student.
Most questions arise when students are working on exercises outside of
class. Students are encouraged to contact the instructor directly or by
emailing their questions and code of the troublesome exercise for guidance.
In recognition that problem solving is often an iterative process, assignments
that are less than perfect can be submitted for instructor evaluation,
refined and resubmitted for additional credit.
Document last modified: