Information Systems Program (INFO)
INFO 5001. Application Modeling and Design. 4 Hours.
Practices social-technical software engineering methods and tools to solve real-world problems. Explores innovative design and programming techniques to build significant business applications quickly. Studies the process of systematically combining UX techniques, business processes, and complex data models to assemble applications that are user-friendly and meet business requirements. Employs the object-oriented paradigm, visual user interface design principles, and programming languages such as Java, as well as productivity tools, to put together complicated, powerful business applications with ease. Explores the art of how to systematically write software programs to solve any business problem, through practicing simple and smart ways of making software programming enjoyable.
INFO 5100. Application Engineering and Development. 4 Hours.
Covers the basics of Java programming such as arrays, control structures, class definitions, class hierarchies, inheritance, objects, streams, constructors, collections, and GUI components. Describes how to develop and execute Java applications and incorporates several programming projects, which strengthen the understanding of object-based and event-driven programming. Provides the student with the opportunity to achieve a strong working competency in object-oriented programming using the Java programming language.
INFO 5101. Lab for INFO 5100. 0 Hours.
Accompanies INFO 5100. Provides additional instruction in Java programming.
INFO 6101. Data Science Engineering with Python. 4 Hours.
Studies the Python programming language with data science as the application domain. Offers students an opportunity to learn how to perform complex numerical calculations, fixed data types, space efficiency, and vector manipulations. Covers tools and techniques for manipulating tables, spreadsheets, and group and pivot tables involving extremely large data sets. Covers large multidimensional arrays and matrices and the high-level mathematical functions to operate on these arrays. Studies how to use Python to manipulate the classic math and science algorithms. Analyzes helper functions such as linear and nonlinear regression, integration, Fourier transformations, numerical optimization, etc. Includes higher-level classes for manipulating and visualizing data. Applies tools and techniques to classical data science using cases such as time series forecasting, social network analysis, text analytics, and big data processing.
INFO 6105. Data Science Engineering Methods and Tools. 4 Hours.
Introduces the fundamental techniques for machine learning and data science engineering. Discusses a variety of machine learning algorithms, along with examples of their implementation, evaluation, and best practices. Lays the foundation of how learning models are derived from complex data pipelines, both algorithmically and practically. Topics include supervised learning (parametric/nonparametric algorithms, support vector machines, kernels, neural networks, deep learning) and unsupervised learning (clustering, dimensionality reduction, recommender systems). Based on numerous real-world case studies.
INFO 6150. Web Design and User Experience Engineering. 4 Hours.
INFO 6205. Program Structure and Algorithms. 4 Hours.
Presents data structures and related algorithms, beginning with a brief review of dynamic memory allocation. Discusses the fundamental data structures in detail, including the abstract representation, supporting algorithms, and implementation methods. Focuses on understanding the application of the abstract data structure and the circumstances that affect implementation decisions. Covers lists, stacks, queues, trees, hash tables, and graphs. Covers recursion and searching and sorting algorithms in detail. Emphasizes data abstraction and encapsulation in code design. Explores external storage structures, time permitting.
INFO 6210. Data Management and Database Design. 4 Hours.
Studies design of information systems from a data perspective for engineering and business applications; data modeling, including entity-relationship (E-R) and object approaches; user-centric information requirements and data sharing; fundamental concepts of database management systems (DBMS) and their applications; alternative data models, with emphasis on relational design; SQL; data normalization; data-driven application design for personal computer, server-based, enterprisewide, and Internet databases; and distributed data applications.
INFO 6215. Business Analysis and Information Engineering. 4 Hours.
Covers computer information systems and the decision-making process, determination of information requirements, system development life cycle, and system modeling and analysis. Uses a hands-on approach to introduce the student to software engineering methodologies and practices, business requirements specification, business process design, model-driven object-oriented design, software development, and maintenance. Emphasizes the effective leverage of the Unified Modeling Language (UML) to transform business issues and objectives to concrete software solutions that meet business needs and usability and user interface design as critical elements of a successful software engineering engagement.
INFO 6245. Planning and Managing Information Systems Development. 4 Hours.
Provides an overview of the most popular information systems needs’ assessment methodologies including portfolio analysis, stage assessment, business systems planning, and the Alloway survey technique. Topics include utilities IS strategic plan prioritization techniques of business goal alignment, architectural compatibility, and cost/benefit and risk analysis to demonstrate how businesses match needs to budgetary constraints. Describes and evaluates options for the placement of the IS function within the organization and a variety of methods to manage the function. Introduces a generic application development and project planning methodology used as a model to facilitate the development of a four-stage project plan for a prototype project. Uses the Project Management Institute’s PMBOK and Harvard Business School case studies extensively.
INFO 6250. Web Development Tools and Methods. 4 Hours.
Explores advanced server-side technologies and tools necessary to design and engineer complete web-based enterprise applications quickly. Designed to build on previous experience to cover the life cycle of a web-based application. Focuses on MVC web development frameworks to build server-side, data-intensive, and multitier web applications. Additionally, discusses designing rich internet applications (RIA) using AJAX and service-oriented architecture (SOA) using REST.
INFO 6251. Lab for INFO 6250. 0 Hours.
Accompanies INFO 6250. Offers additional instruction in Web tools discussed in class.
INFO 6255. Software Quality Control and Management. 4 Hours.
Examines techniques for the management and evolution of software systems. Topics include managing software as an asset; life cycle development and rapid development technologies; maintainability; quality assurance of software systems including testing strategies and problem analysis; software risk analysis; analysis of software project failures; process models, such as CMM and ISO 9001; configuration management; and the impact of new development technologies on software management.
INFO 6350. Smartphones-Based Web Development. 4 Hours.
Covers application development for mobile devices using advanced development platforms. Focuses on how to write mobile applications using cross-platform development tools and processes. Topics include user interfaces, the software life cycle, persistent storage, networking using HTTP and other REST interfaces, and mobile/handheld data applications. Requires a final project.
INFO 6660. Business Ethics and Intellectual Property for Engineers. 4 Hours.
Seeks to support successful engineering careers by offering students an applied understanding of ethical principles in the workplace and fundamentals of intellectual property and the American legal system. Seeks to increase students’ awareness of the ethical implications of their work and to influence colleagues to think and act in a socially cognizant manner. Introduces ethical principles and codes of professional ethics; types of intellectual property (patents, trade secrets, trademarks, copyrights); and fundamentals of the American legal system (sources of American law, contracts, torts, intellectual property, antitrust). Offers students an opportunity to practice verbal communication and presentation skills; develop an applied understanding of the relationship and differences between legal liability and ethical behavior; and develop applied critical thinking, communication, and presentation skills.
INFO 6962. Elective. 1-4 Hours.
Offers elective credit for courses taken at other academic institutions. May be repeated without limit.
INFO 7110. High-Performance Coding for Fintech. 4 Hours.
Distills the programming challenges constantly faced by quantitative developers in the fintech space. Presents high-performance computing challenges as well as their solutions for investment banks, market-making firms, capital management funds, and loan-financing institutions. Covers the art of high-performance computing using object-oriented structure of five prevailing programming languages widely adopted in the fintech industry: Java, C++, MATLAB, R, and Python. In particular, the course offers students an opportunity to obtain capabilities to successfully complete high-performance computing tasks in the following five application areas: global-macro arbitrage, quantitative equity portfolio management, option pricing and trading, fixed-income securities, and market making.
INFO 7205. Advanced Application Engineering Project. 4 Hours.
Offers students an opportunity to master advanced software design and programming techniques for building complex software applications quickly. The engineering issues addressed assume the business problems are difficult to understand and manage in a practical manner—the system capacity must support thousands or even millions of users in a multitude of roles. Addresses high-performance computing requirements, such as concurrency and control, scalability, replication, and failover.
INFO 7225. Accounting and Budgetary Systems for Engineers. 4 Hours.
Covers the latest engineering principles necessary for building complex software systems that comply with recognized standards in the financial industry. With automated business processes today, risk and responsibility are shifting to information technology (IT) systems. Offers students an opportunity to learn how to incorporate information-based controls related to the financial industry that signal trouble, detect violations, and provide accountability, as well as a working approval process. Emphasizes software design. Seeks to help engineers construct complex software from a sophisticated engineering perspective. Examines how to put together cutting-edge organizational systems that people in the financial world can put to good use. Designed to prepare students for jobs in the building, maintaining, and employment of such information systems.
INFO 7245. Agile Software Development. 4 Hours.
Offers students an opportunity to achieve a high level of practical understanding of software development life cycle (SDLC) with emphasis on agile and adaptive incremental methodologies. Examines techniques for the management and evolution of software systems, including project planning from requirements gathering, analysis, estimation, and releasing using a hands-on approach to implement agile methodologies. Also covers maintainability, including software risk analysis, project retrospectives, and process models such as capability maturity model, configuration management, and their practical implementation.
INFO 7250. Engineering of Big-Data Systems. 4 Hours.
Introduces a general framework for thinking about big data. Services such as Web analytics and intelligent e-commerce have promoted a rapid increase in the volume of data generated, analyzed, and archived. In order to solve the problems related to big data, a newer type of database product has emerged. Covers how to apply technologies like Hadoop, Accumulo, MongoDB, and various NoSQL databases to build simple, robust, and efficient systems to manage and analyze big data. Also describes an easy approach to big data systems that can be built and run by a small team of students. Guides students through the theory of big data systems, how to implement them in practice, and how to deploy and operate them once they are built.
INFO 7255. Advanced Big-Data Applications and Indexing Techniques. 4 Hours.
Studies advanced indexing techniques and algorithms for big-data platforms such as Hadoop and NoSQL databases. Covers big-data design and indexing patterns to organize, aggregate, manipulate, and analyze huge amounts of data beyond human scale. Offers students an opportunity to learn advanced techniques to improve the performance and robustness of the advanced big-data programming models. Additional areas of focus include scalable graph databases, advanced indexing, and full-text searching in graph databases.
INFO 7260. Business Process Engineering. 4 Hours.
Addresses the question of how to understand and specify the flow of work responsibility and movement of information throughout the enterprise. For businesses to maximize the benefits of technology, they must transform their ad-hoc and often poorly defined ways of doing things to formal business processes. Analyzes the specification and implementation of complex information systems that integrate well into core business operations. Offers students an opportunity to learn how to use agile process specification techniques, dynamic process execution, and real-time measurement and reporting to support continuous business improvement and change.
INFO 7275. Advanced Database Management Systems. 4 Hours.
Introduces the skill set required to become a serious database applications developer. Offers an overview of the Oracle9i object-relational database system for those who have mastered the fundamental principles of database design and are competent with basic SQL. Gives students the opportunity to develop a strong understanding of the PL/SQL programming language, which is used to create triggers, user-generated functions, stored procedures, and packages for programming Oracle objects. Emphasizes advanced SQL features and Oracle-specific SQL enhancements. Covers optimization and tuning issues. Covers corresponding material for Transact-SQL (used for Microsoft SQL Server and Sybase database systems) as time and resources permit.
INFO 7280. Model-Driven Architecture. 4 Hours.
Develops the skills to utilize new software modeling and management techniques in each state of the life cycle of component-based software systems. Applies and extends a basic knowledge of the Unified Modeling Language (UML). Introduces and applies metamodel management concepts using the OMG metaobject facility as a technology baseline. Develops a component-based software project throughout the course using C++ or Java; grading primarily based on the software project and its public presentation.
INFO 7285. Organizational Change and IT. 4 Hours.
Focuses on the change effort needed to integrate a project into the firm’s organizational structure, culture, business, and process metrics. Geared for students undertaking enterprise resource planning systems, or those involved in small or large organizational reengineering projects designed to make IT a primary focus of the firm’s business strategy. Topics include management theories and organizational design principles; strategy and critical success factor formulation; methods to reach information systems maturity; business process modeling techniques; quality, the mindset, and the problem-solving tools; human resource, cultural, and technical change enablers; how to plan a business reengineering project; and implementation of major organizational change.
INFO 7290. Data Warehousing and Business Intelligence. 4 Hours.
Examines the technical and management aspects of building a data warehouse. Explores the architecture, infrastructure, processes, data quality, database design, and data analysis involved in building the data warehouse for business analysis. Management issues include business goals, tool selection, project management, personnel skills, training, and user requirements. Topics include dimensional data modeling, extraction/transformation/load processes, data quality problems, datamarts, operational data stores (ODS), staging databases, and online analytic processing (OLAP).
INFO 7300. Engineering Cybersecure Software Systems. 4 Hours.
Addresses design and implementation issues critical to producing cybersecure software systems by using a software development perspective. Deals with the question of how to make the requirements for confidentiality, integrity, and availability integral to the software development process from requirements gathering to design, development, configuration, deployment, and ongoing maintenance. Covers emerging software life-cycle practices that address both cybersecurity problems caused by bad software practices that leave software vulnerable to cyberattack and other software vulnerabilities that are caused by deficiencies in modeling of security requirements, architecture, and design issues.
INFO 7325. Introduction to Information Technology Auditing. 4 Hours.
Designed to provide a foundation for the study and professional career development of information technology (IT) auditing. Introduces the fundamentals of IT auditing, core reasons why this is a specialized area of auditing, and the principle objectives of IT auditing and its relationship to integrated financial or operational auditing. Offers an insight into management‘s objectives regarding IT risk management. Uses the Cobit governance and control framework to emphasize management issues regarding control of IT and the achievement of value through managed IT processes. Introduces three primary types of IT audits: the audits of computerized information systems, IT processing environments, and the process of developing and implementing information systems.
INFO 7330. Information Systems for Healthcare-Services Delivery. 4 Hours.
Addresses the important information systems questions facing the delivery and assessment of healthcare services from administrative, financial, and clinical perspectives. These include the use of electronic medical records; health information exchanges; and performance evaluation of providers, patients, and payers. Provides an introduction on how healthcare is delivered. Also focuses on various information management tools being implemented as well as those needed to move care delivery and quality forward.
INFO 7350. Systems and Cybersecurity Fundamentals. 4 Hours.
Presents the principles of data and technology that define systems and cybersecurity from a socio-technical perspective. Offers students an opportunity to gain insight into the importance of systems security within cybersecurity and the integral role that information systems analysts play in developing cybersecure systems that people use. Through hands-on dynamic learning, students explore foundational cybersecurity principles, security architecture, risk management, attacks and mitigation strategies using Kali Linux, cyber incident response, and emerging IT/IS technologies.
INFO 7365. Enterprise Architecture Planning and Management. 4 Hours.
Defines IT strategies for implementing business-driven and technology-based modernization programs, companywide. Covers how to institute improved IT infrastructures to facilitate strategically informed decisions, at all hierarchical levels, across all business units and functional boundaries. Studies the strategies, programs and projects, business models, methods, and technologies needed to bring about deliberate enterprise-scale change as business strategies evolve. Offers students an opportunity to learn how to construct enterprise architectures and use them as road maps to budget scarce capital investment resources to IT development projects. Topics include system interoperability, business and technology alignment, system flexibility and adaptability to change, IT planning, and effective communication with the management leadership.
INFO 7370. Designing Advanced Data Architectures for Business Intelligence. 4 Hours.
Focuses on designing advanced data architectures supporting structured, unstructured, and semistructured data sources; hybrid integration and data engineering; and analytical uses by casual information consumers, power users,and data scientists. Technologies include databases (relational, columnar, in-memory, and NoSQL); hybrid data, application, and cloud integration; data preparation; data virtualization; descriptive, diagnostic, predictive, and prescriptive analytics; and on-premise and on-cloud deployments. Topics include data structures, data models, data integration workflow and data engineering, data integration, data preparation, and data virtualization.
INFO 7374. Special Topics in Information Systems. 1-4 Hours.
Covers state-of-the-art material of current interest. May be repeated without limit.
INFO 7375. Special Topics in Artificial Intelligence Engineering and Applications. 1-4 Hours.
Covers recent advances in neural nets and deep learning techniques with applications to large-scale engineering problems.
INFO 7385. Managerial Communications for Engineers. 4 Hours.
Focuses on communication strategies and tactics for engineers at the interpersonal, team, and organizational level. Course topics include forms (oral and written), styles, and differences in communication; coaching and giving feedback to staff; and building teams, managing conflict, and special topics in organizational communication. The primary goal is to strengthen the students’ social and emotional intelligence skills to help them progress along their engineering career path. Combines academic content with practical skill-building activities.
INFO 7390. Advances in Data Sciences and Architecture. 4 Hours.
Covers a wide range of skills and responsibilities that are necessary for managing complex business performance and operational data. Such data tend to be fragmented, poorly organized, and often flawed. Offers students an opportunity to learn how a more up-to-date mapping of complex data works and to be alerted to the care and attention they must give to such a task as well as the implications of the results. Covers best practices for managing all aspects of the data transformation life cycle, covering broad areas such as requirements gathering, meta-model design, data integration and transformation, as well as implementation and ongoing operations. Discusses tools for mapping fragmented data into business intelligence solutions that guide successful strategies.
INFO 7405. Advances in Engineering Medical Information Systems. 4 Hours.
Focuses on the fundamentals of engineering patient medical records as timelines of medical encounters that capture critical clinical decisions made in various contexts such as assessments, diagnoses, treatments, etc. Emphasizes semantically rich clinical information models to support predictive analysis in order to recognize patterns of disease early. Record systems typically focus on data recording for legal purposes, ignoring the critical needs of patients and caregivers. Introduces innovative software design and architecture techniques that recognize the complex interaction between patients and caregivers, provide immediately available detailed information for both, and thus invigorate clinical workplaces. Covers techniques for engineering medical applications as sociotechnical systems that promote the safety, effectiveness, and efficiency of core clinical operations.
INFO 7500. Cryptocurrency and Smart Contract Engineering. 4 Hours.
Seeks to provide a detailed understanding of the function and deployment of smart contracts using the Solidity language. Digs deep into the technical design and operation of blockchain platforms and specifically the implementation of smart contracts for operationalizing business processes. Offers students an opportunity to practice the development of decentralized autonomous organization applications using blockchain scripting languages.
INFO 7510. Smart Contract Application Engineering and Development. 4 Hours.
Emphasizes the essential coding skills for implementing self-enforcing, multiparty, mutually beneficial, contractual rights and obligations on top of blockchain technologies. Offers students an opportunity to learn how to leverage the principles and mechanisms of “decentralized autonomous organization” to programmatically coordinate the interaction between participating parties at a global scale without the need for trusting a third party and how to build blockchain-type applications that automate the interaction of a network of participating entities such as buyers, sellers, suppliers, insurance, and finance.
INFO 7520. Engineering of Advanced Cryptocurrency Systems. 4 Hours.
Addresses programming and information systems aspects of bitcoin and other cryptocurrencies. Topics covered include fundamentals of bitcoin mining, the theory of distributed consensus, principles of strong anonymity and untraceability, smart contract security, and peer-to-peer networking. Offers students an opportunity to learn about current developments in, and challenges facing, the use of cryptocurrencies in terms of the computing platform and systems integration. Students also have an opportunity to gain practical experience through challenging programming projects.
INFO 7525. Regulatory Aspects of Smart Contract Automation. 2 Hours.
Addresses the legal implication of using the blockchain to transfer and exchange money, perform trade transactions, maintain ownership of property, and enforce contractual obligations in secure and cost-effective ways. These applications present significant legal challenges in finance, property rights, and general commercial contracts in all industries. Offers students an opportunity to acquire the tools to engineer systems that adhere to existing and evolving regulatory frameworks. Highlights challenges around the issues of taxation, financial crimes, and money laundering, since blockchain technologies were designed to facilitate cross-border transactions.
INFO 7530. Engineering Multiparty Autonomous Agent Systems. 2 Hours.
Examines how to extend multiagent distributed systems methods and tools to solve complex problems meant to run on the blockchain using smart-contract programming languages such as Solidity and others. Blockchain technology and multiagent distributed systems theory share common ground. Both are characterized by autonomy, localized knowledge, and independence. Offers students an opportunity to deepen their studies of how to build systems that deliver system-level results through the interaction of simple agents or participants. Each party independently determines its response to the state of its local environment and the interactions with other parties on the blockchain.
INFO 7535. Digital Smart Contracts Product Innovations. 2 Hours.
Addresses the issue of how blockchain technology creates new ways of doing business. Blockchain technology uses bitcoin cryptocurrency to create value in a virtual setting. By linking the blockchain with real currency and the financial system, data, as well as business processes, a new breed of products and services can be realized. Explores innovative and disruptive applications of the blockchain.
INFO 7610. Special Topics in Natural Language Engineering Methods and Tools. 4 Hours.
Covers the latest techniques in natural language processing with applications to unstructured data.
INFO 7962. Elective. 1-4 Hours.
Offers elective credit for courses taken at other academic institutions. May be repeated without limit.
INFO 7978. Independent Study. 1-4 Hours.
Offers work performed under individual faculty supervision. May be repeated without limit.
INFO 7996. Thesis Continuation. 0 Hours.
Continues theoretical and experimental work conducted under departmental faculty supervision.