Internet Technology (IT)

IT 500  Introduction to the Internet, Web Authoring, and Multimedia  (3 credits)  

This course has two parts: Technical and non-technical overview of the Internet and all aspects of HTML and Web authoring. Topics in the first part include History of the Internet, Architecture, Basics of TCP/IP and its services: ftp, telnet, SNMP and NFS,IP addressing scheme, Subnet masks, Packet switching, Security issues, DNS. Browser issues. Configuring browsers. The second part of the course includes HTML and Web authoring using HTML and an HTML editor including multimedia. Students develop professional looking Web pages with multimedia features. The focus is designing an effective Web page and publishing it.

IT 600  Overview of Computer Networks and Internet Technology  (3 credits)  

This course provides a thorough introduction to computer networks and data communications. Topics include major applications of networking, protocols, the OSI reference model, physical links and interfaces, modems and modem standards, interface standards, multiplexing and communication links, LANs, WANs, routers and Internetworking, application support protocols, overview of TCP/IP, Internet layer functions, address resolution, DNS, IP addressing system, subnets, IP routers, TCP and UDP and Internet services.

IT 603  Overview of Information Security  (3 credits)  

Introduction to computer networking. The OSI network reference model. Introduction to TCP/IP. Introduction to the web architecture. Overview of operating system (both Windows and Linux) security, network security, web security, social engineering, and legal and ethical issues.

IT 604  Web Development I: Java Script and CGI Script  (3 credits)  

This course provides a comprehensive introduction to Web development using scripting languages currently used in industry. Both client side and server side development are discussed. The languages currently used in industry are JavaScript for client side development and CGI Scripts using Perl for server side development. Java Scripts: Topics include overview of JavaScript language, embedding JavaScript code in the HTML page, events, multimedia, client side form data validation, and dynamic HTML. Students will be writing several practical Java Scripts. CGI Scripts using Perl: Topics include Perl language overview, basic CGI concepts, how data is transmitted between a client and a web server, processing of data forms, and database connectivity. Students will be writing several practical CGI scripts.

IT 605  Database Management Systems  (3 credits)  

This course provides an introduction to database concepts, SQL, and web based database design. The major goal is to provide students with an understanding of the basic concepts underlying the use of a database system. A database management system and Perl will be used as a vehicle for illustrating some of the concepts discussed in the course.

IT 607  Systems Development and Project Management  (3 credits)  

This course combines project management methods and structured systems development techniques and applies them to the complex world of information systems development. The central project management functions planning, organizing and controlling are presented in the context of the systems development process. Topics include project planning, estimating, testing, implementation, documentation, management of change, utilization of services consultants, software houses, turn-key systems and proprietary software packages.

IT 608  Web Development II: Java Applets and Java Servlets  (3 credits)  

This course provides a comprehensive introduction to Web development using higher-level languages currently used in industry. Both client side and server side development are discussed. The language currently used in industry is Java for both client side and server side development. Java Applets: Topics include review of Java language, difference between a java applet and Java applications, AWT, components, events, graphics, multimedia, and components in Swing. Students will be writing several practical applets. Java Servlets: Topics include Java servlet API, Java Threads, difference between GET and POST methods, server side processing or client data, session handling, Inter servlet communication, Applet servlet communication and database connectivity and three tier Web applications. Introduction to Java Server Pages (JSP). Students will be writing several practical Java servlets.

IT 610  Web Development with Contents Management Systems  (3 credits)  

Concepts of web computing. The layered web architecture. Web site structure. Creating websites with Contents Management Systems (CMS). Enabling and managing social networking features including blogging, polling, discussion forums, and RSS publishing. The course project is for each students to design and implement an effective corporate website for a fictitious company.

Course Rotation: TBA
IT 612  Web Server Setup, Configuration, and Security Issues  (3 credits)  

This course provides a thorough introduction to the architecture of a Web server. Students will be setting up a Web server, configure it and understand the security issues. Students will be doing hands-on work either in the department labs or they can setup their own personal Web server. Topics include: Functions of a Web server, planning a server, configuring for CGI, and servlets, log files, server maintenance. Security issues will be discussed with focus on encryption, Secure Socket Layer (SSL), firewalls, and secure online transactions.

