CSE3308 Software engineering: analysis and design - Semester 1 , 2007 unit guide

Semester 1, 2007

Chief Examiner

David Squire

Lecturers

Clayton : David Squire

Outline

This subject covers the analysis, design and specification of large software systems through to system implementation.

Objectives

On successful completion of this unit, the student should have:

  • Knowledge of the difficulties of specifying and producing large software products, leading to
  • an appreciation of the need for software engineering methodologies
  • understanding of the distinction between software engineering and programming, and thus the distinction between a software configuration and a program
  • An understanding of, and ability to apply, the methods of analysis and design, including:
    • structured analysis and design using Yourdon notation
    • Context Diagram, Event Lists, Data-Flow Diagrams, Entity-Relationship Diagram, State Transition Diagrams, Process Specifications, Data Dictionary, Structure Chart
  • object-oriented analysis and design using UML
    • Use Cases, Class Diagrams, Interaction Diagrams, State Diagrams, Package Diagrams, Activity Diagrams
  • Knowledge of the problems of managing large software development projects, and the techniques used to address them, including:
  • Configuration management
  • Software metrics
  • Validation and verification techniques
  • Quality management
  • Knowledge of, and the ability to apply, principles of user interface design such as affordances, awareness of mental models, visibility, mapping and feedback.

Prerequisites

Before attempting this unit you must have satisfactorily completed CSE2305 or CSC2050, or equivalent.

Unit relationships

CSE3308 is a core unit in the Bachelor of Software Engineering and the Bachelor of Computer Science.

Before attempting this unit you must have satisfactorily completed CSE2305 or CSC2050, or equivalent.

You may not study this unit and CFR3112, CSC3080, GCO2817, GCO3811 in your degree.

Texts and software

Required text(s)

There is no prescribed text for this unit

Textbook availability

N/A

Software requirements

There is no software requirement.

Although no software packages are required for this unit, the use of Rational Rose or the open-source model drawing package Dia is likely to be of assistance in completing the analysis and design assignment. The use of other UML packages or drawing tools is also permitted. You should check the Resources page at the unit web site for links to suggested tools.

Hardware requirements

Students 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 up to 8 hours per week for use of a computer, including time for newsgroups/discussion groups.

Recommended reading

No one book covers all the material required for unit. The following books cover the core material. Copies have been placed on reserve in the library.

One or both of:

  • Yourdon, E., Modern Structured Analysis, 1989
    Hargrave-Andrew 004.21 Y81M, Caulfield 004.21 YOU
  • Page-Jones, Meilir, The Practical Guide to Structured Systems Design, 1988
    Hargrave-Andrew 004.21 P133P2, Caulfield 004.21 PAG 1:2

One or both of:

  • Booch; Rumbaugh; Jacobson, The Unified Modeling Language User Guide, 1998
    Hargrave-Andrew 005.12 B724U, Caulfield 005.12 BOO
  • Page-Jones, Meilir, Fundamentals of Object-Oriented Design in UML, 2000
    Hargrave-Andrew 005.117 P133F

Pressman, Roger, Software Engineering: A Practitioner's Approach, 2000
(4th or 5th edition); Hargrave-Andrew 005.1 P935S, Caulfield 005.1 P935S

Norman, Donald, The Design of Everyday Things, 1998; Hargrave-Andrew 620.82 N842D, Caulfield 620.82 NOR

Gamma et al., Design Patterns, 1995; Hargrave-Andrew 005.12 G193D, Caulfield 005.12 DES

The following books cover many of the important issues in the unit. The perusal of at least some of these books could be helpful in achieving a good mark:

Fowler, Martin: UML Distilled 1997 or 2000; Hargrave-Andrew 005.12 F787U, Caulfield 005.12 F787U

Fowler, Martin: Analysis Patterns: reusable object models 1997; Hargrave-Andrew 005.12 F787A, Caulfield 005.12 FOW

Martin, Robert C.: Agile Software Development, Principles, Patterns, and Practices 2002
Caulfield 005.1 M382A

Meyer, Bertrand: Object-Oriented Software Construction (2nd Edition) 1997
Hargrave-Andrew 005.1 M612.O, Caulfield 005.1 MEY 1:2

Sommerville, Ian: Software Engineering (5th Edition) (1996)
Hargrave-Andrew 005.1 S69S5, Caulfield 005.1 SOM 1:5

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 CSE3308 are:

