se.rit.edu
Naveen Sharma, Chair
(585) 475-5461, [email protected]
Program overview
As software becomes ever more common in everything from airplanes to appliances, there is an increasing demand for engineering professionals who can develop high-quality, cost-effective software systems. The BS in software engineering is based on a foundation of engineering principles for software design, disciplined software development processes, effective teamwork, and communication skills.
Students learn principles, methods, and techniques for the construc-tion of complex and evolving software systems. The major encompasses technical issues affecting software architecture, design, and implementa-tion as well as process issues that address project management, planning, quality assurance, and product maintenance. Upon graduation, students are prepared for immediate employment and long-term professional growth in software development organizations.
Accreditation
The BS degree in software engineering is accredited by the Engineering Accreditation Commission of ABET, http://www.abet.org.
Plan of study
An important component of the curriculum is complementary course work in related disciplines. As with other engineering fields, mathemat-ics and the natural sciences are fundamental. In addition, students must complete courses in related fields of computing science and computer engineering. A three-course sequence in an application domain enables students to connect software engineering principles to application areas.
Students also complete general education courses in the liberal arts and a required ethics course helps students develop a sense of profession-alism and social responsibility in the technical world.
B. Thomas Golisano College of Computing and Information Sciences
Electives
Engineering electives
Students may choose engineering electives from software engineering, computer science, or programs in the Kate Gleason College of Engi-neering. Additional rules and restrictions are listed on the department website.
Application domain courses
An application domain is a set of three courses that expose a student to a domain area in which software engineering is often applied. There are standard predefined application domains and a student is free to suggest a student-defined domain. Example application domain areas include:
• Artificial Intelligence
• Bioinformatics
• Business Applications
• Computational Mathematics
• Computer Engineering
• Computer Security
• Economics
• Entrepreneurship
• Industrial and Systems Engineering
• Interactive Entertainment
• Public Policy
• Scientific and Engineering Computing
• Statistics
• Usability Senior projects
A two-course senior design sequence helps students synthesize and apply the knowledge and experience they have gained in classes and on co-op assignments to a sponsored project for an industrial or non-profit organization. Many of these issues find their solutions via the work of the senior project teams.
In the first course students organize themselves into teams, based on the number and complexity of the projects available. The bulk of the semester is devoted to requirements elicitation and architectural design, but also may include detailed design, prototyping, and even production, depending on the nature of the project. In addition, teams are respon-sible for assigning specific roles to team members and developing a project plan that includes scheduled, concrete milestones. In the second course, students work on the tactical issues of development and deploy-ment. Teams complete the construction and integration of their project, conduct testing, and demonstrate the final outcome to faculty and the sponsoring organization.
Organizations that have sponsored senior projects include Wegmans, Paychex, Northrup Grumman Security Systems, Oracle, RIT Informa-tion and Technology Services, Harris CorporaInforma-tion (RF CommunicaInforma-tions Division), the Air Force Research Laboratory, Excellus Blue Cross Blue Shield, Telecom Consulting Group NE Corp. (TCN), JP Morgan, MITRE Corporation, Wegmans Food Markets, U.S. Department of Veterans Affairs, and Amazon Web Services.
Cooperative education
Students are required to complete two semesters and one summer of cooperative education prior to graduation. Students begin co-op after completing the required second year prerequisite course work. Students alternate semesters of study on campus with co-op blocks. To ensure that co-op is integrated with the curriculum, students must complete their final co-op block prior to taking Software Engineering Project I (SWEN-561).
Curriculum
Software engineering, BS degree, typical course sequence
COURSE SEMESTER CREDIT HOURS
First Year
CSCI-141, 142 Computer Science I, II 8
MATH-181, 182 LAS Perspective 7A, 7B: Project-based Calculus I, II 8
First Year LAS Elective 3
LAS Perspective 1 3
SWEN-101 Freshman Seminar 1
MATH-190 Discrete Mathematics for Computing 3
SWEN-250 Personal SW Engineering 3
First Year Writing 3
Year One: College Experience 0
Wellness Education* 0
Second Year
PHYS-211, 212 LAS Perspective 5, 6: University Physics I, II 8
CSCI-262 Introduction to Computer Science Theory 3
COMM-251 Professional Communication for Software Engineers 3
SWEN-261 Introduction to Software Engineering 3
LAS Perspective 2, 3 6
STAT-205 Applied Statistics 3
SWEN-220 Math Models of Software Engineering 3
SWEN-262 Engineering of Software Subsystems 3
Third Year
SWEN-256 Software Process and Project Management 3
SWEN-331 Secure Software System Development 3
SWEN Design Elective 3
CMPE-340 Engineering Fundamentals of Computer Systems 4
LAS Perspective 4 3
Cooperative Education co-op
Fourth Year
SWEN-440 SW Sys. Reqts. & Arch. (WI) 3
SWEN-444 H.C. Reqts & Design 3
Process Elective 3
Math/science Elective 3
Application Domain Elective 3
LAS Immersion 1 3
Cooperative Education co-op
Fifth Year
SWEN-561, 562 Software Engineering Project I, II 6
Engineering Electives 6
Application Domain Electives 6
LAS Immersion 2, 3 6
Free Electives 6
Total Semester Credit Hours 128
Please see New General Education Curriculum–Liberal Arts and Sciences (LAS) for more information.
(WI) Refers to a writing intensive course within the major.
* Please see Wellness Education Requirement for more information. Students completing bachelor's degrees are required to complete two Wellness courses.
Accelerated dual degree option
An accelerated dual degree option is available for outstanding under-graduate students who wish to earn both a bachelor's and a master's degree in software engineering in approximately six years.
Software engineering, BS/MS degree, typical course sequence
COURSE SEMESTER CREDIT HOURS
First Year
CSCI-141 Introduction to Computational Problem Solving 4
CSCI-142 Computational Problem Solving with Structures 4
MATH-181, 182 LAS Perspective 7A, 7B: Project-based Calculus I, II 8
First Year LAS Elective 3
LAS Perspective 1 3
SWEN-101 Software Engineering Seminar 1
MATH-190 Discrete Mathematics 3
SWEN-250 Personal Software Engineering 3
First Year Writing 3
Year One: College Experience 0
Wellness Education* 0
Second Year
PHYS-211, 212 LAS Perspective 5, 6: University Physics I, II 8
CSCI-262 Introduction to Computer Science Theory 3
COMM-251 Professional Communication for Software Engineers 3
SWEN-261 Introduction to Software Engineering 3
LAS Perspective 2, 3 6
COURSE SEMESTER CREDIT HOURS
STAT-205 Applied Statistics 3
SWEN-220 Math Models of Software Engineering 3
SWEN-262 Engineering of Software Subsystems 3
Third Year
SWEN-256 Software Process and Project Management 3
SWEN-331 Secure Software System Development 3
SWEN Design Elective 3
CMPE-340 Engineering Fundamentals of Computer Systems 4
LAS Perspective 4 3
Cooperative Education co-op
Fourth Year
SWEN-440 SW Sys. Reqts. & Arch. (WI) 3
SWEN-444 H.C. Reqts & Design 3
SWEN-722 Process Engineering 3
Math/Science Elective 3
Application Domain Elective 3
LAS Immersion 1 3
Cooperative Education co-op
Fifth Year
SWEN-561, 562 Software Engineering Project I, II 6
SWEN-745 Software Modeling 3
Engineering Electives 6
Application Domain Elective 3
LAS Immersion 2, 3 6
Free Electives 6
Graduate Elective 3
Sixth Year
SWEN-790 Thesis 6
SWEN-772 Software Quality Engineering 3
SWEN-755 Software Architectures and Product Lines 3
SWEN-749 Software Evolution and Re-engineering 3
Graduate Elective 3
Total Semester Credit Hours 158
Please see New General Education Curriculum–Liberal Arts and Sciences (LAS) for more information.
(WI) Refers to a writing intensive course within the major.
* Please see Wellness Education Requirement for more information. Students completing bachelor's degrees are required to complete two Wellness courses.
Software engineering design electives
SWEN-342 Engineering of Concurrent and Distributed Software Systems SWEN-343 Engineering of Enterprise Software Systems
SWEN-344 Engineering of Web-based Software Systems SWEN-563 Real Time and Embedded Systems SWEN-564 Modeling of Real Time Systems
SWEN-565 Performance Engineering of Real Time and Embedded Systems SWEN-567 Hardware Software Co-design for Cryptographic Applications SWEN-549 Software Engineering Design Seminar
Software engineering process electives
SWEN-350 Software Process and Product Quality
SWEN-352 Software Testing
SWEN-356 Trends in Software Development Processes SWEN-559 Software Engineering Process Seminar
Additional information
Laboratories
Equipped with the latest technology, the software engineering de-partment’s facilities include three student instructional studio labs, a specialized embedded systems lab, and a collaboration lab. In addition, students are encouraged to take advantage of the department’s mentor-ing lab. Staffed by advanced software engineermentor-ing students, this lab offers students an environment where they can learn from those who have successfully fulfilled most of the major's academic requirements.
Students enrolled in software engineering courses also can use any of the department’s eleven team rooms. Equipped with a computer and projector, network connections, a meeting table, seating for six, and generous whiteboard space, these rooms support the department’s commitment to teamwork, both inside and outside the classroom.
B. Thomas Golisano College of Computing and Information Sciences
Anne R. Haake, BA, Colgate University; MS, Rochester Institute of Technology; MS, Ph.D., University of South Carolina—
Interim Dean; Professor Michael A. Yacci, BS, Ithaca College; MS, Rochester Institute of Technology; Ph.D., Syracuse University—Senior Associate Dean for Academic Affairs; Professor
Computer Science
Mohan Kumar, BE, Bangalore University (India); MTech, Ph.D., Indian Insitute of Science (India)—
Department Chair; Professor Reynold Bailey, BS, Midwestern State University; MS, Ph.D., Washington University—Assistant Professor
Ivona Bezakova, BS, Comenius University (Slovakia); MS, Ph.D., University of Chicago—Associate Professor
Hans-Peter Bischof, BS, MS, University of Ulm (Germany);
Ph.D., University of Osnabrück (Germany)—Graduate Program Director; Professor
T.J. Borrelli, BS, St. John Fisher College; MS, Rochester Institute of Technology—Lecturer
Zack Butler, BS, Alfred University;
Ph.D., Carnegie Mellon University—
Associate Professor Roxanne Canosa, BS, State University College at Brockport;
MS, Ph.D., Rochester Institute of Technology—Associate Professor Warren Carithers, BS, MS, University of Kansas—Associate Professor
Henry Etlinger, BS, University of Rochester; MS, Syracuse University—Undergraduate Program Coordinator; Associate Professor
Matthew Fluet, BS, Harvey Mudd College; Ph.D., Cornell University—
Assistant Professor
Roger S. Gaborski, BS, MS, State University of New York at Buffalo;
Ph.D., University of Maryland—
Professor Emeritus
Joe Geigel, BS, Manhattan College;
MS, Stevens Institute of Technology;
Ph.D., George Washington University—Associate Professor James Heliotis, BS, Cornell University; Ph.D., University of Rochester—Professor
Edith Hemaspaandra, BS, MS, Ph.D., University of Amsterdam (Netherlands)—Professor Christopher Homan, AB, Cornell University; MS, Ph.D., University of Rochester—Associate Professor Trudy Howles, BS, MS, Rochester Institute of Technology; Ph.D., Nova Southwestern University—Professor Emeritus
Alan Kaminsky, BS, Lehigh University; MS, University of Michigan—Professor
Fereydoun Kazemian, BS, Queen Mary College (United Kingdom);
MS, Pittsburgh State University;
Ph.D., Kansas State University—
Associate Professor
Minseok Kwon, BS, MS, Seoul National University (South Korea);
Ph.D., Purdue University—Associate Professor
Xumin Liu, BE, Dalian University of Technology (China); ME, Jinan University (China); Ph.D., Virginia Polytechnic Institute—Assistant Professor
Wiley R. McKinzie, BA, University of Wichita; MS, State University of New York at Buffalo—Professor Stanislaw Radziszowski, MS, Ph.D., University of Warsaw (Poland)—Professor Rajendra K. Raj, BS, Indian University of Technology;
MS, University of Tennessee;
Ph.D., University of Washington—Professor Leonid Reznik, Degree of Electronics, Leningrad Institute of Aeronautical Construction (Russia); MS, St. Petersburg Aircraft Academy (Russia); Ph.D., St.
Petersburg Polytechnic Institute (Russia)—Professor
Paul T. Tymann, BS, MS, Syracuse University—Professor
Richard Zanibbi, BA, MS, Ph.D., Queens University (Canada)—
Associate Professor
Computing Security
Bo Yuan, BS, MS, Shanghai Normal University (China); Ph.D., State University of New York at Binghamton—Department Chair;
Associate Professor
Jayalaxmi Chakravarthy, BS, State University College at Brockport;
MS, University of Albany; MS, Nova Southeastern University—Visiting Lecturer
Daryl Johnson, BS, St. John Fisher College; MS, Rochester Institute of Technology—Associate Professor Sumita Mishra, BS, Patna University (India); BS, Ph.D., State University of New York at Buffalo—
Associate Professor
Richard Mislan, BS, Rochester Institute of Technology; MS, Ferris State University; Ph.D., Nova Southeastern University—Visiting Assistant Professor
Yin Pan, BS, MS, Shanghai Normal University (China); MS, Ph.D., State University of New York at Binghamton—Associate Professor Chaim Sanders, BS, MS, Rochester Institute of Technology—Lecturer William Stackpole, BS, Roberts Wesleyan College; MS, Rochester Institute of Technology—Associate Professor
Jonathan Weissman, BS, College of Staten Island; MA, Brooklyn College—Lecturer
Kaiqi Xiong, MS, Ph.D., Claremont Graduate University; MS, Ph.D., North Carolina State University—
Assistant Professor
Information Sciences and Technologies
Stephen J. Zilora, BS, University of Rochester; MS, New Jersey Institute of Technology—Department Chair;
Associate Professor
Catherine I. Beaton, BA, BEd,