130 likes | 152 Views
CS352 Software Engineering Project (Software Engineering in the Small). Michael Oudshoorn and Ray Babcock. Introduction. This course is taught by Michael Oudshoorn and Ray Babcock
E N D
CS352 Software EngineeringProject(Software Engineering in the Small) Michael Oudshoorn and Ray Babcock
Introduction • This course is taught by Michael Oudshoorn and Ray Babcock • Ray’s consulting times will be advertised outside of his door. Please make an appointment with Jeannette if you want to see Michael. • The lecture time for this course is Tuesday and Thursday 5-6pm. • The course will have few, if any, formal lectures and this time will be used for group meetings and class-wide discussions. • It will also be used for any class-wide announcements. CS351 - Software Engineering (AY2004)
Assumptions • We will assume that you have completed CS351 Software Engineering last semester. • CS352 is a project-based course that will give you the opportunity to use all of the skills you learned last semester. • There will be 2 major assignments that must be completed this semester. CS351 - Software Engineering (AY2004)
Objectives • The objectives for CS352 are that you have the opportunity to apply your skills from CS351 in a setting that models the real-world within the confines of the subject plans and objectives, and within the boundaries of a university course. • We aim to develop and fine-tune your individual software engineering skills. [CS460/461 aims to develop your team-work]. • This means you will take sole responsibility for your work, but you will need to cooperate with others. CS351 - Software Engineering (AY2004)
Our hopes • By the time students finish this course they should have real-world experiences that will see them well placed to get employment after taking CS460/461. • Students should be able to talk to employers about the problems and issues involved in building large complex systems. CS351 - Software Engineering (AY2004)
Project 1 • There are two projects for CS352. • Each project has multiple parts and you will need to cooperate with your classmates in order to be successful. • The first project is an Othello program. It will provide an opportunity to practise your skills in: • Software design specifications • Coding • Software management • Testing • Communication CS351 - Software Engineering (AY2004)
Project 2 • You will be given a project description and various interfaces to adhere to. You will need to select a fixed number (say 3) of the modules to build yourself, and you will need to acquire the remainder from your classmates. • You will buy and sell the modules. • You will need to maintain the software you sell. • Each person will start the semester with 100 zorkmids to use for the purchase of software. • You will need to advertise your products (web pages) and give a short presentation. There is an entrepreneurial element through selling and buying your software. • You will learn: • Business skills • Subcontracting issues • Software acquisition and maintenance CS351 - Software Engineering (AY2004)
Individual-based • The projects are individual based. You will not be working a component as part of a group. You will however be cooperating with others in order to succeed. • The aim is to develop appropriate skills for you to develop high quality correct code within a software development environment. • Plagarism will not be tolerated. Even though solutions may be available on the internet (i.e., Othello) you may not utilize them. You must design, build and test your own system. • Penalties for cheating will be a score of 0 for that component and a 10% loss of available points for the project. • Deadlines are firm. 20% of the available points are forfeited for each day (or part thereof) that a component is late. • You can think of these are contractual penalties that apply to the project you are working on. CS351 - Software Engineering (AY2004)
Assessment • There are 2 projects. • Each project is worth 50% of the grade. • A serious attempt must be made in both projects. • There is no mid-term or final exam. • There are no quizzes. • Expectation: • High standards in the project work, i.e., high levels of professionalism. • Treat this as though you are employed and an aiming to make an impression. CS351 - Software Engineering (AY2004)
Resources available • Web pages found at www.cs.montana.edu/courses/current/352. • These include the CS351 lecture materials. • The projects will use the lecture time to allow for the cooperation to take place. • Ray and/or Michael will be available to provide help and assistance at these times. CS351 - Software Engineering (AY2004)
Consulting help • There is no TA to assist you in this course! • Like the real-world, you need to demonstrate a degree of self sufficiency and initiative. • We expect you to solve most of your own problems! • Read the textbook • Use the library • Use the internet • Talk to your peers • A consultant will be available in a consulting room to offer limited assistance with coding problems. CS351 - Software Engineering (AY2004)
Textbooks • There are no fixed textbooks for this course. Like real-life, you need to decide if you need one, and if so, which book best suits you. CS351 - Software Engineering (AY2004)
Hint • “Design for change” should be your mantra. • Expect it, plan for it, design for it. • Quality is an important part of any software system. To achieve that you have to know what you are doing well and what you are not doing well. • Keep a journal and observe what you do. • Record how long it takes to repair errors. • Observe where you introduced the error into the system. • Think about how you could improve to be: • More productive • More accurate. • More efficient. CS351 - Software Engineering (AY2004)