The CSE3308 web site on MUSO, where lecture slides, weekly tutorial requirements, assignment specifications, sample solutions and supplementary material will be posted.

Unit website

http://muso.monash.edu.au/

Structure and organisation

Week Topics Key Dates
1 Introduction to Unit, Software Products and Processes
2 User Interface Design Assignment 1 handed out
3 Project Management, Technical Reviews
4 Structured Analysis Assignment 2 handed out
5 Structured Analysis and Design Assignment 2 Groups decided
6 Object-Oriented Analysis Assignment 1 due
Non teaching week
7 Object-Oriented Design
8 Design and Analysis Patterns Assignment 2 Progress report due
9 Risk
10 Reliability, Metrics
11 Software Quality
12 Industry Guest Lectures Assignment 2 due
13 Exam Revision

Timetable

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

Assessment

Assessment weighting

Both assignments and a closed-book written exam will be used to assess whether you have achieved the objectives for this unit. The assessment will consist of:

  • Assignment 1, worth 15% due in week 6, Individual Assignment on Interface Design
  • Assignment 2, worth 45% due week 12, Group Project on Software Analysis and Design
  • Three hour examination worth 40% of the marks, held during in the examination period at the end of the semester

Assessment Policy

To pass this unit you must:

You need to achieve 50% in both the exam and the assignments to pass this unit and achieve an overall mark of 50%, i.e.

  • You must get at least 20 marks out of 40 for the exam
  • You must get 30 marks out of 60 for the assignments
  • You must get 50 marks out of 100 overall

All lecture materials, worksheets and assignment work are examinable.

Your score for the unit will be calculated by:

0.15 * assignment 1 % + 0.45 * assignment 2 % + 0.4 * exam %

Assessment Requirements

Assessment Due Date Weighting
Individual Assignment on Interface Design week 6 15%
Group Project on Software Analysis and Design week 12 45 %
The exam is 3 hours long and is closed book. Exam period (S1/07) starts on 07/06/07 40 %

Assignment specifications will be made available CSE3308 website on MUSO.

Assignment Submission

Assignments will be submitted by paper submission to the submissions boxes outside the Clayton School of Information Technology office.

Extensions and late submissions

Late submission of assignments

Students are required to submit their assignment by 12 NOON on the due date, in the submission box outside the school office. Shortly thereafter, the submission box will be emptied and sealed. Late assignments must be handed directly to staff in the office, where they will be stamped with the date and time received. Late submissions will be penalised at the following rate:

  • Submission on the due date but after 12 noon: -10%
  • Submission the day after the due date -20%
  • Submission two days after the due date: -40%
  • Submission three or more days after the due date will not be accepted.

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. 

If you believe that your assignment will be delayed because of circumstances beyond your control such as illness you should apply for an extension before the due date. Medical certificates or certification supporting your application may be required.

Group Assignment: extensions

Extensions will not be given for group assignments. Given the size of the groups, the illness of an individual student will not be accepted as a reason for an extension. Part of your project management strategy must be to plan for such contingencies.

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

The primary time for consultation is during the practice classes. The lecturer will also be available for consultation in his Clayton office at times to be announced on the CSE3308 MUSO site. Preference will be given to students who make appointments. In time of high demand, preference will be given to students who did not have an appointment during the previous week.

There will also be a discussion forum hosted on the MUSO site.

Notices

Notices related to the unit during the semester will be placed on the CSE3308 MUSO site. Check this regularly. Failure to read the Notices newsgroup is not regarded as grounds for special consideration.

Consultation Times

Consultation times will be announced on the CSE3308 MUSO site.

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:

Dr David Squire
Fax +61 3 990 55157

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.

Additional information

Group Assignment: differing contributions

All members of the group will rate the contribution of all other members of the group and these ratings will modify the mark that each individual receives, but not by more than 20%.

If a group is having trouble with an individual member and your efforts to resolve the issue have been fruitless, then the group must approach the lecturer to assist in resolving the problem as soon as it arises. A claim that a student did not contribute his or her fair share will not be considered if it is made just prior to the submission of the assignment, or after submission.

Practice Classes

There will be two practice classes each week. Students are not expected to attend more than one practice class per week. During a practice class, students are expected to work on practice problems and/or activities, which will be distributed via the unit web site, or on their assignments.

The lecturer and tutors will be available to comment on, and help with, solutions during the practice class. The practice class provides an ideal opportunity to discuss problems with the lecturer and/or tutors.

Last updated: Feb 19, 2007