IT 614  Responsive Web Development with HTML/CSS and jQuery  (3 credits)  

Specifying web presentation structure with HTML5. Embedding contents. Working with JavaScript objects and input validation. Specifying web styles with CSS3. Working with tables. Creating dynamic and client/server features with jQuery. Implementing web service features through Node.js. Asynchronous operations using jQuery and WinJS. Communicating by using WebSocket. Supporting multimedia. Drawing using scalable vector graphics. Dragging and dropping files. Making website location-aware.

Course Rotation: Spring
IT 620  Open Source Application Development I with Java and Eclipse  (4 credits)  

Introduction to Java programming, algorithm design and computer science concepts, using Eclipse development platform. Covers procedural programming constructs, use of language provided objects and static methods, building classes, the management of reference variables in contrast to primitives. Programming problem-solving is emphasized throughout. Computer science concepts include time complexity analysis, elementary sorting and searching, and adjacency matrices for graphs. Also included are beginning concepts of Object Oriented Design such as identifying the attributes and responsibilities of classes.

Course Rotation: NY: Fall, GC: Fall.
IT 621  Open Source Application Development II with Java and Eclipse  (4 credits)  

This is a continuation of IT 620, covering advanced topics in Java using Eclipse development platform. Building linked data structures including lists and trees. Recursive techniques for managing binary trees and for backtracking. Derivation including abstract classes, and polymorphism Interfaces. Exception handling. Information storage and retrieval systems and time complexity analysis. Applicable design patterns. Coverage of Java collections framework.

Course Rotation: NY: Spring, GC: Spring.
IT 624  Application Development with .Net and Web Services  (3 credits)  

Introduction to .NET Web technologies through C# .NET for people with basic programming skill. Topics include object-oriented programming, exception handling, delegate, multithreading, graphic user interface, Web programming with ASP .NET, database programming with ADO .NET, Web services, and Microsoft Visual Studio .NET IDE.

Course Rotation: Summer.
IT 626  Concepts and Structures in Internet Computing  (3 credits)  

Integrated hands-on coverage of fundamental concepts and technologies for enterprise and Internet computing. Topics include data storage; XML data specification, parsing and validation; data and language translation; networking and Web technology overview; software framework technology for controlling software system complexity; and a roadmap for the enterprise computing technologies.

Course Rotation: Fall
IT 628  Linux Environment and Security  (3 credits)  

Linux is the fastest growing operating system today. This course starts with an overview of the structure of the Unix/Linux operating and Unix/Linux commands. Topics include installation of Linux, working with file system, Linux shells, file permissions, simple administration, and basic security issues. Introduction to an open source programming such as Perl or PHP. Students will be writing several practical applications using this programming language.

Course Rotation: NY: Fall, GC: Fall.
IT 630  Design and Programming of User Interfaces  (3 credits)  

This course is an introduction to the field of human-computer interaction using the User-Centered Design method, which starts from the needs of the users and their human capabilities (e.g., memory, attention, social responses), and follows the iterative design and evaluation (with and without users) of the user interface (UI). As a practical exercise, a graphical and event-driven UI will designed via this method, prototyped via Visual Basic (for which a short tutorial will be included), and evaluated.

IT 631  Web Interface and Usability  (3 credits)  

Specifying web presentation structure with HTML5. Emedding contents. Working with JavaScript objects and input validation. Specifying web styles with CSS3. Working with tables. Creating dynamic and client/server features with jQuery. Implementing web service features through Node.js. Asynchronous operations using jQuery and WinJS. Communication by using WebSocket. Supporting multimedia. Drawing using scalable vector graphics. Dragging and dropping files. Making website location-aware.

IT 632  Web Computing  (3 credits)  

Fundamental concepts of Internet computing and component-based software engineering. Web application architecture. HTTP protocol. Presentation tier techniques: servlets and Java Server Pages, Java Server Faces. Application server technique: Enterprise JavaBeans. Introduction to web services with Java and C# .NET.

