SE-505 Principles of Software EngineeringCredits: 1.5
Term Offered: All Terms
Course Type(s): None
Basic introduction to software engineering. Justification that software engineering is an engineering discipline. The two main components of the software engineering discipline- the software product and software process-will be discussed in detail. For design and verification, there will be a focus on traditional Structured-Analysis method. Limited to Software Engineering students only.
SE-511 Object-Oriented AnalysisCredits: 1.5
Prerequisite(s): SE-505 passed with a grade of B- or higher
Term Offered: All Terms
Course Type(s): CISEL
Introduces the development of the requirements and analysis model for a software application. Uses object-oriented methodologies. This is not a programming course. Limited to Software Engineering students only.
SE-512 Object-Oriented DesignCredits: 1.5
Prerequisite(s): SE-511 passed with a grade of B- or higher
Term Offered: All Terms
Course Type(s): CISEL
Introduces the design of a software application. Uses object-oriented methodologies. This is not a programming course. Limited to Software Engineering majors only.
SE-517 Engineering Web-Based SystemsCredits: 3
Prerequisite(s): CS-501A
Term Offered: All Terms
Course Type(s): None
A practical introduction to the principles, methods and tools required to create high-quality software applications for the distributed, client-server context of the Web. The course emphasizes on architectural designs, and language and data access methods that are common in web-based systems.
SE-565 Software System RequirementsCredits: 3
Prerequisite(s): CS-501A, SE-505, and SE-511
Term Offered: All Terms
Course Type(s): CISEL
Students will learn advanced methods in software system requirements. Ideally, these methods should be applied at the system, enterprise or global levels of software development. Methods in requirements elicitation, modeling of enterprises, prioritization and negotiation of requirements will be emphasized. Methods for including Commercial Off-the Shelf (COTS) system applications and product families will be introduced. By the end of the course, students will master the standard documentation of system requirements. Many opportunities for hands-on experience with requirements tools will be provided throughout the course.
SE-571 Software Design and Systems ArchitectureCredits: 1.5
Prerequisite(s): SE-565
Term Offered: Spring Term
Course Type(s): CISEL
Introduces software application design and system architecture in terms of the design process, design principles, design notations, design tools, design heuristics, and design patterns. Covers application and system design in detail concentrating on developing designs that are complete, correct, robust, implementable, and deployable. Limited to Software Engineering students only.
SE-572 Enterprise and Global ArchitectureCredits: 1.5
Prerequisite(s): SE-571
Term Offered: All Terms
Course Type(s): CISEL
Introduces architectural design at the Enterprise and Global Architectural levels. Provides students with an understanding of how new systems are brought into an organization to interoperate with an existing system, how systems are maintained throughout their lifecycle, and how systems are retired at the end of their lifecycle. Also provides students with an understanding of how the computing capabilities of a company fits into the larger scope of the Internet. Limited to Software Engineering students only.
SE-575 Software Verification, Validation and MaintenanceCredits: 3
Prerequisite(s): CS-501A and SE-505
Term Offered: All Terms
Course Type(s): None
Covers software verification, validation and maintenance. The first half of the course includes inspections of requirements, design and code as well as testing. The second half addresses the handling of change requests, software evolution, code comprehension, and change management. It will include hands-on experience with a change management system and an automated testing tool.
SE-580 The Process of Engineering SoftwareCredits: 3
Prerequisite(s): CS-503 and SE-505
Term Offered: Spring Term
Course Type(s): None
Students will learn how to define, apply and improve a software process. The basic components of a software process will be introduced, as well as the most influential process models. Students will experiment with both plan-based and agile methods of software development. The need for continuous process quality assessment and improvement will be described. Models such as CMM, ISO9001 will be introduced as reference models for organizations process models.
SE-588 Software Practice and ExperienceCredits: 1
Prerequisite(s): 18 credits from Computer Science or Software Engineering
Term Offered: All Terms
Course Type(s): None
Provides opportunity for Software Engineering graduate students to obtain related experience in employment at a local company or institution, with Monmouth University sponsorship. Available to Software Engineering graduate students who have completed at least eighteen credit hours of graduate courses (500-level), with a minimum G.P.A. of 3.00. Does not satisfy elective requirements. Students may take this course a maximum of two times. This is a pass/fail course.
SE-599 Independent Study in Software EngineeringCredits: 1-3
Prerequisite(s): Completion of at least 12 credits in Software Engineering
Term Offered: All Terms
Course Type(s): None
The development and execution of a significant research project designed by the student in consultation with a software engineering professor. This is an experience meant to focus learning on an area of special interest to the student. Prior permission of the directing professor and department chair is required to take this course.
SE-601 Outsourcing: Specifications and StrategiesCredits: 3
Prerequisite(s): SE-565
Term Offered: Spring Term
Course Type(s): CISEL
Covers issues associated with outsourcing software development in a fashion that assures delivery of acceptable products. The emphasis is on basic factors that determine the effectiveness of outsourcing, strategies for minimizing risk, project tracking, contract-specified breakpoints, and requirements.
SE-602 Technology AssessmentCredits: 3
Prerequisite(s): SE-565
Term Offered: Spring Term
Course Type(s): CISEL
Covers the practicalities of assessing a technology for use in delivery of products. It examines how new tools, processes, and training fit into an overall technology-adoption decision.
SE-603 MOST ImplementationCredits: 3
Prerequisite(s): SE-565
Term Offered: Spring Term
Course Type(s): CISEL
A practical application of MOST concepts by following the process of adopting a new technology and putting the appropriate elements into an organization. Focuses on technology assessment, cost, scheduling, training, and project management.
SE-610 Software Systems SecurityCredits: 3
Prerequisite(s): SE-505
Term Offered: All Terms
Course Type(s): None
Threats, vulnerabilities, and attacks to network- based systems, Heuristic procedures for breaking systems. UNIX and Internet case studies. Security modeling techniques including Bell-Lapadula, Biba, and Clark-Wilson. Composition of non-deducibility and noninterference security. Safeguard techniques including cryptographic protocols, online auditing and intrusion detection, access control, Internet firewalls, authentication, security kernel design, and trusted software development. Case studies in database security and secure network design.
SE-611 Secure Web Services DesignCredits: 3
Prerequisite(s): SE-565
Term Offered: Spring Term
Course Type(s): None
Web applications present a complex set of security issues for architects, designers, and developers. The most secure and hack-resilient Web applications are those that have been built from the ground up with security in mind. This course focuses on principles of secure Web applications design. Topics include threats and counter measures, security in Web service frameworks, session control, access control, and data protection. Also listed as CS-611.
SE-615 Usability Engineering/Human-Computer InteractionCredits: 3
Prerequisite(s): SE-565
Term Offered: Spring Term
Course Type(s): None
Explores the requirements analysis, design and evaluation of the Computer User Interface in the context of Software Engineering Processes. Specific methods and design problems will be illustrated with real-world examples in information technology, the Internet, communications, mobility, multimedia, and speech technologies. Prepares students to perform usability tasks directly or to successfully manage and collaborate with usability experts.
SE-616 Extensible Markup Language (XML)Credits: 3
Prerequisite(s): CS-501B
Course Type(s): None
Presents XML fundamental concepts, XML as a document format, XML as a data format, and special topics in using XML.
SE-620 Networked Software Systems ICredits: 3
Prerequisite(s): SE-565
Course Type(s): CISEL
Network Computing Models, Concepts and Requirement specification; Techniques for Interprocess Communication; Message Passing; Remote Procedures Calls; Directory Service; Synchronization; Task Partition and Allocation; Threads; Security and Authentication; Time Management. Prerequisites: SE-565
SE-621 Networked Software Systems IICredits: 3
Prerequisite(s): SE-620
Term Offered: Spring Term
Course Type(s): None
Distributed File Systems, Replication, Shared Data, Transactions, Distributed Operating Systems, Micro Kernels, Network Operating Systems, Computing Environments and Toolkits: ONC, DCE, ISIS, Languages.
SE-623 Management Information SystemsCredits: 3
Term Offered: Fall Term
Course Type(s): None
A survey of the concepts of management information systems and the information needs of management. A user-oriented introduction of the fundamentals of information systems and their integration into business organizations. Also listed as MIS-623. Not open to students who have successfully completed BM-520.
SE-625 Information Systems ArchitectureCredits: 3
Prerequisite(s): SE-565 or MIS-565
Term Offered: All Terms
Course Type(s): None
Theoretical and practical issues related to the modeling and design of information systems to support medium to large organizations. The Target Architecture and its roles in building enterprise-wide information systems. Operational, warehouse, departmental, and individual-level data. Data modeling levels and associated constructs: Entity-Relationship Diagrams, Data Item Sets, Physical Data Models. Process modeling levels and associated constructs: Functional decomposition, Context diagrams, Data Flow Diagrams, State transition Diagrams, HIPO charts, Pseudo-code and programming specs. Relationship with Object-based modeling. Also listed as MIS-525.
SE-626 Information Systems EngineeringCredits: 3
Prerequisite(s): SE-625
Term Offered: Spring Term
Course Type(s): None
Theoretical and practical issues related to the implementation of information systems to support medium to large organizations. Databases within the Target Architecture and their role in building enterprise-wide information systems. Logical vs. Physical database design. Transaction Processing (TPS) and Decision Support Systems (DSS): similarities and differences. Knowledge-based systems. Implementation issues; reliability, integrity, security, performance, scalability and maintainability. Review of existing commercial tools and environments for building, using and maintaining Information Systems for the enterprise.
SE-640 Real-time SystemsCredits: 3
Prerequisite(s): CS-501B and SE-505
Term Offered: Fall Term
Course Type(s): CISEL
Theoretical foundations and practical algorithms in the specification and validation of real-time systems and applications. Important topics include real-time system specification, scheduling, resource access control, real-time task assignment, and high-level system modeling and analysis.
SE-641 Real-time Robot ControlCredits: 3
Prerequisite(s): SE-640
Term Offered: Spring Term
Course Type(s): CISEL
Fundamentals of real-time and embedded software technology. Inter-process communication and synchronization. Robot operating system. Modern robot programming toolkits. Robot movement control. Robot speech and vision recognition.
SE-650 Software Project ManagementCredits: 3
Prerequisite(s): SE-505
Term Offered: Fall Term
Course Type(s): None
Project management techniques and their application to the management of software projects. How to develop a software development plan and its associated tasks, milestones and deliverables. Software project scheduling and the establishment of relationships among the different tasks. Tasks, dependencies and conflict resolution. Resource management and allocation. Software project cost estimation. Algorithmic models for estimating costs: the COCOMO model and its derivatives. Risk assessment and its impact in the planning and scheduling of software projects. Software project measurement and tracking. Comparative review of software tools for software project management. Software configuration management and its importance in the management of large software projects. Also listed as MIS-550. For Software Engineering students only.
SE-651 Software Organization ManagementCredits: 3
Prerequisite(s): SE-505
Term Offered: Spring Term
Course Type(s): None
Management issues regarding the software process. Authority and delegation. Leadership and leadership paradigms. Software Team management: organization, staffing and valuation, organizational alternatives. Centralized vs. Decentralized organizations. Managing design, development and testing teams. Managing software support organizations. Strategies for staffing: minimal vs. redundant staffing. Combining generalists and specialists to achieve an optimal staff configuration. Staff development and growth. Fostering professional growth within the organization. Evaluation strategies and techniques. Compensation and reward issues. Also listed as MIS-551.
SE-655 Cloud Computing - Concepts, Technology and ArchitectureCredits: 3
Prerequisite(s): CS-503
Term Offered: Summer Term
Course Type(s): CISEL
This course will introduce students to proven and mature cloud computing technologies and practices into a series of well-defined concepts, models, and technology mechanisms and architectures. Case studies will be presented to applying the concepts to practical applications. Also listed as CS-655.
SE-691 Software Engineering Thesis ResearchCredits: 3
Prerequisite(s): SE-565 and SE-580.
Term Offered: All Terms
Course Type(s): None
Independent research in software engineering, spanning a period of two consecutive semesters in an area not substantially covered in a regular course offering, under the supervision of a software engineering faculty member. A formal thesis is required. An oral defense of the thesis before a committee of two faculty members, plus the advising professor is required. Depending on the topic, a reviewer from outside the software engineering department may be asked to serve as a committee member. Limited to Software Engineering majors.
SE-692 Software Engineering Thesis ResearchCredits: 3
Prerequisite(s): SE-691 and prior permission of the advising professor
Term Offered: All Terms
Course Type(s): None
Independent research in software engineering, spanning a period of two consecutive semesters in an area not substantially covered in a regular course offering, under the supervision of a software engineering faculty member. A formal thesis is required. An oral defense of the thesis before a committee of two faculty members, plus the advising professor is required. Depending on the topic, a reviewer from outside the software engineering department may be asked to serve as a committee member. Limited to Software Engineering majors.
SE-695A Software Engineering PracticumCredits: 3
Prerequisite(s): SE-565 and SE-580
Term Offered: All Terms
Course Type(s): None
A two-semester course sequence with major emphasis on hands-on, team-oriented large software development projects. Students will be asked to form groups of three to five persons, who will work as a software team whose purpose will be to develop a software product. The particular product will be chosen through negotiation with the instructor. Teams will operate in accordance with a well-defined set of policies and procedures (documented in an SE Handbook) that governs the entire development process. This document process addresses work products, roles, activities, entry and exit criteria, reviews and audits, documented procedures, and training. The practicum will also include the use of a set of approved tools. Additional software project management topics such as planning, estimation, and tracking will be covered. Project management techniques and their application to the management of software projects. How to define a software development plan, its associated tasks, milestones, and deliverables. Software project scheduling and the establishment of relationships among the different tasks. Task dependencies and conflict resolution. Resource management and allocation. Software project cost estimation. Algorithmic models for estimating costs: the COCOMO model and its derivatives. Risk assessment and its impact in the planning and scheduling of software projects. Software project measurement and tracking. Comparative review of software tools for software project management. Software configuration management and its importance in the management of large software projects. The students will be asked to serve in team roles, hold oral reviews, and prepare documentation appropriate to their project. Students in the class will participate in the reviews of other teams in the class. At the end of the second semester, each team will give a formal presentation on the project. Limited to Software Engineering majors.
SE-695B Software Engineering PracticumCredits: 3
Prerequisite(s): SE-695A
Term Offered: All Terms
Course Type(s): None
A two-semester course sequence with major emphasis on hands-on, team-oriented large software development projects. Students will be asked to form groups of three to five persons, who will work as a software team whose purpose will be to develop a software product. The particular product will be chosen through negotiation with the instructor. Teams will operate in accordance with a well-defined set of policies and procedures (documented in an SE handbook) that governs the entire development process. This documented process addresses work products, roles, activities, entry and exit criteria, reviews and audits, documented procedures, and training. The practicum will also include the use of a set of approved tools. Additional software project management topics such as planning, estimation, and tracking will be covered. Project management techniques and their application to the management of software projects. How to define a software development plan, its associated tasks, milestones, and deliverables. Software project scheduling and the establishment of relationships among the different tasks. Task dependencies and conflict resolution. Resource management and allocation. Software project cost estimation. Algorithmic models for estimating costs: the COCOMO model and its derivatives. Risk assessment and its impact in the planning and scheduling of software projects. Software project measurement and tracking. Comparative review of software tools for software project management. Software configuration management and its importance in the management of a large software project. Students will be asked to serve in team roles, hold oral reviews, and prepare documentation appropriate to their project. Students will participate in the reviews of other teams in the class. At the end of the second semester, each team will give a formal presentation on the project. Limited to Software Engineering majors.
SE-698 Special Topics in Software EngineeringCredits: 3
Term Offered: All Terms
Course Type(s): None
The subject matter varies with the interest of the students and of the professor teaching the course. The exact nature of the topic covered in any given semester is indicated in the student's transcript. Approval of the department is required to take this course. If a prerequisite is required it will be announced in the course schedule.
SE-699 Individual Research Project in Software EngineeringCredits: 3
Term Offered: All Terms
Course Type(s): None
The development and execution of a significant research project designed by the student in consultation with a software engineering professor. An experience meant to focus learning on an area of special interest to the student. Prior permission of the directing professor and department chair is required to take this course.
Print this page.
The PDF will include all information unique to this page.
Download the Complete 2024-2025 Undergraduate PDF Catalogs.
Download the Complete 2024-2025 Graduate PDF Catalogs.