CSE2201 Software engineering practice - Semester 2 , 2006 unit guide

Semester 2, 2006

Chief Examiner

Jan Miller

Lecturers

Caulfield : Jan Miller

Outline

Application of tools and techniques used by software engineers in the development of software systems. Topics include software process assessment; quality management and verification and validation, technical reviews, standards and quality; software metrics; software estimation and project management; software reuse; configuration management and version control tools; performance measurement; software testing techniques; software debugging; development tools such as CASE tools, characteristics of software maintenance and reverse engineering. Case study work involves the development and maintenance of a software system using the above techniques and object-oriented methods.

Objectives

At the completion of this unit students should have further developed their skills as software engineers and have a deeper appreciation of software engineering principles in the development and maintenance of computer systems; have further developed their skills in problem-solving and software measurement; recognise the role of, and be able to use, specific software engineering tools and techniques such as quality plans, project plans, test plans, software metrics models, configuration management tools and development environments in the software engineering process; be able to measure their own improvement using the personal software process; have acquired an appreciation of the application of software engineering principles including software process, quality management, software metrics, configuration management, performance, testing and debugging, technical reviews, reusability and change management.

Prerequisites

Before attempting this unit you must have satisfactorily completed:

CSE1203 or (CSE1401 and CSE1303) or BUS2011

, or equivalent. You should have knowledge of basic object-oriented programming and design.

Unit relationships

CSE2201 is a core unit in the Bachelor of Computing (2330) and the Bachelor of Software Engineering (2770). It is a prerequisite for CSE2203 in the Bachelor of Computing. Before attempting this unit you must have satisfactorily completed:

CSE1203 or (CSE1401 and CSE1303) or BUS2011

or equivalent. You should have a basic understanding of object-oriented programming and design. You may not study this unit and CFR2128, CFR3042, CSE2401, GCO3811, RDT2231, SFT2201 in your degree.

Texts and software

Required text(s)

Pressman, R. S., Software Engineering: A Practitioner's Approach, 6th Edition, McGraw-Hill, 2004

Textbook availability

Textbook available in the bookshop.

Other texts available in the library.

Software requirements

Personal Eiffel for Windows, Version 5.1 (EiffelStudio)

Software may be:

  • downloaded from studentweb.monash.edu.au/cse2201

Hardware requirements

Students studying off-campus are required to have the minimum system configuration specified by the faculty as a condition of accepting admission, and regular Internet access. On-campus students, and those studying at supported study locations may use the facilities available in the computing labs. Information about computer use for students is available from the ITS Student Resource Guide in the Monash University Handbook. You will need to allocate time for use of a computer, including time for newsgroups/discussion groups.