Course Rotation: Spring
IT 634  Introduction to Data Mining  (3 credits)  

While the corporate world is flooded by data, it is very rare where you see knowledge or valuable information. Data mining is what a corporation needs to generate business value, the bottom line of its existence. This course will present the techniques and tools needed to search for significant patterns and trends in large databases. The course will present Data Mining is a Knowledge Discovery methodology that involves nontrivial extraction of implicit, previously unknown, and potentially useful information from data. The course will also discuss machine learning, statistical and visualization techniques to discovery and present knowledge in a form, which is easily comprehensible to humans.

Prerequisites: Completion of Core requirements or permission of the chair.
IT 636  XML Application Development  (3 credits)  

The World Wide Web Consortium's (W3C) extensible Markup Language (XML) has rapidly emerged as a standard that is used in a wide variety of applications related to Web and e-Commerce. This course starts with basics of XML and goes on to developing XML applications using the programming language Java. Knowledge of Java is assumed. The course also deals with using XML to pass data between distributed Java applications.

IT 638  Introduction to Pattern Recognition  (3 credits)  

Pattern Recognition techniques are useful in many applications of computer science and information systems, such as information retrieval, data mining, artificial intelligence and image processing. This course is an introduction to the foundation of pattern recognition algorithms. Topics to be studied: data structures for pattern representation, feature extraction and selection, parametric and non-parametric classification, supervised and non-supervised learning, clustering, decision trees, nearest neighbor, artificial neural networks, and hidden Markov models. Applications of various classification techniques will be demonstrated by several on-going handwriting, graphics, and speech recognition projects.

Prerequisites: Completion of Core requirements or permission of Chair.
IT 640  Introduction to Cloud Computing Technology  (3 credits)  
Prerequisites: Cloud computing basically means running your applications on infrastructure other than your own. The primary reason why businesses, big and small, adopt cloud computing services is the cost. Legacy machines, equipment, and networking have been a burden for companies to maintain and manage, an of the more difficult problems is to make good on the investment. By going on cloud, businesses the expense involved in maintaining and managing their own datacenters, not only in terms of hardware and software, but also personnel. Using cloud means you have hardware and other resources on demand and they are elastic. This course will cover fundamental topics such as IaaS, PaaS, SaaS, virtualization, and multi-tenancy. Students will learn common cloud platforms, tools and technology with a focus on Google App Engine. They will do hands-on app development locally on their machine using Python programming language and when ready, upload their apps to Google datacenters. Google runs the production server. Knowledge of programming is assumed but Python will be covered from the beginning.
IT 642  Introduction to Mainframe Computing  (3 credits)  

This course provides an introduction to mainframe architectures and IBM System z servers, high-performance batch processing and transaction processing, mainframe operating systems including IBM z/OS and Linux, mainframe security, mainframe performance monitoring and tuning, configuring J2EE application servers on mainframes, and integration of mainframes in a business solution.

Course Rotation: NYC: Fall and Summer, PLV: Fall and Summer.
Prerequisites: Permission of instructor required and working knowledge of an object oriented programming language.
IT 660  Network Security  (3 credits)  

This course covers the most important issues and topics in the huge area of computer and network security. Topics include: Encryption techniques, (DES, AES, Contemporary Symmetric Ciphers, Public Key Cryptography and RSA), message authentication and hash functions, digital signatures and authentication protocols, IP security (IPsec), SNMP vulnerabilities, e-mail security, secure socket layer (SSL) and transport layer security, web security, intruders, malicious software and firewalls.

IT 662  Web and Internet Security  (3 credits)  

This course covers technologies for securing e-commerce Web applications against vicious hacker attacks in both business-to-client (B2C) and business-to-business (B2B) environments. Server-side topics include Web server security, Web service security, secure transactions, intrusion detection, access control, firewall management, log analysis, SSL, digital certificate generation, and defense against attacks like denial-of-service. Client-side topics include applet sandbox security model, digital certificate management, cookie management, and defense against attacks like virus and JavaScript-enabled spoofing. Data security topics include cryptography basics, non repudiation, dematerialized moneys, virtual purses, EDI and its security, and defense against various e-commerce frauds.

