Online Master's in Software Engineering
Drexel Online.  A Better U.

Online Master of Science in Software Engineering - Information Science and Technology Track

DEADLINE ALERT!
Applications for the next term must be submitted by:

March 06, 2009
Sidebar Divider
TUITION REDUCTION
Does your organization provide tuition benefits through Drexel University Online?

Sidebar Divider


Print | Email To A Friend

Curriculum

The Information Science and Technology track supports students interested in applying software engineering to information systems problems in commercial organizations and other settings. The track's principle focus is the process by which user and system requirements are converted into cost-effective, maintainable software systems. This focus is complemented by a concern for defining, creating, understanding, and evaluating the full range of software life cycle products. The track places particular emphasis on systems values, such as the human-computer interface, front-end user requirements analysis, modeling and validation, and the use of off-the-shelf tools and components to assist in software processes.

Students in the IST track are required to take the required six core courses (core courses cover topics that are essential for the practicing software engineer) and nine courses from the IST Track Course offerings.

Core Courses - 18 credits

CS 575

Software Design

3 credits

CS 576

Dependable Software Systems

3 credits

ECE 500

Fundamentals of Computer Hardware

3 credits

ECE 600

Fundamentals of Computer Networks

3 credits

INFO 627

Requirements Engineering & Management

3 credits

INFO 638

Software Project Management

3 credits

Sample Information Science and Technology Track Courses

INFO 503

Introduction to Information Systems Analysis

3 credits

INFO 605

Database Management I

3 credits

INFO 606

Database Management II

3 credits

INFO 608

Human-Computer Interaction*

3 credits

INFO 620

Information Systems Analysis and Design

3 credits

INFO 630

Evaluation of Information Systems*

3 credits

INFO 636

Software Engineering Process I*

3 credits

INFO 637

Software Engineering Process II*

3 credits

*Required Courses

Core Course Descriptions

CS 575 - Software Design
(Prerequisite: CS 580 or an undergraduate course in software engineering or systems analysis and design. Intended for CS and MSSE students; others must obtain departmental permission to enroll. Minimum Grade: C) 

Introduces techniques and notations with formal (mathematical) underpinnings for specifying the structural and behavioral properties of software systems. Covers these systems at various levels of abstraction, from architecture to subsystem decompositions to module/class dependencies and interfaces. Students analyze, synthesize, and express software designs using a variety of special-purpose design notations, and obtain practical experience with a team project. Topics include software architecture, architectural styles, module interconnection languages, modularity and information hiding principles, object-oriented design patterns (structural and behavioral), Petri nets, state charts, state transition diagrams, and Z notation.

Back to course list 

CS 576 - Dependable Software Systems
(Prerequisite: CS 580 or an undergraduate course in software engineering or systems analysis and design. Intended for CS and MSSE students; others must obtain departmental permission to enroll. Minimum Grade: ) 

Offers an in-depth treatment of software testing and software reliability, two components of developing dependable software systems. Testing topics include path testing, data-flow testing, mutation testing, program slicing, fault interjection and program perturbation, paths and path products, syntax testing, logic-based testing, testing within the software development process, test execution automation and test design automation tools. Reliability topics include reliability metrics, fault avoidance, cleanroom software development, fault tolerance, exception handling, N-version programming, recovery blocks, formal methods, functional specifications, and Z notation.

Back to course list 

ECE 500 - Foundations of Computer Hardware 

Covers computer organization and architecture; elements of computer hardware, processors, control units, and memories; hardware for basic mathematical operations; tradeoffs between speed and complexity; examples of embedded systems; microcontrollers; systems modeling.

Back to course list 

ECE 600 - Fundamentals of Computer Networks 

Fundamentals design principles of ATM, Internet and local area networks; protocol layers and the Internet Architecture; medium access protocols; application protocols and TCP/IP utilities; basic principles and virtual circuit switching; naming and addressing; flow and congestion control protocols; routing algorithms; Quality-of-Service in computer networks; security issues in networks.

Back to course list 

INFO 627 - Requirements Engineering & Management
(Pre-Requisites: INFO 620 Minimum Grade: C) 

