Course:INFO153 - Applied data Management
On Campus Offering:Fall (day), Fall (eve), Spring (day), Spring (eve)
Online Offering:None
Faculty:Smith, Thomas J.
Extended Course Description:
Catalog Course Description:
Introduces concepts of software construction beyond writing simple code to prepare students to deal successfully with larger programs.  Addresses general issues of design at the routine and module level.  Discusses issues related to data organization and definition, control flow, layout and style, and documentation.

Pre-requisites and Co-requisites:
INFO 152  Web Systems and Services II

Curriculum Role:
This is a core, required course for the BS in Information Technology and the BS in Information Systems and an approved elective for the BS in Software Engineering. It is taken by students in or following their sophomore year.

Course Rationale:
As more and more information systems are moved to the Internet, the use of Java as the implementation technology has become ubiquitious.  This course provides a hands-on introduction to object-oriented design and Java as preparation for development of enterprise, web-enabled applications in subsequent courses.

Course Outcomes:
Upon successful completion of this course, a student will be able to:
• Explain basic issues of information hiding, coupling and cohesion and apply these concepts in organizing code into routines
• Apply basic principles of data typing, scope, and naming in designing the data definition and organization in a medium size program
• Compare and contrast control structures and discuss common issues and problems in control structure selection and use
• Construct medium size programs applying reasonable standards of layout, style and documentation in a consistent fashion
• Create a Web Application using Java JSP/Servlet technology.
• Become familiar with Web Server software: Apache and Tomcat

Contribution to Program Educational Outcomes:
This course contributes to the program educational outcomes as follows:
Outcome       Contribution
(a)                   Introductory server-side programming
(b)                   Students design and implement computer programs using 
                       object oriented techniques.
(c)                   Advanced Object-Oriented  program design & implementation
(d), (f)             Programming projects are done in pairs or small teams helping 
                       students practice working together and communicating about 
                       problems
(h)                   Introduction to the scope of the knowledge domain.
(i), (j)               Object-oriented design and programming principles
(k)                   Key focus of the course.

Course Content:
Principal topics and the approximate number of weeks devoted to each are:
• Review of programming language constructs and facilities (1)
• Introduction to server-side programming.
• Server software: Apache, Tomcat, SSH, MySQL, Linux.
• Organizing code into units: routines and modules; methods and classes.  Principles and applications of information hiding, coupling, and cohesion (2)
• Data design.  Naming of data elements, scope and persistence, data types, and complex data types.  Storage and input/output of data. Selection and application of advanced data structures (2)
• Selection and use of control structures; preferred approaches and common errors in control flow; recursion (2)
• Concepts and examples of programming style; Commenting and external documentation for programs (2)
• Professionalism in software development; Impact of size and complexity on code construction; Team standards and code ownership (1)

Presentation:
Note: Presentation method may vary somewhat from section to section.
Lectures, in-class exercises, discussion, and demonstration, and homework assignments. 

Assessment:
Note: Assessment method may vary somewhat from section to section.
Evaluation is based on individual and pair homework assignments, quizzes, exams, and class participation.
Previous | Course List | Course Offerings | Next
Email this page Print this page
Course Details
Dotted Underline