Description of Courses
SEN 565 Software Architecture and Component-Based Design (3 credits): High-level architectural designs of software systems and products, strengths and weaknesses of each design style, component-based design, cohesion, interconnection and complexity, middleware, performance analysis and simulation, and COTS components; commonly-used software system structures, techniques for designing and implementing these structures, models and formal notations for characterizing and reasoning about architectures, tools for generating specific instances of an architecture, and case studies of actual system architectures Object-oriented design, design patterns, and UML; application of domain analysis, impact of platform dependence and independence, relation of software architecture to requirements, domain analysis and the architectural design process, and products in a real-world context.
SEN 570 Software Requirements Engineering (3 credits): Role of requirements in system development and maintenance, goals of the requirements phase, essential difficulties of specifying requirements, effective methods, tools and techniques, techniques for formally modeling and specifying software requirements, process of identifying stakeholders, capturing, analyzing, reviewing and verifying their requirements for new or extended software products, optimization of software requirements and business benefits, the role of prototyping in validating requirements; process of requirements management, configuration management, change management, impact estimation due to requirements change.
SEN 646 Software Technology and Innovation Management (3 credits): Current practices of technology and innovation management, concept of continuous and discontinuous innovation management, technology and innovation life cycle management, technology and innovation management issues in software business; successful origination, development, implementation, and diffusion of product and process innovations in industry; effective organization and management of the technological change process (marketing, R&D, engineering, and manufacturing) in new ventures, multidivisional and multinational enterprises; management of innovation and change in clients organization due to adoption of software solutions; generating, screening and developing new ideas for innovating software solutions; management of software products and their positioning in competitive market place.
SEN 649 Business Process Reengineering (BPR) and Software (3 credits): Introduction to process centric understanding of business processes; analysis and modeling techniques of business practices as processes, analysis of processes of different categories of organizations operating both in private and public sectors; e-Governance, e-Commerce, process of generating software solutions for improving performance of business processes, process performance parameter determination and determination of optimum software features for performance improvement; ROI estimation and measurement framework determination for verification; over view of different enterprise resource planning (ERP) applications and their uses in BPR; implementation and organizational change management; process performance parameter collection and validation of ROI estimation.
SEN 651 Embedded and Real-time Software Engineering (3 credits): Basic concepts, terminology, and problems of real-time computing; software solutions to real-time problems; scheduling, specification of system requirements and design, real-time software architectures, languages and operating systems for real-time computing, real-time problems in a distributed processing system, and hardware-software interfaces; testing, verification and validation of real-time software; introduction to machine intelligence, signals, sensors and systems, data acquisition, data interpretation techniques, embedded operating systems, assembly and C programming, development and testing tools for embedded applications.
SEN 653 Software Quality Assurance, Testing and Reliability (3 credits): Software quality assurance (SQA), review of SQA practices, quality management, the role of SQA, the SQA program planning, launching and management, independent verification and validation; software inspections, basic principles, reviews, reporting and tracking, managing inspections and reviews; principles of software testing, testing types, test planning, development, execution and reporting; real-time testing and test organization; basic concepts of reliability, modeling software reliability from test results, techniques for analyzing, predicting, designing, and engineering the required and expected reliability of software systems
SEN 690 Software Engineering Project (6 credits): Graduates of this program will return to industry as software engineering professionals; “hands on” approach of developing software in a process centric environment using state-of-the-art software technologies will be more useful for them than doing typical academic work as thesis. This project work will span the entire MSE program, acting as a laboratory where students will apply knowledge gained from core and elective courses in a mentored environment developing software for real-life applications. Former and/or practicing professionals will mentor these projects along with academic faculty members in guiding students to apply methods, techniques, and technologies learned in the classroom to real-world software development assignments.
SEN 505 User interface design and development (3 credits): Human-computer interaction and the importance of good interface design. Interface quality and methods of evaluation. Prototyping and implementation techniques. Task analysis and iterative design cycle. Dialog techniques, basic computer graphics, use of colour and sound. I/O device. Menus and their use. Command languages. Screen formatting. Natural language facilities. Case studies and project.
SEN 545 Software Engineering (3 credits): Scopes of Software Engineering. Life cycle models for software development process. Exercise in analysis, design, implementation, testing and maintenance of large modular systems. Software process, project and product. Basic project management concepts. Configuration management. Verification and validation: Quality assurance. Software testing techniques and strategies; Object-oriented design, analysis and testing. Web-engineering and client-server architecture. The course focuses on team development any information system software.
SEN 551 Data Mining and Warehousing (3 credits): Basic concept of data mining, issues and techniques. Data warehouse and OLTP technologies for data mining, Classification of data mining techniques and models, data pre-processing, data mining primitives, query languages and system architecture, characterization and comparison. Mining association rules in large database. Cluster analysis, multidimensional analysis and descriptive mining of complex data object. Data mining in distributed heterogeneous database systems. Data mining applications and future research issues. (Prerequisite: CSC 206, CSC401 or equivalent)
SEN 555 Advanced Internet Computing (3 credits): Introduction to Internet Technology, web servers and HTTP, URLs, Forms and CGI, JavaScript, Cookies, Java and Servlets, Databases and ASP, JDBC. Markup languages - SGML, HTML, DHTML, XML, WML, their standards, Publishing information in XML and WML, Extracting product information and application development with XML or WML. Active server pages, IIS and PWS environment, ASP variables and control structures, data storage and access, ASP object models, Advanced data handling techniques. Application development using Java Scripts, Java applets, Java Servlets, Java Database Connectivity (JDBC). Introduction to PHP programming, variables and control structures, Database connectivity and Application development with PHP.
SEN 601 Distributed Database System (3 credits): A detailed study of advanced topics related to relational database theory, query processing and optimisation, recovery techniques, concurrency control. Crash recovery. Distributed database systems: security and integrity. Other database paradigms such as deductive and object oriented issues. Heterogeneous databases. (Prerequisite: CSC 401 or equivalent)
SEN 605 Analysis and organization of Information Systems (3 credits): Organization and representation of information and access to information; categorization, indexing and content analysis; use of codes, formats and standards. Analysis and evaluation of search and navigation techniques; project management and scheduling; analysis of information needs and systems requirements; design of alternatives. Quantitative methods and tools for decision making. Documentation management. Social and behavioural aspects of information production. (Prerequisite: CSC 405 or equivalent)
SEN 620 Image Analysis and Pattern Recognition (3 credits): Digital image fundamentals; advanced image transformations: FFT, DTF, sine/cosine, Walsh, Hadamard, Haar, Slant, Wavelet transforms, Karhünen-Louève transformation; image enhancement: Low pass and high pass filters, homomorphic filters: image restoration: constrained least square restoration; time-varying image analysis: dynamic imagery algorithm, image motion detection, two dimension and three dimension motions; image compression: error-free compression, image compression standard; image segmentation: edge linking and boundary detection, region oriented segmentation: colour based image processing: colour perception, chromacity diagram, filtering colour images, colour tone adjustment, neural networks for colour classification; pattern recognition: pattern classes, decision theoretic models, neural networks, knowledge- based interpretation. (Prerequisite: CSC 420 or CSC520 or equivalent)
SEN 630 Advanced topics in Computer Networking (3 credits): Overview of OSI model, TCP/IP, Circuit switching and Packet switching, multiplexing, routing and congestion control and deadlock prevention. Driving forces for high speed networking, High speed LANs, Fast Ethernet and Gigabit Ethernet, FDDI and DQDB, Frame relay architecture, Standards and protocols, Switched Multi Megabit Data Services, ATM standards protocols, ATM LANs, Optical Communication and SONET/SDH, Broadband access technologies, x-DSL. BISDN protocol and architecture, Broadband service aspects and access architecture, Broadband transmission networks, Broadband intelligent network. Broadband access network technology, Encryption and network security, Advanced topics for network management. (Prerequisite: CSC 430 or equivalent)
SEN 645 Software Project Management (3 credits): Overview of Project Management. Project tracking and scheduling. Risk management and analysis. Cost estimation models. Project metrics. Function Point Estimation. Software quality assurance. Program verification and validation techniques Software testing techniques, black-box and white-box techniques. .Testing of various areas: unit, domain, path, equivalent class based portion, component, aggregation, system testing, requirement based testing, acceptance testing. Software reuse and maintenance; Industrial practices in software engineering. . ISO certification standards for software quality assurance;. Software capability maturity model and its impact. The course focuses on taking a group development project from beginning to end. (Prerequisite: CSC545 or equivalent)
SEN 647 Software Engineering Process (3 credits): Challenge of producing and maintaining complex software-intensive system; predictability and improved cost; team work in software development; quality assurance; process centric software engineering practices; software engineering process framework developed by Software Engineering Institute (SEI); capability of each process area; framework to meet challenges; characteristics of software products and processes, its quantification, analysis, prediction, control, and guidelines to achieve both business and technical goals.
SEN 650 Software Marketing (3 credits) : Introduction to marketing and marketing communication, service marketing, marketing challenges of technology products and services; methodology to identify target buyer’s perceptions and behaviors; marketing software product: market research, product positioning, determining value proposition of the product, pricing, distribution, promotions, intellectual property management, advertising and product management; marketing customized software development services: target market determination, educating clients, response to request for proposal, basics of software effort and cost estimation, client relationship management, business value determination of software solutions, base line data collection, determining return on software investment (ROI), impact assessment due to software use, and organization change management; marketing software engineering services to offshore clients: determining offshore market opportunities, understanding constraints in penetrating those markets, developing strategies, establishing linkages with complementary partners and packaging and promoting software engineering service capability to targeted markets; Software quality assurance:basic of software quality assurance (SQA), business value of SQA, and clients role in SQA. Introduction to ISO and SEI’s capability maturity model for software SQA. Case studies. Contractual and legal issues.
SEN 690 Software Engineering Project (6 credits)