Provides students with an opportunity to explore and experience methodologies, tools, and techniques for eliciting, analyzing, specifying, and managing requirements in modern software development organizations. Focuses on the intersection of requirements engineering, strategic IS and business planning, and business process reengineering. Students will also learn about change management in requirements engineering context in response to a fast- paced, changing world. Upon completion of the course, each student should have new skills and insights that are immediately applicable to the performance of the requirements engineering project function.

Back to course list 

INFO 638 - Software Project Management
(Pre-Requisites: INFO 620 Minimum Grade: C) 

Focuses on first-line management of software system development. Covers major themes including estimation (software cost factors, estimation models, and risk management), planning (work breakdown, scheduling, staffing, resource allocation, and creation of a project plan), and execution (team building, leadership, motivation, process tracking, control recovery, and communication within and outside the project).

Back to course list 

Sample Information Science and Technology Track Courses

INFO 503 - Introduction to Information Systems Analysis 

Presents information systems development as a life-cycle process, incorporating problem definition, modeling and analysis, system design, implementation, evaluation, support, and maintenance. Provides an introduction to those modeling and analysis tools and techniques necessary for leveraging information and information technologies to achieve business objectives. Gives students practice in modeling information systems with respect to functions (functional decomposition), processes (dynamic modeling), and data (data-flow diagramming).

Back to course list 

INFO 605 - Database Management I 

(Pre-Requisites: INFO 503 Minimum Grade: C) 

A first course in database management systems. Covers database design, data manipulation, and data-base integrity. Emphasizes concepts and techniques related to the entity-relationship model and relational database systems. Discusses normalization up to third normal form and commercial query languages.

Back to course list 

INFO 606 - Database Management II
(Pre-Requisites: INFO 601 Minimum Grade: C and INFO 605 Minimum Grade: C) 

Back to course list 

INFO 608 - Human-Computer Interaction*
(Pre-Requisites: INFO 503 Minimum Grade: C) 

This course focuses on the design and evaluation of human-computer interfaces covering such topics as task analysis techniques for gathering design information, iterative design through prototyping, and formative and summative usability testing; theoretical foundations of HCI and cognitive modeling of user interactions; the integration of HCI techniques into the software development life cycle and the use of user constraints to generate new interaction designs.

Back to course list 

INFO 620 - Information Systems Analysis and Design
(Pre-Requisites: INFO 605 Minimum Grade: C and INFO 608 Minimum Grade: C) 

Offers an advanced treatment of systems analysis and design with special emphasis on object-oriented analysis and design techniques based on the Unified Modeling Language (UML). Discusses major modeling techniques of UML including use-case modeling, class modeling, object-interaction modeling, dynamic modeling and state diagrams and activity diagrams, subsystems developments, logical design, and physical design.

Back to course list 

INFO 630 - Evaluation of Information Systems*
(Pre-Requisites: INFO 620 Minimum Grade: C) 

Focuses on the evaluation of software and software system development. Covers a variety of methodologies, techniques, and tools for measuring both software and software development attributes in modern software development organizations. Includes both graphical approaches for representing these attributes and statistical approaches for modeling various software relationships.

Back to course list 

INFO 636 - Software Engineering Process I*
(Pre-Requisites: INFO 601 Minimum Grade: C and INFO 630 Minimum Grade: C and INFO 638 Minimum Grade: C) 

Focuses on behaviors and activities of individuals developing software with a disciplined software engineering approach. Provides hands-on experience in which students complete programming exercises using a defined software engineering process. Requires students to plan, estimate, measure, and analyze their work, and to define, analyze, and improve development processes and create process documentation.

Back to course list 

INFO 637 - Software Engineering Process II*
(Pre-Requisites: INFO 636 Minimum Grade: C) 

Focuses on behaviors and activities of teams developing software with a disciplined software engineering approach. Provides hands-on experience in which students complete team activities using a defined software engineering process. Covers topics including planning and estimating for team projects, reviews and inspections, standards, software reuse, and configuration management.

Back to course list