IT 664  Computer and Internet Forensics  (3 credits)  

This course provides a general overview of the theory and application of information warfare and forensic computing. The background information on information warfare highlights the inherent problems in today's computing environment and indicated the necessity of forensics to complement computer security. The course focuses on information warfare arsenal and tactics, defensive strategies, and causalities; network surveillance tools for information warfare; fundamentals of computer forensics; computer forensics services and technologies; search and seizure; data recovery and identification and digital evidence collection, duplication, and preservation; computer image verification and authentication; reconstruction of past events; legal issues; and advanced topics in forensics.

IT 666  Information Security Management  (3 credits)  

This course discusses information security from organizational and managerial perspectives. For an organization, information security is a continuous management process. Security technology alone cannot facilitate this process without security professionals being aware of the tradeoffs and various policy issues embedded in this process. This course will provide students with a background in managing information security in organizations. Topics include risk identification and assessment, security policy and planning, personnel and security, privacy, security auditing, and legal issues.

IT 668  Building Secure Software I  (3 credits)  

This course is intended to provide students with an introduction to expert perspectives and techniques that will help them to ensure the security of essential software. Students will learn how to consider threats and vulnerabilities early in the development cycle so that they can learn how to build security into their software systems. Students will learn how to determine an acceptable level of risk, how to develop security test, and how to plug security holes before software is even shipped.

Course Rotation: Fall, odd years.
IT 669  Building Secure Software II  (3 credits)  

This course is a continuation of IT 668. Some of the topics that have been introduced in IT 668 will be revisited. In addition, in this course, students will learn how to padlock, their applications throughout the entire development process- from designing secure applications to writing robust code that can withstand repeated attacks to testing applications for security flaws. Students will learn: the process and techniques of writing secure code, effective authentication and authorization techniques, the most common web application vulnerabilities and how to avoid them, secure user management systems and data validation strategies. Students will have access to information about threat modeling, designing a security process, international issues, file-system issues, adding privacy to applications, and performing security code reviews. They will also learn about buffer overruns, and Microsoft .NET security. In addition, students will be provided with practical checklists for secure software development.

Course Rotation: Fall, odd years; Spring, odd years.
IT 670  Mobile Forensics Investigation  (3 credits)  
Prerequisites: The field of mobile forensics has expanded over the past few years as more of our lives are captured on smartphones and other mobile devices. This course will provide students with an overview of cellular networks and the carious devices that operate on these networks. Moreover, an in-depth analysis of the file systems and operating systems, including the iOS and Android platforms will be explained. Students will have the opportunity to use professional mobile forensic tools utilized to examine mobile telephones, SIM cards, media cards and synced data on paired computers in a forensic manner. The course will introduce students to professional investigate techniques, legal procedures and reporting standards necessary to build a successful case. Other topics in the course will include investigations involving tablet computers, digital cameras, multimedia players and Global Positioning System (GPS) electronics.
IT 680  Managing Information Technology Outsourcing  (3 credits)  

This course studies the phenomenon of information technology offshore outsourcing. The course examines the strategies, benefits and pitfall of offshore outsourcing, how the culture and politics of the receiving countries play a role in the success of the outsourcing business model and the effect of outsourcing on US economy, job market and politics. Course Roation:NY;PLV:Fall;Summer

IT 690  Special Topics in Internet Technology  (1-3 credits)  

This is a special topics course based on current trends in the field. It varies from semester to semester.

IT 690A  Topic: Web Security  (3 credits)  
IT 690B  International Perspective on Network Security  (3 credits)  

The importance of network security is increasingly becoming a global concern. It is imperative to have an understanding of how the international community addresses network security to insure the reliability of our own data communications infrastructure. The online portion of this course will provide an introduction to the technology of telecommunications and networking. Topics will include techniques and policies for securing networks, and an overview of cybercrime and its prevention. Abroad, students will participate in seminars with academic and industry professionals to get the international perspective.

