Course Syllabus

Please note that the specifics of this Course Syllabus are subject to change. Instructors will notify students of any changes and students will be responsible for abiding by them. Even if you print this syllabus, please check the online version often.

Is IST 242 the right course for you?

Knowledge of Java is a pre-requisite. You should have taken Java either in IST 140 or in IST 240. If you didn't take any Java course before or have any other questions email your instructor.

Based on the Big Java Late Objects - Cay Horstmann Textbook, you can see that IST 240 and IST 242 pick up where IST 140 left off. IST 240 covers chapters 8-11 while IST 242 goes from 8-17.

IST 240 is designed as a more general programming course and it might be the last stop for many students. IST 240 might also be an intermediate step before you take IST 242.

IST 242 is a more advanced course designed for students that intend to become professionals in programming.

Prerequisites and topics for 242 include: IST 140 - Introduction to Application Programming, IST 240 - Introduction to Computer Languages, and IST 242 - Intermediate & Object-Oriented Application Development

Live Sessions

Every Monday at 8:00 PM (ET)

  • Instructor will hold a live session using Canvas Conferences every Monday night at 8:00 PM (ET)
  • Instructor will review the lesson for the week and discuss assignments
  • You can participate live and ask questions or see the recording later

Description

IST 242: Intermediate & Object-Oriented Application Development (3 credits) - Intermediate application development including algorithms, data structures, and object-oriented concepts.

This is a second course in application development. It will focus on the intermediate knowledge needed to create applications that use high level programming languages, combining original code with existing code libraries and application programming interfaces (APIs). The perspective will be of application development that takes place within a human and organizational context; in this sense data structures will be construed as representations of organizational entities and information, and algorithms as a reflection of human and organizational processes and activity. Students will also learn about common application architectures and design patterns. This is a hands-on, practical course designed for IST design and development option undergraduate students and others as an elective.

Prerequisites

One of the following courses:

  • IST 140 
  • CMPSC 121
  • IST 240

Objectives

Understand the basic rationale and approaches for object-oriented application development and how to apply this to the development of object-oriented applications.

  • How classes and objects can be used to represent real world problem spaces, including the abstractions of methods, attributes, operations, encapsulation and information hiding and the separation of behavior and implementation
  • How to implement object-oriented abstractions; core object-oriented concepts including inheritance, polymorphism, encapsulation, and information hiding; classes and their constructors, attributes, and methods; abstract classes, methods, and interfaces

Problem-solving in human-centered application contexts that require event-driven applications.

  • Understand and describe the role of event handing as a central application development technique for human-centered problem domains
  • Implementing event-driven application development for systems supporting human-computer interaction

Instructor

All course-related email, including messages to your instructor(s) and fellow students should be sent within Canvas, using the Inbox. Every attempt will be made for the instructor (or a substitute) to respond to email questions within 24 hours.

Additional instructor information can be found by selecting People and then the Teacher name.

Materials

Most students do well in the course using only my notes and examples. Some students like to have a textbook to support their learning. No materials are required to be purchased for this course.

