Upcoming Events

CODERS Meeting
Thursdays | 4-5 pm | Wing 231CODERS is a group of students and faculty interested in outreach, diversity, engagement and retention.

Cookies w/CODERS
Mondays | 4-5 pm |Wing 16A weekly study time to meet other CS students, ask questions, work on projects, and of course...eat cookies! Put on by CODERS.

Meet & Pizza w/Fastenal
Wednesday, March 22, 5pm, 1142 Centennial Come have pizza and hear about recruiting info from Fastenal.

CS Distinguished Lecturer
Shafi Goldwasser
Mon April 3, Lectures 11 & 5pm2017 Distinguished Lecturer in Computer Science

MICS Conference
Fri-Sat April 7-8UWL CS Dept is hosting the Midwest Instruction and Computing Symposium.

Final Exams
May 8-12Make sure you know when your finals are for each class.



Computer Science Dept
221 Wing Technology Ctr.
1725 State St.
La Crosse, WI 54601
Voice: (608) 785-6805
Email: This email address is being protected from spambots. You need JavaScript enabled to view it.

Google Maps

CS 546 Object-Oriented Software Development [Credits-3]
Introduction to the concepts and principles of object-orientation(OO). Topics include detailed discussion on analysis and design of OO software systems, notations for OO analysis and design, and comparison of OO programming languages. Advanced topics on object-orientation such as OO testing and software reuse will be briefly discussed. Prerequisites: CS 340
Usually Offered: Spring Semester
CS 741 Software Engineering Principles [Credits-3]
This course provides a broader outlook of software development activities, introduces software qualities, introduces various life cycle models and software development processes, introduce principles of testing and maintenance activities, and guides the selection of an appropriate life cycle model and software development processes for a given application.
Usually Offered: Fall Semester
CS 742 Formal Methods in Software Development [Credits-3]
This course introduces the need for formal methods in software development, introduces various formal notations that are used in software development, introduces the mathematical preliminaries that are required to understand and to use the formal notations, and provides hands-on experience with one or two formal notations along with some case studies.
Usually Offered: Spring Semester
CS 743 Software Verification and Validation [Credits-3]
This course emphasizes the need for verification and validation processes in software developments, discuses the methods (informal, formal and semi-formal) and techniques (prototyping and theoretical proof techniques) that implement verification and validation, and provides hands-on experience to apply these methods and techniques to some simple case studies. Automation of verification and validation methods will be briefly discussed. Topics on validation will mainly focus on testing. Prerequisite: CS 741
Usually Offered: Fall Semester
CS 744 Managerial Issues in Software Development [Credits-3]
This course addresses management issues that are involved in software development projects; these issues include group working, allocation of teams and division of labor, feasibility analysis, marketing strategies and project deadlines. Other topics include in-house software development versus outsourcing, customer interaction, standards and organizational impacts on software development.
Usually Offered: Spring Semester
CS 798 Software Development Project [Credits-12]

This is a 12-credit course involving a major software development project and requires the development of software for a particular application. Upon registering for this course, a student should choose a problem, analyze its feasibility in terms of time limits and resources, develop the requirements document and design (architectural and detailed) document, implement the design and demonstrate the product with appropriate test cases. A project proposal must be submitted to the Project Evaluation Committee (PEC) in the Computer Science department for approval before starting the project. This proposal should include the goals, project plan, time schedule, resource requirements and other details pertinent to the project. A student can register for the project course at any time by submitting the project proposal, and continue to work on the project thereafter. Depending on the work done in each term, the student will be given appropriate number of credits per term (a maximum of 12) as outlined in the project proposal. PEC is responsible for checking the work proposed / done in each term and giving the appropriate number of credits.

At the completion of the project, the student should submit a written project report that satisfies the requirements stated in A guide for writing a software development project report (will be available from the Computer Science department). This report will be evaluated by PEC. After PEC has read the report (normally within a month after submission), an oral examination will be conducted. Members of PEC and the project supervisors/advisors will serve as the examiners for this oral examination. The student will be given a Pass / Fail grade for the course at the end of the oral examination.

The project will address a real-world problem and hence will be selected from a source outside the Computer Science department. The purpose of this project work is to apply the knowledge gained in the course work to a real-world problem. The sources for selecting the problem include other departments (academic and administrative) in the university and industries. A faculty member in the Computer Science department and a supervisor in the unit from where the problem is chosen (another department or industry) will jointly supervise / guide the student. In the event of not being able to find a suitable project outside the Computer Science department, the student may seek a project given by one of the faculty members in the Computer Science department and the same faculty member will supervise / guide the student. The latter option provides an opportunity for students to conduct research in Software Engineering.