1 / 13

CS352 Software Engineering Project (Software Engineering in the Small)

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

tbaptiste
Download Presentation

CS352 Software Engineering Project (Software Engineering in the Small)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS352 Software EngineeringProject(Software Engineering in the Small) Michael Oudshoorn and Ray Babcock

  2. 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)

  3. 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)

  4. 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)

  5. 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)

  6. 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)

  7. 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)

  8. 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)

  9. 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)

  10. 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)

  11. 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)

  12. 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)

  13. 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)

More Related