Recommended OPTIONAL Text:

  • Horstmann, C. (2013). Big Java: Late Objects, Wiley. ISBN: 9781118087886
    • An online version of this text is available at no cost as a Penn State Library E-Book and can be accessed through Library Resources in the left navigationSome E-Books will only be available online, while others will be available to download in full or in part. You may choose to use the E-Book as an alternative to purchasing a physical copy of the text. For questions or issues, you can contact the University Libraries Reserve Help.
    • The publisher (Wiley) also offers a student companion site, sorted by both chapter and resource.

    Assignments & Grading

    This course is assignment intensive. It is very important that you follow the deadlines and do your assignments every week. No late assignments are accepted.

    Very important: The amount of time you'll need to spend on an assignment is directly proportional to its difficulty: the more difficult the assignment, the more time you'll need to complete it. Many assignments allow more than one week to work on them. This is by design. For those assignments, you will need more than one week to work on them. So it is very important that you start early on those assignments instead of trying to do them in one or two days right before they're due.

    The course builds incrementally from your prerequisite (IST 140) to a fairly developed knowledge of Java. 

    The sharing of knowledge is strongly encouraged. Working together to understand and learn during the semester is essential; however, COPYING (from the Web or peers) assignments or Java code is unacceptable. This will be considered an academic integrity violation.

    The course is based on assignments.

    • Assignments
      • We will wrap up every major topic with a problem that will gather what was discussed that week. It should be done individually without any discussions among peers. Clarifying questions might be asked directly to the instructor.
      • Each problem is built around the three core pedagogical beliefs that guide this class.
        • First, the problem-based approach puts more control of the learning into the hands of the student.
        • Second, problem-based learning requires students to develop excellent problem-solving skills.
      • Thus, the course design is more PROCESS-oriented than CONTENT-oriented. As a student, your responsibility is to develop a product and the instructor's role is to help guide, interpret, assess and evaluate your efforts. The instructor's role is to be a guide and facilitator. The central point is that the problem-based nature of the course provides you, the student, a chance to both pursue topics and draw on material and resources in ways that best help you respond to the problem that has been posed. In doing this, you can learn about how to assess your own knowledge and develop strategies for how to improve your problem-solving skills.

    There are two types of deliverables. Most assignments will ask for Java code. 

    • Java: You will submit the .java files, the Java source code. They should be zipped using NetBeans export to zip function. Please check the submission guide.
    • Other: PDFs, Word files, or just filling in submissions forms on the dropboxes.

    Your grade is based on the total number of points your earn and you earn points with each assignment.

    The grading systems and scale are developed to encourage and reward learning. Early in the semester, the assignments are weighted less so that you can learn (typically by failing to get the full assignment) by doing problem-based work without being ‘punished’ for making mistakes. 

     

    Course Grading Breakdown
    Grading Category Total Points Percentage of Final Grade
    Lesson 01 10 10.5%
    Lesson 02 10 10.5%
    Lesson 03 25 26.4%
    Lesson 04 30 31.6%
    Lesson 05 10 10.5%
    Lesson 06 10 10.5%
    TOTAL 95 100%

    Course Grading Scale

    The following are minimum cutoffs for each grade:

    • 93.00% = A
    • 90.00% = A-
    • 87.00% = B+
    • 83.00% = B
    • 80.00% = B-
    • 77.00% = C+
    • 70.00% = C
    • 60.00% = D
    • less than 60.00% = F

    Course Policies and Expectations

    • Logging into Canvas - Students are expected to login regularly to check for course updates, announcements, emails, discussions, etc.
    • Emailing through Canvas - Students are expected to use Canvas for all course email communication.
    • Attending virtual meetings - Students are expected to use specified virtual meeting tool(s) for collaboration, meetings, presentations, etc., as needed.

    Academic Integrity

    Penn State and the College of Information Sciences and Technology are committed to maintaining Penn State's policy on Academic Integrity in this and all other courses. We take academic integrity matters seriously and expect you to become a partner to the University/College standards of academic excellence.

    For more information, please review these policies and procedures:

    WARNING: In addition to other policies, using any material in any media format - from “answer sites” (such Course Hero, Chegg, and all others) and/or other type of sources - is considered CHEATING and will not be tolerated. Sanctions range from failure of the assignment or course to dismissal from the University. Contact your instructor with questions related to this topic.

    University Policies

    Review current information regarding various Penn State policies (such as copyright, counseling, psychological services, disability and military accommodations, discrimination, harassment, emergencies, trade names, etc.) on the University Policies page.

    Resources

    Find extensive information and links to many Penn State and IST resources (including the Penn State libraries, video conferencing tools, technology and software, writing and research help, and much more) on the Resources page.

    Technical Requirements

    Standard World Campus computer technical specifications are assumed for this course. Please test your computer for requirements. In addition, a webcam and a headset with a microphone are REQUIRED for the course. These may be used for virtual meetings, virtual office hours, interactions with classmates and your instructor, and group presentations - which are all conducted with virtual meeting tools. No special software is required.

    Schedule

    The following schedule outlines the topics covered in this course, along with the associated time frames, readings, activities, and assignments. All due dates reflect Eastern Time (ET). Specifying the time zone ensures that all students have the same deadlines, regardless of where they live.

    Course Summary:

    Date Details Due