Recommended reading

  • Meyer,B., Object-Oriented Software Construction, 2nd Edition, Prentice-Hall, 1997.
  • Pfleeger, S. L., Software Engineering Theory and Practice, 2nd Edition, Prentice Hall, 2001.
  • Sommerville, I., Software Engineering 7th edition, Addison-Wesley, 2004.
  • Humphrey, W.S., Introduction to the Personal Software Process, Addison Wesley 1997.
  • Humphrey, W.S., A Discipline for Software Engineering, Addison Wesley 1995.
  • Humphrey, W.S., Managing the Software Process, Addison Wesley 1990.
  • Humphrey, W.S., Lovelace, M., Hoppes, R., Introduction to the Team Software Process, Addison Wesley, 1998.
  • Peters, J. S., Pedrycz, W., Software Engineering, An Engineering Approach, J Wiley, 2000.
  • Wiener R.S., Introduction to Computer Science with Eiffel, Prentice Hall 1996.
  • Further Reading:

  • Bennett S, Skelton and Lunn, Schaum's Outlines UML, McGraw-Hill, 2001.
  • Larman C, Applying UML and patterns, Prentice-Hall, 1999.
  • Jacobson I, Booch G and Rumbaug J, The Unified Software Development Process , Addison-Wesley.
  • Covey, S.R., The 7 Habits of Highly Effective People, Pocket Books, 1999.
  • Brooks, F., The Mythical Man Month, Addison-Wesley, 1995.
  •  

    Library access

    You may need to access the Monash library either personally to be able to satisfactorily complete the subject.  Be sure to obtain a copy of the Library Guide, and if necessary, the instructions for remote access from the library website.

    Study resources

    Study resources for CSE2201 are:

    This unit information outlining the administrative information for the unit.

    Printed Notes for Sale in the bookshop for both the Lectures and Tutorials.

    Printed Assignment and Tutorial Exercises.

    The CSE2201 web site, where lecture slides, weekly tutorials, assignment specifications, sample solutions and supplementary material will be posted.

    Other useful web sites are:

    Interactive Software Engineering (ISE) Eiffel Site: http://www.eiffel.com

    Eiffel newsgroup: comp.lang.eiffel

    On-line book on Eiffel programming called Eiffel Object-oriented Programming (pdf version):

    http://www.doc.mmu.ac.uk/library/notes/ajt/

    R. S. Pressman and Associates, Inc.: http://www.rspa.com/spi/

    The Software Engineering Body of Knowledge (SWEBOK) described at the Carnegie-Mellon Software Engineering Institute (SEI): http://www.sei.cmu.edu/publications/documents/99.reports/99tr004/99tr004chap03.html

     

     

    Structure and organisation

    Week Topics References/Readings Key Dates
    1 Introduction to Eiffel Pressman Ch 8.4; Meyer; Weiner; Walden; Jezequel
    2 SE & Quality; Eiffel Pressman Ch 1, 26, 32; Meyer, Weiner, Walden, Jezequel Exercise 1 due
    3 SE Process, PSP; Eiffel Pressman Ch 2, 3, 4, 13.7; Somerville Ch 4, 13.7, 28; Humphrey (1990); Humphrey (1995); Humphrey (1996); Humphrey (1998) Exercise 2 due
    4 Specification; Configuration Management Pressman Ch 9, 27; Somerville Ch 29; Meyer; Weiner; Walden; Jezequel Exercise 3 due
    5 Project & Quality Management; Testing; Pressman Ch 13-14, 21-27; Somerville Ch 5, 23, 27; Pfleeger Ch 3, 8, 9; Peters, Ch 4, 12; ISO9000; TickIT Exercise 4 due; Hand out Assignment
    6 UNIT TEST
    7 Software Metrics Pressman Ch 15,22; Somerville pp 208-210, Ch 26; Peters Ch 13, 14; Fenton Stage 1-Planning due
    8 Software Maintenance; Software Design Pressman Ch 31.2; Somerville pp 492-498; Peters Ch 18; Pfleeger Ch 11; Arthur; Meyer Stage 1-Implementation due
    9 SQA & Reviews (PSP2) Pressman Ch 15.1, 26; Somerville Ch 27
    10 Software Reuse Pressman p 32, Ch 9.5, 30.4.3, 30.5.2; Somerville Ch 18 Stage 2-Planning due
    Non teaching week
    11 Software Performance Pressman Ch 13.6.4, 20.9; Pfleeger Ch 9.3
    12 SE Tools Pressman pp 54 & sidebars ( see lecture notes); Maciaszek Ch 3; Parkinson Ch 1-2 Stage 2-Implementation due
    13 Semester Review

    Timetable

    The timetable for on-campus classes for this unit can be viewed in Allocate+

    Assessment

    Assessment weighting

    Assessment for the unit consists of 2 assignments with a weighting of 50% and a test and examination with a weighting of 50%. Read this section VERY carefully.


    Assessment Policy

    To pass this unit you must:

    • Attain 50% overall, AND
    • Attain at least 40% of the available marks in both Component A & Component B. Note that if Component A is < 40%, then Component B will be adjusted to indicate a fail for the unit.
    • and you MUST ATTEND 10 out of the 13 tutorials.

     

    Your score for the unit will be calculated by:

    Component A:

    Final Exam (2 hours) 30%

    Unit Test (1 hour) 20% (including 5% open book exercises)

    50%

    Component B:

    Assignment 50% (Stage 1 - 20% + Stage 2 - 30%)

    TOTAL: Component A + Compoent B 100%

    Assessment Requirements

    Assessment Due Date Weighting
    Exercise 1: Practical exercises Week 2 1%
    Exercise 2: Practical exercises Week 3 1 %
    Exercise 3: Practical exercises Week 4 1 %
    Exercise 4: Practical exercises & PIP Week 5 2 %
    Unit Test (1 hour) (Online) Week 6 15 %
    Assignment Stage 1 - Planning & Design Week 7 10 %
    Assignment Stage 1 - Implementation Week 8 10 %
    Assign. Stage 2 - Planning & Design Week 10 15 %
    Assign. Stage 2 - Implementation & Team Interview Week 12 15 %
    Exam (2 hours) in Formal Exam period Exam period (S2/06) starts on 23/10/06 30 %

    Assignment specifications will be made available On the CSE2201 web site.

    Assignment Submission

    Assignments will be submitted at the beginning of the lecture.

    On-campus students submit the assignment within the first 10 minutes of your lecture, with the appropriate cover sheet correctly filled out and attached. The due date is the date by which the submission must be received.

    Extensions and late submissions

    Late submission of assignments

    Assignments received after the due date will be subject to a penalty of:

    15% for work handed in after 10 minutes into the lecture but within 24 hours;

    Zero (0 ) marks for work handed in more than 24 hours late.

    Work handed in after 24 hours will not normally be accepted, so students will not be assessed on it.

    This policy is strict because comments or guidance will be given on assignments as they are returned, and sample solutions may also be published and distributed, after assignment marking or with the returned assignment. 

    Extensions

    It is your responsibility to structure your study program around assignment deadlines, family, work and other commitments. Factors such as normal work pressures, vacations, etc. are seldom regarded as appropriate reasons for granting extensions. 

    Requests for extensions must be made at least two days before the due date by application to the lecturer. You will be asked to forward original medical certificates in cases of illness, and may be asked to provide other forms of documentation where necessary. A copy of the email or other written communication of an extension must be attached to the assignment submission.

    Extensions for this unit will not be granted unless the appropriate documentation indicates an adequate reason for granting an extension or unless grounds exist for granting special consideration according to Monash University student regulations.

    Grading of assessment

    Assignments, and the unit, will be marked and allocated a grade according to the following scale:

    Grade Percentage/description
    HD High Distinction - very high levels of achievement, demonstrated knowledge and understanding, skills in application and high standards of work encompassing all aspects of the tasks.
    In the 80+% range of marks for the assignment.
    D Distinction - high levels of achievement, but not of the same standards. May have a weakness in one particular aspect, or overall standards may not be quite as high.
    In the 70-79% range.
    C Credit - sound pass displaying good knowledge or application skills, but some weaknesses in the quality, range or demonstration of understanding.
    In the 60-69% range.
    P Pass acceptable standard, showing an adequate basic knowledge, understanding or skills, but with definite limitations on the extent of such understanding or application. Some parts may be incomplete.
    In the 50-59% range.
    N Not satisfactory failure to meet the basic requirements of the assessment.
    Below 50%.

    Assignment return

    We will aim to have assignment results made available to you within two weeks after assignment receipt.

    Feedback

    Feedback to you

    You will receive feedback on your work and progress in this unit. This feedback may be provided through your participation in tutorials and class discussions, as well as through your assignment submissions. It may come in the form of individual advice, marks and comments, or it may be provided as comment or reflection targeted at the group. It may be provided through personal interactions, such as interviews and on-line forums, or through other mechanisms such as on-line self-tests and publication of grade distributions.

    Feedback from you

    You will be asked to provide feedback to the Faculty through a Unit Evaluation survey at the end of the semester. You may also be asked to complete surveys to help teaching staff improve the unit and unit delivery. Your input to such surveys is very important to the faculty and the teaching staff in maintaining relevant and high quality learning experiences for our students.

    And if you are having problems

    It is essential that you take action immediately if you realise that you have a problem with your study. The semester is short, so we can help you best if you let us know as soon as problems arise. Regardless of whether the problem is related directly to your progress in the unit, if it is likely to interfere with your progress you should discuss it with your lecturer or a Community Service counsellor as soon as possible.

    Plagiarism and cheating

    Plagiarism and cheating are regarded as very serious offences. In cases where cheating  has been confirmed, students have been severely penalised, from losing all marks for an assignment, to facing disciplinary action at the Faculty level. While we would wish that all our students adhere to sound ethical conduct and honesty, I will ask you to acquaint yourself with Student Rights and Responsibilities and the Faculty regulations that apply to students detected cheating as these will be applied in all detected cases.

    In this University, cheating means seeking to obtain an unfair advantage in any examination or any other written or practical work to be submitted or completed by a student for assessment. It includes the use, or attempted use, of any means to gain an unfair advantage for any assessable work in the unit, where the means is contrary to the instructions for such work. 

    When you submit an individual assessment item, such as a program, a report, an essay, assignment or other piece of work, under your name you are understood to be stating that this is your own work. If a submission is identical with, or similar to, someone else's work, an assumption of cheating may arise. If you are planning on working with another student, it is acceptable to undertake research together, and discuss problems, but it is not acceptable to jointly develop or share solutions unless this is specified by your lecturer. 

    Intentionally providing students with your solutions to assignments is classified as "assisting to cheat" and students who do this may be subject to disciplinary action. You should take reasonable care that your solution is not accidentally or deliberately obtained by other students. For example, do not leave copies of your work in progress on the hard drives of shared computers, and do not show your work to other students. If you believe this may have happened, please be sure to contact your lecturer as soon as possible.

    Cheating also includes taking into an examination any material contrary to the regulations, including any bilingual dictionary, whether or not with the intention of using it to obtain an advantage.

    Plagiarism involves the false representation of another person's ideas, or findings, as your own by either copying material or paraphrasing without citing sources. It is both professional and ethical to reference clearly the ideas and information that you have used from another writer. If the source is not identified, then you have plagiarised work of the other author. Plagiarism is a form of dishonesty that is insulting to the reader and grossly unfair to your student colleagues.

    Communication

    Communication methods

    Normal communication for the unit will be through discussion with the tutors, with the lecturer after the lecture, or by making an appointment with the lecturer.

    The tutors and lecturer can be contacted by email.

    A discussion group for the unit is available on the Muso web site for this unit.

    Notices

    Notices related to the unit during the semester will be placed on the Notices Section of the Unit Website. Check this regularly. Failure to read the Notices is not regarded as grounds for special consideration.

    Consultation Times

    Tuesday 2-5pm

    After the lecture

    Other times by appointment.

    If direct communication with your unit adviser/lecturer or tutor outside of consultation periods is needed you may contact the lecturer and/or tutors at:

    Ms Jan Miller
    Lecturer
    Phone +61 3 990 32700
    Fax 9903 1077

    Mr Glenn Paul

    All email communication to you from your lecturer will occur through your Monash student email address. Please ensure that you read it regularly, or forward your email to your main address. Also check that your contact information registered with the University is up to date in My.Monash.

    Last updated: Jul 18, 2006