|
|
Harvard University Extension School ALM
theory Comp.Science programming Comp.Science computer network web development management Bentley College BSc computer science information system general business electives |
Theory of Computer Science
Courses: Security, Privacy, and Usability Software Architecture and Engineering Software Design: Principles, Models, and Patterns Algorithm and Data Structures Data Structures Artificial Intelligence Security, Privacy, and Usability CSCIE-170 Fall 2005 This course introduces computer security as it affects desktop computing, networks, and handheld devices. Special attention is paid to the policy implications of security technologies, including privacy policies, surveillance, and digital rights management. Topics include cryptography, forensics, human factors, watermarking, spyware, and privacy-protecting technology. Students are expected to read a substantial number of research papers, participate in classroom and online discussions, and complete a publishable research project. Prerequisites: knowledge of operating systems and basic programming. INSTRUCTIONAL LANGUAGE: none PROJECT 1: FairPlay: Effectiveness and Weaknesses of Apple’s Digital Right Management Technology [pdf] PROJECT 2: Assessing Bluetooth Security Risks in Public Places [pdf] Top of Page Software Architecture and Engineering CSCIE-275 Spring 2005 Software architecture deals with the structure and composition of systems. This course covers the still evolving discipline of software architecture from the points of view of architectural principles, patterns, and styles. This course also examines how software engineering methods approach structuring and managing software projects, from requirements gathering to production release. Formal methods in software engineering have a longer history than those in software architecture, from the older waterfall method to the current extreme programming method. Students collaborate in small teams to implement a system that illustrates the architectural models discussed in class while practicing techniques in software engineering. Programming assignments are done in Java. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Developed a Project Manager application, same concept as MS Project in team environment. Top of Page Software Design: Principles, Models, and Patterns CSCIE-247 Fall 2004 This course approaches object-oriented software design from three perspectives: the software engineering principles that enable development of quality software, modeling of software components using the Unified Modeling Language (UML), and the application of design patterns as a means of reusing design models that are accepted best practices. There is at least one significant modeling exercise and a set of programming assignments that require the application of design principles and good programming technique. Students are expected to write a detailed description of the design for each of their programs, incorporating UML models as appropriate. Students implement their programs in the Java programming language. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Designed and modeled a Project Manager application, same concept as MS Project. Top of Page Algorithm and Data Structures CSCIE-124 Summer 2004 A rigorous course on the design and analysis of efficient algorithms and their associated data structures. Sorting, searching, graph algorithms, and general algorithm design techniques are covered. The recorded lectures are from the Harvard Division of Engineering and Applied Sciences course Computer Science 124. INSTRUCTIONAL LANGUAGE: Top of Page Data Structures CSCIE-119 Fall 2003 A survey of fundamental data structures for information processing, including lists, stacks, queues, trees, and graphs. The course explores the implementation of these data structures (including both array-based and linked representations) and examines classic algorithms that use these structures for tasks such as sorting, searching, and text compression. Techniques for analyzing the efficiency of algorithms are also covered. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Developed OWARI game where user can play against (artificially) intelligent computer opponent. Top of Page Artificial Intelligence CSCIE-220 Fall 2002 Artificial intelligence (AI) concerns the development of computer systems that appear to behave with some degree of human intelligence. This survey course covers the major topics in AI: search techniques, natural language understanding, knowledge representation, theorem proving, and computer vision. Planning, learning, and expert systems are included if time permits. The LISP programming language is introduced and used for the programming assignments. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Developed intelligence application using Markov theory to determine rythm pattern given drum line intruction. Top of Page Computer Science Programming
Courses: Oracle 10g: Programming with PL/SQL XML With J2EE Web Services and Service-Oriented Architecture Java for Distributed Computing Practical Perl Introduction to Computer Science Using Java II Introduction to Computer Science Using Java I Introduction to C, Unix, and CGI Programming Oracle 10g: Programming with PL/SQL CSCIE-254 Fall 2005 Oracle 10g is a sophisticated database and development environment, providing a rich set of tools that enable software developers to build complex financial and media-aware applications. This course explores the power of Oracle 10g using PL/SQL, an advanced programming language that combines easy access to databases using object-oriented facilities and libraries that specialize in such diverse areas as time-series, natural language processing, multimedia, XML, and web publishing. Students learn to combine the power of PL/SQL with the power of XML and Java. Prerequisites: a previous course in database management, plus previous programming experience in a high-level language (Java or C++). INSTRUCTIONAL LANGUAGE: Top of Page XML With J2EE CSCIE-259 Spring 2005 This course introduces XML as a key, enabling technology in Java-based enterprise applications. Students learn the fundamentals of XML and its derivatives, including DTD, SVG, XForms, XInclude, XLink, XPointer, XML Base, XML Encryption, XML Key Management, XML namespaces, XML Schema, XML Signature, XPath, XPointer, XQuery, XSL-FO, and XSLT. Additionally, students gain experience with programmatic interfaces to XML like SAX and DOM as well as with standard APIs like JAXP and TrAX. The course introduces JavaServer Pages and Java Servlet, and explores HTTP, SOAP, web services, UDDI, and WSDL. The course projects focus on the implementation and deployment of these technologies. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Developed a web based application that serves as Boston's subway travel planner and SVG map generator. Top of Page Web Services and Service-Oriented Architecture CSCIE-166 Spring 2005 This course covers the architecture and design of web services, discrete business processes that expose and describe their functionality in WSDL. Web services can be located by other services in UDDI registries and communicate through the standard XML-based protocol, SOAP. Web services are software components that transform the most versatile and disparate applications into cooperative distributed systems. We also discuss the role web services play in service-oriented architecture (SOA). SOA is an architectural style based on loosely coupled software agents utilizing each other's capabilities. Web services are natural construction units for SOA systems. Relevant XML and Java APIs and integration technologies (application servers, database and messaging systems) are introduced. INSTRUCTIONAL LANGUAGE: Top of Page Java for Distributed Computing CSCIE-160 Spring 2004 This course comprises a rigorous study of the core Java programming language followed by an inquiry into its most promising area of application, building distributed systems. The first part covers classes and inheritance, abstract classes, interfaces, exceptions, threads, packages, events, reflection, and Javadoc. The second part explores the use of Java to implement three-tier architectured systems. By providing support for security, networking, and threads as part of the language specification, and by offering complete portability through its virtual machine, Java is the ideal language for building applications whose objects are distributed on a network. Both major distributed object protocols--Common Object Request Broker Architecture (CORBA) and Java's Remote Method Invocation (RMI)--are surveyed. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Developed a simple RMI application. Top of Page Practical Perl CSCIE-13 Fall 2003 Perl is described as the Swiss army knife of programming languages. This course emphasizes practical applications of Perl: data manipulation and analysis, report generation, web programming, and integration of databases for use in these applications. Emphasis is on writing idiomatic, correct, and maintainable Perl in a Unix environment. Other topics may include the Apache web server and its mod_perl extension, XML, HTML::Mason, and performance analysis. INSTRUCTIONAL LANGUAGE: Top of Page Introduction to Computer Science Using Java II CSCIE-50b Spring 2003 A second course in object-oriented programming methods using Java that begins with the implementation of abstract data types using classes, objects, and overloaded methods. Other topics include strings, multidimensional arrays, vectors, and linked lists; streams and file I/O; recursion; exception handling; threads and event-driven programming; and graphical user interface design using the Swing classes. The course also introduces the RISC machine architecture and aspects of compilers and operating systems. Programming exercises are conducted in both Unix and PC-based environments. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Developed a GUI application, OTHELLO game where a human can play against novice computer opponent. Used Java AWT for the GUI programming. Top of Page Introduction to Computer Science Using Java I CSCIE-50a Spring 2003 Intended for students with no previous programming background, this course introduces problem-solving methods and algorithm development using the high-level programming language Java. Students learn how to design, code, debug, and document programs using modern engineering techniques in the UNIX environment. Related topics include programming using iterative constructs, the basic aspects of arrays and recursion, string manipulation, parameter passing, information hiding and encapsulation using classes, and the functional decomposition of methods to enable object-oriented design. Some applications are chosen for their relevance to more advanced coursework in computer science while others involve nonscientific and business-related areas. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Developed a simple application/game. Top of Page Introduction to C, Unix, and CGI Programming CSCIE-113 Fall 2002 Designed for students with some programming experience, this course provides a rigorous introduction to writing and using software tools in the Unix programming environment and on the Web. The curriculum covers the C programming language, Unix shell scripts, HTML, and CGI programming. Topics include text processing, memory management, files and pipes, and processes and protocols. Students write programs to analyze data and generate reports, use shell scripts to combine tools into applications and interactive webpages, and use CGI to provide web access to databases. INSTRUCTIONAL LANGUAGE: Top of Page Computer Network
Implementing Internet Protocol CSCIE-258 Spring 2004 This course examines the network protocols that form the core of the Internet. Students will study internet protocols, build network services, and analyze network traffic using a packet capture facility to observe protocols in action. Students will write a project for implementing a client-server or peer-to-peer application of their design. The protocols covered in lecture and laboratory include DHCP, NFS, HTTP, TCP modifications for high performance, and routing protocols such as RIP, OSPF, IS-IS, and BGP. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Developed client-server multiple users chat service. Top of Page Communication Protocols and Internet Architectures CSCIE-131b Summer 2003 Networks are now too large, complex, and diverse to be built on an ad hoc basis. This course provides a structured approach to the design, analysis, and implementation of networks and protocols. We study various protocols, including TCP/IP; WWW/HTTP; ATM; multimedia protocols for voice, data, and video; and the IEEE 802 LAN protocol suite. In each case, the protocol's functions and the underlying reference model are discussed. LAN architecture and design, internetworking using switches and routers, and the design and analysis of both private networks and the Internet are presented. The course discusses new areas of work, including network quality of service, voice and video on the Internet, policy-based networks and broadband/gigabit networks. Top of Page Web Development
Courses: Web Development Using XML Developing Web-based Database Applications Fundamentals of Website Development Web Development Using XML CSCIE-153 Fall 2003 This course focuses on using XML technologies in website development. The first part of the course covers fundamental XML technologies (XML, XPath, XSL, XSLT, XSLFO, XML Schemas, DTDs, and DOM) and open-source web-based XML publishing frameworks such as Cocoon. The second part of the course covers specific markup languages (applications of XML) relevant to website development (XHTML, SVG, RDF, RSS, DocBook, and WML), with an emphasis on developing dynamic, data-driven sites that deliver content in a variety of media types (HTML, text, PDF, graphics) to a variety of devices (desktop and handheld computers, WAP-enabled cellular phones) and audiences. In addition, XML-based web services are surveyed. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Build xml based website to catalog list of courses. Top of Page Developing Web-based Database Applications CSCIE-253 Spring 2003 Web-based applications offer the advantages of workstation productivity and ease of use together with the power and sophistication of relational database servers. This course provides the concepts and skills necessary to design and develop web-based database applications. Students build a working database application using Oracle and a client application using ColdFusion to serve the information needs of an enterprise. Through hands-on projects, students will build, populate, query, and write transactions for a relational database using SQL and then develop a client application to access their database. As a final project, students will build a prototype client/server application. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Build and developed in store application for retail store that interacts with a database. Top of Page Fundamentals of Website Development CSCIE-12 Fall 2003 This course provides a foundation in several facets of establishing and maintaining a website. The first part of the course is devoted to creating, designing, and publishing content on the Web (XHTML, HTML, CSS, JavaScript, GIF, JPEG, PNG, PDF). The second part of the course covers configuring and maintaining a web server, including HTTP, access control, and security. Dynamically generated websites and database-driven websites are discussed (CGI, PHP, JSP). In addition, tools and techniques for maintaining a website, such as log analysis, version control, document validation, and page and site analysis are covered. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Build a well formed and designed website. Top of Page Management
Information Systems Management ISMT E-100 Fall 2005 This course is designed to provide a broad overview of the issues managers face in the selection, use, and management of information technology (IT). Increasingly, IT is being used as a tool to implement business strategies and gain competitive advantage, not merely to support business operations. Using a case study approach, topics include information technology and strategy, information technology and organization, and information technology assets management. The course takes a management rather than a technical approach to the material presented. As such, it should be of use to students of general management interested in information technology and to students of information technology interested in management. Prerequisite: knowledge of the use of information systems in business settings. Top of Page Operations Research and Risk Management CSS E-153 Spring 2005 This course introduces non-mathematical managers to the major quantitative models designed for sound decision making in today's complex and increasingly uncertain business environment. Topics include decision theory, linear programming, simulation, and inventory control. Emphasis is placed on a general understanding of theory, mechanics, application potential, and available software packages and templates. Prerequisites: a rudimentary knowledge of algebra and familiarity with spreadsheets. Top of Page Computer Science
Courses: Application Programming Object Oriented Programming and Application Object Oriented Technology Operating System Technology Applied Software Project Management Computer Networks Visual Basic Programming Enviroment and Application Development Algorithm and Data Abstractions Computer and Information Structures Application Programming CS 233 - 334 Spring 2001 This course prepares students to develop active web content. Technologies include active server pages, client-side and server-side scripting, web components, cookies and dynamic access of database content. Security issues of site management and user/session validation are addressed. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Developed a web based scheduling service. Top of Page Object Oriented Programming and Application CS 451 - 461 Spring 2001 Introductory course to Java programming. Surveyed Java AWT GUI development (unofficial course description). INSTRUCTIONAL LANGUAGE: Top of Page Operating System Technology CS 221 - 322 Spring 2001 Introductory course to operating system technology. Surveyed Linux/Unix operating system (unofficial course description). INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Developed Perl based application. Top of Page Applied Software Software Management CS 460 Fall 2000 Students learn and experience the process of information systems development through managing team dynamics and performing software engineering project management. Specific topics discussed include the value of different software development life cycles, project management tools and techniques, software process management practices and software quality management practices. This course fuses students' prior IT and business education, preparing them to launch their professional IT careers. Top of Page Computer Network CS 340 Fall 2000 Explores the role of communications as an enabling technology for both information systems and the organizations they support. The course explores issues in the areas of interconnectivity requirements and computer network design in the support of business practices. (Covers communications terminology, principles and standards, and surveys the state of the art in data communications technology and architecture.) Top of Page Visual Basic Programming Enviroment and Application Development CS 231 - 232 Spring 2000 This course introduces programming concepts (variables, control structures, input/output) and application development (problem analysis, program design, testing and debugging). Graphical user interfaces are emphasized in both the programming environment and application design. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Developed an information application integrated with sound/voice. Top of Page Algorithm and Data Abstractions CS 230 Fall 1999 Teaches algorithm development and analysis, and the underlying abstractions upon which software systems are based. Focuses on procedural abstractions for controlling the behavior of computer systems and data abstractions for the representation and manipulation of information. The course uses the Pascal language as a "live pseudo-code" for the description and exploration of software abstractions. Top of Page Computer and Information Structures CS 220 Fall 1999 Surveys computer hardware and software architecture. Focus on terminology, function, and interrelationship of components as building blocks of information systems. This reference knowledge of computer processors, primary and secondary storage, telecommunications fundamentals, file system and operating system services and computer language systems prepares the student to understand the tradeoffs in systems and network design due to the underlying computer platform. Top of Page Information System
Courses: Computer Aided Systems Engineering Data Management with SQL Analysis, Modeling and Design Web-based Graphics Development World Wide Web Business Through Information Technology Information Technology an Individual Perspective Computer Aided Systems Engineering CS 362 Summer 2000 Introductory course to computer aided systems engineering using CAD software such as Visio. (unofficial course description). Top of Page Data Management with SQL CS 361 Summer 2000 Introductory course to database using SQL query language (unofficial course description). INSTRUCTIONAL LANGUAGE: Top of Page Analysis, Modeling and Design CS 360 Spring 2000 This course begins with business functional analysis and ends with information systems design. Students are introduced to tools and techniques enabling effective analysis, design and documentation of an information system. The student learns formal methodologies that form the basis of modern information systems development practices. Models that focus on the articulation of business functions, integrating process, data and behavioral abstractions form the core of formal methods in systems development and computer-assisted systems engineering. Top of Page Web-based Graphics Development CS 313 Fall 1999 Teaches a contemporary IT technology by using a computer-based software package. Students are expected to perform operational exercises to gain experience and facility with the particular technology designated for this course section. Students have a broad choice of technology appropriate for those with some technical experience beyond CS 101. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Build a simple functional and operational website with graphics. Top of Page World Wide Web CS 212 Summer 1999 This course explores the World Wide Web as an educational resource. Emphasis is on the use of HTML and JavaScript as programming tools to develop web pages that include text, graphics, animation, internal and external linkages, frames, forms and, with JavaScript, alert boxes, remote windows, events and cookies. In addition, such concepts as the architecture of the web, the use of browsers, effective search strategies, multimedia and web security are addressed to familiarize the student with the web as a business tool and resource. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Build a simple functional and operational website. Top of Page World Wide Web CS 212 Summer 1999 This course explores the World Wide Web as an educational resource. Emphasis is on the use of HTML and JavaScript as programming tools to develop web pages that include text, graphics, animation, internal and external linkages, frames, forms and, with JavaScript, alert boxes, remote windows, events and cookies. In addition, such concepts as the architecture of the web, the use of browsers, effective search strategies, multimedia and web security are addressed to familiarize the student with the web as a business tool and resource. INSTRUCTIONAL LANGUAGE: FINAL PROJECT: Build a simple functional and operational website. Top of Page Business Through Information Technology CS 210 Summer 1999 This course lays the foundation for the upper-level integrated business core courses by addressing managerial uses of information at the operational, tactical, and strategic levels of decision making. The role of an organizational database in supporting the various business functions (accounting, finance, marketing, operations, etc.) is demonstrated and its importance is discussed. Students will examine the relationships among various types and levels of systems and subsystems. Student teams, with diverse academic and career interests, are able to concentrate on special IT issues within their areas of interest. The course includes discussion of the importance of communications to today's business organization; the role of the non-IT professional in systems development; and the ethical and societal implications of informations support systems in business. Top of Page Information Technology an Individual Perspective CS 101 Summer 1998 A general introductory course to Information Technology (unofficial course description). Top of Page General Business
Courses: Strategic Management Managerial Finance Legal Environment of Business Organizations and Behavior Marketing Introduction to Accounting I and II World of Business Strategic Management MG 370 Spring 2001 Strategic Management focuses on the job of the general manager or top management team in formulating and implementing short- and long-run corporate strategy. In business and other organizations, policy or strategy is formulated in a multi-faceted environment of social, political, economic, and legal entities and forces. Strategic Management is concerned with developing the "general management point of view"; this means seeing the cross-functional impact of any situation, problem, solution, proposal or decision and the key long- and short-term implications for the total enterprise. Top of Page Managerial Finance FI 270 Fall 2000 Provides an understanding of the finance function in domestic and international firms and the responsibilities of the financial manager. Develops concepts and tools for use in effective financial decision-making and problem solving. Covers ratio analysis, funds flows and financial forecasting, current assets management, capital budgeting, short- and intermediate-term credit, sources and forms of long-form financing, cost of capital and the impact of operating and financial leverages. International transfers of funds under flexible exchange rates and their impacts on the cost of capital and the capital budgeting decision are also described. Top of Page Legal Environment of Business LA 200 Fall 2000 Provides an overview of the legal issues that confront business managers and executives in both starting a business and operating an existing company. Provides analytical framework to identify legal and ethical issues. Discusses the relationship between business professionals and legal counsel. Interweaves international and ethical issues into the topics covered. Addresses the management of litigation and the settlement of disputes. Top of Page Organizations and Behavior MG 150 Summer 2000 An introductory course to business management (unofficial course description). Top of Page Marketing MK 160 Spring 2000 An introductory course to world of marketing and business (unofficial course description). Top of Page Introduction to Accounting I and II AC 121 Fall 1999, AC 122 Spring 2000 Introductory courses to accounting principles (unofficial course description). Top of Page World of Business GB 101 Fall 1998 This course is taught by faculty from all the business-related areas of the college. All freshman business majors are required to take this course. Transfer students who have not taken any business courses are advised to take this course, as it is the foundation upon which the business core curriculum is built.The three-credit GB 101 course is clustered with two 1.5 credit courses: GB 102 Managing Teams and GB 103 The Legal Environment of Business. Top of Page Electives
Discrete Probability MA 243 Fall 2001 Relates to problems of a probabilistic nature in business, management science, the social sciences, economics, mathematics and the physical sciences. Includes such topics as permutations, combinations, probability for discrete sample spaces, mutually exclusive and independent events, conditional probability, random drawings, the binomial probability distribution, Bayes' Theorem, random variables and their probability functions, mathematical expectation, Markov chains and decision-making. Simulation is used where appropriate. Top of Page Introduction to Logic PH 111 Spring 2001 Provides a solid foundation in the techniques, skills and principles of rational thought and logic. Beginning with a basic analysis of arguments and proceeding to techniques for argument evaluation, the course familiarizes students with such fundamentals as truth, validity, soundness, inconsistency, formal structures, and deduction and induction. Topics covered may include sentential and predicate logic, induction and the scientific method, and the application of logic to arguments in everyday life. Top of Page Linear Models for Business Decision-Making MA 223 Fall 2000 An introduction to linear models as they apply to management, economic and business administration problems. The potentials and limitations of various models will be discussed. Emphasis will be placed on developing models from written descriptions and interpreting model solutions, typically computer-generated. Specific topics include linear, integer and goal programming. Top of Page Overview
|