Prerequisites: Permission of the instructor. Students who have taken an introductory course in Security may participate in the travel part of the course and will have to register for a zero credit field study (CIS 099). This course can be used as an IS free elective.
IT 690C  Travel Course to India: Managing Technology Outsourcing  (3 credits)  

This course studies the phenomenon of information technology offshore outsourcing. The course examines the strategies, benefits and pitfall of offshore outsourcing, how the culture and politics of the receiving countries play a role in the success of the outsourcing business model and the effect of outsourcing on US economy, job market, and politics. During travel to India students will visit Indian companies doing US outsourcing as well as US companies in India. The trip incudes sightseeing (e.g. Taj Mahal) and the exploration of Indian culture.

IT 690E  Mobile Forensics Investigations  (3 credits)  

The field of mobile forensics has expanded exponentially over the past few years as more of our lives are captured on smartphones and other mobile devices. This course will provide students with an overview of cellular networks and the various devices that operate on these networks. Moreover, an in-depth analysis of the file systems and operating systems, including iOS and Android platforms will be explained. Students will have the opportunity to use professional mobile forensic tools utilized to examine mobile telephones, SIM cards, media cards and synced data on paired computers in a forensic manner. The course will introduce students to professional investigative techniques, legal procedures and reporting standard necessary to build a successful case. Other topics in the course will include investigations involving tablet computers, digital cameras, multimedia players and Global Positioning System (GPS) electronics.

Course Rotation: NY:PLV;Fall
IT 690T  Topic: From Telemedicine to Telehealth: Opportunities for IT and Collaboration  (3 credits)  

As the use of telemedicine has grown, it is now time to explore broader opportunities for IT and collaboration best practices to impact the broader healthcare and life sciences ecosystem, towards a broader notion of telehealth. This seminar-style course will include lectures from industry guest speakers and cover new business opportunities, supporting technologies which are required to meet those opportunities, and the changes in organizational and regulatory frameworks which will support implementation of these technologies. Sample aspects of the life sciences ecosystem which will be covered include clinical trials of new prescription drugs, global communication of drug efficacy and quality through regulatory systems, and remote management of the medical device manufacturing process. In each of these areas, we will discuss the prospect of telehealth to include more remote participants in the process and have a better impact in patient lives. The course will also include a final project a developing a product plan for technology to address a key telehealth challenge.

Course Rotation: Spring; NY;PLV
IT 690U  Innovation of the 21st Century  (3 credits)  

The 21st century is characterized by the huge amount of technology innovations that are transforming out life and work. This course will use lectures and seminars by the major technology innovators to introduce the main themes and methodologies of these innovations, how to integrate these innovations into creating new products or services and how to facilitate and speed up the innovation process.

Course Rotation: Fall
IT 691  Capstone Project  (3 credits)  

In this project-oriented course student teams develop real-world computer information systems for actual customers. Students learn the importance of a systematic approach in the process of developing robust computer information systems, the management of projects, how to interact with customers and conduct requirements analysis, and the technical and soft skills required. Emphasis is placed on developing skills and knowledge in technical areas that have realistic value in the workplace. Depending on the nature of a project the technical skills can involve e-Commerce and Internet technologies, client-server systems, especially those with Web interfaces to backend databases, relational databases, web design and interfaces, HTML, Java programming, and scripting languages such as PHP and Cold Fusion for accessing databases through web interfaces. In addition to technical skills, students develop problem-solving, critical thinking, communication, and teamwork skills. By working on real-world systems with actual customers the students learn the appropriate skills – both technical and soft skills – for filling meaningful roles in the professional IT workplace.

IT 692  IT for E-Commerce Project II  (3 credits)  

Students complete the implementation and testing of the project which was specified and designed in IT 900. The deliverables in IT 901 are a complete working product in concurrence with the submitted proposal. It is expected the product will have met all the testing criteria listed in the test plan document. Students will deploy and demonstrate the project in the class.