SOFTWARE 2730 3 credits Introduction to Software Engineering
An introduction to software engineering principles, including discussions of development methodologies, requirements analysis, project planning, software design, software construction, software management, software quality, and CASE tools. Students gain experience, via a team project, in the life-cycle development of software systems. (Fall, Spring)
Components: Lecture
Prereqs/Coreqs: C: COMPUTER 2430
SOFTWARE 3330 3 credits Intermediate Software Engineering
A more detailed discussion of several software engineering topics included in previous courses including requirements engineering, software modeling, user-interface design, development processes and process improvement. Moderate size GUI-based group project. (Spring)
Components: Lecture
Prereqs/Coreqs: P: COMPUTER 2630 and SOFTWARE 2730
SOFTWARE 3430 3 credits Object Oriented Analysis and Design
Requirements engineering, analysis, and specification using the object-oriented paradigm. Object-oriented architectural and detailed design. Use of an OOA&D modeling language such as UML. Investigation of 00A&D patterns. Moderate size, group project. (Fall)
Components: Lecture
Prereqs/Coreqs: P: COMPUTER 2430 AND SOFTWARE 2730
SOFTWARE 3730 3 credits Software Quality
Study of the topics related to producing quality software, including software quality assurance, quality metrics, configuration management, verification & validation, reviews, inspections, audits, and software process improvement models. Individual and team projects. (Fall)
Components: Laboratory, Lecture
Prereqs/Coreqs: P: COMPUTER 2630 and SOFTWARE 2730
SOFTWARE 3860 3 credits Software Maintenance and Reengineering
Study of the topics related to maintaining large-scale software systems. Study of software engineering topics such as estimation, software quality assurance, metrics, configuration management, verification & validation, inspections, and personal and team software process as they relate to software maintenance projects. Coverage of traditional analysis and design methods such as structured analysis and design. Two, semester-long, team-based projects: reengineering a small system to be object-oriented and making changes to a moderate-sized existing software project. (Spring)
Components: Lecture
Prereqs/Coreqs: P: COMPUTER 2630 and SOFTWARE 3430
SOFTWARE 3950 4 credits Software Engineering Cooperative Education
Work experience in industry under the direction of the College of Engineering, Mathematics and Science Cooperative Education and Internship Program. During co-op the student is expected to be away from his/her studies at UW-Platteville and work for an industry for a semester and summer. Credits do not fulfill graduation requirements. Minimum cumulative GPA of 2.50 is recommended for participation. (Fall, Spring)
Components: Field Studies
Prereqs/Coreqs: P: junior standing
SOFTWARE 3970 1 credit Software Engineering Internship
Work experience in industry under the direction of the College of Engineering, Mathematics and Science Cooperative Education and Internship Program. NOTE: This program is separate and distinct from the cooperative education program and is principally designed to cover the summer work experience. Internship is designed to provide experiential learning experience to the student during the summer period. Credits do not fulfill graduation requirements. (Summer)
Components: Field Studies
Prereqs/Coreqs: junior standing
SOFTWARE 4110 1 credit Software Engineering Seminar
The course consists of lectures/discussions presented by both software engineering faculty and students enrolled in the class. (Fall, Spring)
Components: Seminar
Prereqs/Coreqs: P: Software Engineering major and junior/senior standing
SOFTWARE 4130 3 credits Real-Time Embedded Systems Programming
An exploration of programming techniques and constructs used to develop reliable software systems capable of responding in real time to environmental changes. An overview of the platforms, tools, and processes used in developing software for embedded systems. Hands-on lab projects experimenting with real-time embedded systems programming details. (Spring)
Components: Discussion, Laboratory, Lecture
Prereqs/Coreqs: P: COMPUTER 2630 and SOFTWARE 3430 and (ELECTENG 3780 or COMPUTER 3230)
SOFTWARE 4330 3 credits Software Engineering Project I
Emphasis in applying software engineering knowledge learned in this course and previous courses to a large, team-based, capstone project that spans two semesters. In-depth study of several software engineering topics introduced in earlier courses, such as requirements engineering; analysis and design methods; planning and estimation; project management; and metrics. An introduction to formal methods for specification and design. (Fall)
Components: Discussion, Laboratory, Lecture
Prereqs/Coreqs: P: SOFTWARE 3330
SOFTWARE 4730 3 credits Software Engineering Project II
The project started in SOFTWARE 4330 is continued and carried to completion. In-depth study of several software engineering topics introduced in earlier courses, such as software construction tools and issues; unit development, review, testing, and maintenance; software reuse; and metrics. An introduction to current research issues in software engineering. (Spring)
Components: Discussion, Laboratory, Lecture
Prereqs/Coreqs: P: SOFTWARE 3730 and SOFTWARE 4330
SOFTWARE 4980 1 - 4 credits Current Topics in Software Engineering
In-depth study of a current topic of interest to the software engineering profession. The topic to be covered will be identified in the course title.
Components: Lecture
SOFTWARE 4990 1 - 3 credits Independent Study
Advanced study in area of specialization selected by student and approved by faculty member. (Fall, Spring)
Components: Independent Study