8
15 July 2013 Deakin University Faculty of Science, Engineering and Built Environment Unit Guide SIT323 Practical Software Development 2013 Trimester 2 This unit guide is applicable for the year and teaching period specified above only TABLE OF CONTENTS INTRODUCTION .............................................................................................................................................. 2 UNIT CHAIR WELCOME ................................................................................................................................. 2 Achieving goals ......................................................................................................................................... 2 How to begin ............................................................................................................................................. 3 INFORMATION ABOUT THE UNIT ............................................................................................................... 3 Unit chair .................................................................................................................................................. 3 Prerequisite .............................................................................................................................................. 3 Contact hours ........................................................................................................................................... 3 UNIT CHAIR CONTACT DETAILS ................................................................................................................. 3 UNIT DETAILS ................................................................................................................................................. 4 Content ..................................................................................................................................................... 4 About this unit .......................................................................................................................................... 4 Previously learned knowledge and skills .................................................................................................. 5 Aims .......................................................................................................................................................... 5 Unit Learning outcomes ........................................................................................................................... 5 Deakin graduate learning outcomes ......................................................................................................... 5 Teaching methods ..................................................................................................................................... 6 Student evaluation .................................................................................................................................... 7 ASSESSMENT ................................................................................................................................................... 7 Assessment overview ................................................................................................................................ 7 Assessment tasks ...................................................................................................................................... 7 Assignment submission ............................................................................................................................. 8 LEARNING RESOURCES ................................................................................................................................. 8 Unit materials ........................................................................................................................................... 8 Prescribed and/or recommended texts ..................................................................................................... 8 Reference books ....................................................................................................................................... 8

SIT323 Unit Guide

Embed Size (px)

Citation preview

Page 1: SIT323 Unit Guide

15 July 2013

Deakin University

Faculty of Science, Engineering and Built Environment Unit GuideSIT323

Practical Software Development2013 Trimester 2

This unit guide is applicable for the year and teaching period specified above only

TABLE OF CONTENTSINTRODUCTION .............................................................................................................................................. 2

UNIT CHAIR WELCOME ................................................................................................................................. 2Achieving goals ......................................................................................................................................... 2How to begin ............................................................................................................................................. 3

INFORMATION ABOUT THE UNIT ............................................................................................................... 3Unit chair .................................................................................................................................................. 3Prerequisite .............................................................................................................................................. 3Contact hours ........................................................................................................................................... 3

UNIT CHAIR CONTACT DETAILS ................................................................................................................. 3

UNIT DETAILS ................................................................................................................................................. 4Content ..................................................................................................................................................... 4About this unit .......................................................................................................................................... 4Previously learned knowledge and skills .................................................................................................. 5Aims .......................................................................................................................................................... 5Unit Learning outcomes ........................................................................................................................... 5Deakin graduate learning outcomes ......................................................................................................... 5Teaching methods ..................................................................................................................................... 6Student evaluation .................................................................................................................................... 7

ASSESSMENT ................................................................................................................................................... 7Assessment overview ................................................................................................................................ 7Assessment tasks ...................................................................................................................................... 7Assignment submission ............................................................................................................................. 8

LEARNING RESOURCES ................................................................................................................................. 8Unit materials ........................................................................................................................................... 8Prescribed and/or recommended texts ..................................................................................................... 8Reference books ....................................................................................................................................... 8

Page 2: SIT323 Unit Guide

Deakin University, Faculty of Science, Engineering and Built EnvironmentSIT323 - Practical Software Development 2013 / Trimester 2

15 July 2013 Page 2 of 8

INTRODUCTION

This Unit Guide explains the aims of the unit, describes the assessment requirements and gives details aboutthe teaching and learning strategies used in the delivery of SIT323 Practical Software Development. Youshould always read this Unit Guide first and check it frequently when preparing to study or embarking onassignment work.

UNIT CHAIR WELCOME

Welcome to one of the last few units in software development. Before you graduate from Deakin Universityand embark on a software development career, this unit aims to teach you some industry practices to developprofessional and industrial-strength programs. This will be a unit that stresses the practical aspects of software development. Therefore, expect a lot ofdiscussion about code, and expect a lot of hands-on in the workshops and assignments. The aim of this unit isto complete your understanding of coding and to refine your skills in programming. Prior to studying this unit,you would have completed a few programming assignments. However, none of those would prepare you todeal with the situations that you face in the industry – where a module under your charge can have more than10,000 lines of code. So that you can develop real-world programs, this unit will share some “best practices” experience with you inthe lecture while you practice them in the workshops and demonstrate your understanding through theassignments. Since the aim is to enhance your programming skills, this unit is entirely assignment-based, i.e.,there won’t be exams. It is therefore important that you maintain regular attendance in the lectures andworkshops. Likewise, you can expect the assignments to be of a much larger scale and far more complex thanwhat you would have previously encountered. CloudDeakin is the focal point for learning in this unit. You should get yourself familiar with the facilitiesprovided on CloudDeakin and the way materials are organized for SIT323. Not only will I add materialsthroughout the trimester, announcements and the administration of assignments will be conducted throughCloudDeakin. Therefore, check CloudDeakin regularly.

In addition to checking these organisers regularly, it is vital that you pay particular attention to anyannouncements made online. The availability of new materials and any administrative matters of the unit willbe made through CloudDeakin. CloudDeakin Discussions is the other tool that you should be familiar with toconduct SIT323 discussions among your peers.

I strongly encourage that you use the information provided in this guide and on CloudDeakin to prepareyourself for the expectations of this unit. A little preparation and planning will go a long way in helping you getthe most out of this unit.

I wish you all the best!

Dr Robert DewUnit Chair

Achieving goals

To achieve the goals of this unit you will need to adopt regular work habits and complete the activitiesassociated with each workshop session. You need to commit time and effort for your assignments rather thanseeing them as a hurdle to get a credit for this unit.

Page 3: SIT323 Unit Guide

Deakin University, Faculty of Science, Engineering and Built EnvironmentSIT323 - Practical Software Development 2013 / Trimester 2

15 July 2013 Page 3 of 8

The activities are tasks that you must complete yourself. They are solitary activities that cannot be completedby someone else on your behalf. After all, you are the developer when you get the job. NOTE: If you lack the proper programming skills, then this unit is not for you. If you have to take this unit,then it is important to be ready by preparing for it before the Trimester starts. You are always welcome tospeak to your lecturer about your readiness for this unit before enrolling in the class.

How to begin

This unit is will be challenging for many students.

If you have a weak programming background or you do not like coding, then this unit can be a major hurdlefor you. If you have this issue, I would suggest that you approach this unit with an open mind to learn and tryyour very best.

One other difficulty with this unit is that it is a unit about implementation. In other words, you cannot “study”implementation. However, you can “practise” implementation. Studying the recipe will not make you a goodchef. Only by practising the recipe can you cook the dish properly. Therefore, please make full use of theworkshops and the assignments. The impact that it can have is probably bigger than the lectures in terms ofyour own learning outcomes. Revise your programming and practise as much as you can. This is the only wayto a good start to this unit.

Time management is the most critical aspect of university study. It is very easy to be distracted with FaceBook,Twitter, or MSN Messenger. Did you ever count how much time you spend on them? Use your time wisely. Usesome for recreation. Use some more for socialisation. However, use some for study and practise. Gapsbetween classes on campus can too easily disappear. Schedule some for study purposes and write them in onyour timetable.

INFORMATION ABOUT THE UNIT

Unit chair

R Dew

Prerequisite

One of SIT131, SIT153, SIT232 or SIT251

Contact hours

1 x 1 hour lecture, 1 x 2 hour practical session per week

UNIT CHAIR CONTACT DETAILS

Unit Chair: Dr Robert Dew

Office: KA5.203 - Geelong Waurn Ponds Campus

Email: [email protected]

Phone: (03) 522 72602

How to contact me: Email (highly preferred), phone, or visit me in my office.

Page 4: SIT323 Unit Guide

Deakin University, Faculty of Science, Engineering and Built EnvironmentSIT323 - Practical Software Development 2013 / Trimester 2

15 July 2013 Page 4 of 8

My role as:

Consultation hours:Mondays 3:00 to 4:00Tuesdays 2:00 to 5:00

Postal address:

School of Information TechnologyFaculty of Science, Engineering and Built EnvironmentDeakin UniversityLocked Bag 20000GEELONG VIC 3220

Other staff:Dr Honghua [email protected]

UNIT DETAILS

Content

This unit complements other software design units in the Bachelor of Information Technology programme.Design units focus on techniques of software design for software systems so they can fulfil client requirements.Complementing this set of skills are coding units that implements a given design. This unit will extendstudents’ skills in implementation so that a given implementation is carried out to professional standards.Twelve topics on advanced techniques of implementation will be covered in this unit and will be set in themodern context of .NET-like environments, databases and the Internet. On completion of this unit, studentswill acquire the skills required to write industrial-strength code.

About this unit

Once upon a time, a man by the name of Steve Maguire went to work for Microsoft. As someone who hadprogrammed for only small companies, Steve had no idea what to expect. Like everyone else, he thought thatthe code he would see in the first version of Microsoft Excel would be glamorous or elegant. But to his surprise,what he found was plain everyday code that was not different from what he had seen before.

What impressed Steve instead was that the implementation included an extensive debugging system built rightinto the product. The debugging system coded inside Excel would automatically alert programmers and testersof bugs much in the same way warning lights on the cockpit of A380 alert pilots of failures. The debuggingsystem wasn’t really testing the code. It was monitoring itself. None of the concepts found in the debuggingsystem were new. What shocked Steve was the sheer extent to which they were employed and by how effectiveit was in detecting bugs.

The story didn’t end there. But the experience Steve had led him to pen a book on developing solid code yearslater that inspired some staff to pursue a career in software development.

Many years ago, one student in Geelong wrote 15,000 lines of bug-free C# code as a project for SIT302. Theprogram has never crashed in any of the demonstrations to the industry. And to this date, there is no singlebug found after the release of Mathew’s software. Those who have seen his code were impressed by itselegance – they were easy to read and had an extensive framework put in place to support his development.Like what Steve saw, a good percentage of the 15,000 lines of C# code was part of the diagnostic system.

While Steve may be a well-known software developer in the world, this student (our very own) showed that youdon’t need a high IQ or Ph.D. to be able to do the same. Building software is much an engineering craft likeany thing else.

Page 5: SIT323 Unit Guide

Deakin University, Faculty of Science, Engineering and Built EnvironmentSIT323 - Practical Software Development 2013 / Trimester 2

15 July 2013 Page 5 of 8

This unit assumes that you are ready (or almost ready) to graduate and apply the skills you have learnt invarious software designing and programming units. This can include SIT102, SIT103, SIT104, SIT201, SIT221,SIT302, and your stream specific units, e.g., SIT131 and SIT321 if you are in CS/SD or SIT252/SIT253 if youare in GDD. If you have forgotten the materials that you have covered in those units, I would strongly encourage you torevisit them before we embark into Week 2 of the trimester. It would be good if you can retrieve your previousprogramming assignments so that you can look at your own work and reflect against good programmingtechniques.

Previously learned knowledge and skills

See 'About this unit' above.

Aims

The aim of this unit is to develop your skills to code quality, i.e., bug-free, software.

In other words, this unit is about the “implementation” of software. It is different from the “design” of software.By “design”, I refer to modelling tools (e.g., UML, SAD, etc.) that you were taught in units like SIT201 orSIT321. By “implementation”, I refer to good techniques that will allow you to develop the final product to itshighest quality.

If I were to give you an analogy, it would be cooking. The “design” aspects of cooking would be the theoreticalunderstanding about ingredients and the different cooking methods to produce a dish. The “implementation”of cooking is about the actual mixing of the ingredients and the actual cooking to be done according to therecipe. Hence, the same recipe can result in two dishes with very different tastes. This is because the goodchef has polished and refined his “implementation” skills (the physical act of cooking) to realise the “design”(the recipe).

So this unit will look at various aspects of software “implementation” that software “design” units do not cover.

Unit Learning outcomes

On completion of this unit, students will:

gain an understanding that software bugs are a result of poor quality code1.appreciate and apply the importance of good implementation through good code structuring and the use2.of well-known coding templatesimplement software using known software development kits and appreciate how they are organised3.enhance and extend their software development portfolio4.

Deakin graduate learning outcomes

Deakin Graduate Learning Outcomes describe the knowledge and capabilities graduates have acquired andare able to apply and demonstrate at the completion of their course. They consist of outcomes specific to aparticular discipline or profession as well as transferable generic outcomes that all graduates should haveacquired irrespective of their discipline area. Learning outcomes are not confined to the knowledge and skillsacquired within a course, but also incorporate those that students bring with them upon entry to the course

Page 6: SIT323 Unit Guide

Deakin University, Faculty of Science, Engineering and Built EnvironmentSIT323 - Practical Software Development 2013 / Trimester 2

15 July 2013 Page 6 of 8

consistent with the Australian Qualifications Framework pathways policy. Deakin’s courses are designed toensure that students develop systematic knowledge and understanding of their discipline or chosen professionappropriate to their level of study. They are specified at the course level, mapped to course components andare assessed. In professionally-accredited courses, discipline-specific learning outcomes may be defined in partby the relevant professional body. The table below indicates which Deakin Graduate Learning Outcomes are taught, practised and/or assessedwithin this unit. Learning outcomes that have no ticks assigned to them are important but are not a key part ofthis unit.

DEAKIN GRADUATE LEARNING OUTCOMES Taught Practised Assessed

1. Discipline-specific knowledge and capabilities: appropriate to thelevel of study related to a discipline or profession

√ √ √

2. Communication: using oral, written and interpersonal communicationto inform, motivate and effect change

√ √ √

3. Digital literacy: using technologies to find, use and disseminateinformation

√ √

4.Critical thinking: evaluating information using critical and analyticalthinking and judgment

√ √ √

5.Problem solving: creating solutions to authentic (real world andill-defined) problems

√ √ √

6.Self-management: working and learning independently, and takingresponsibility for personal actions

√ √

7. Teamwork: working and learning with others from different disciplinesand backgrounds

8. Global citizenship: engaging ethically and productively in theprofessional context and with diverse communities and cultures in aglobal context

Teaching methods

On Campus Students – Lecture Attendance

The unit is offered to on-campus students through a 1 hour lecture and 2 hour practical session. The lecturesand practicals are tightly bound together. On and off campus students will also be taught through onlinecontact.

The evidence is that the average student who attends lectures does better than those who do not. ForAustralians and PR Visa holders, lecture attendance at Deakin University is not compulsory; however, regularattendance is vital for your performance in this unit. For overseas students with student visas, lectureattendance is a condition of granting the visa and is compulsory. Very frequently, material available onCloudDeakin and texts is supplemented with additional examples given in lectures. Assignment and testquestions will often be based on these examples. In addition, some topics may not be covered in the referencematerial at all.

Students who miss a lecture are responsible for acquiring the missed material. It is your responsibility toproperly familiarise yourself with the material covered and to find out from other students about anyannouncements or other administrative matters that were dealt with in class. Much of this information will befound on the unit pages in CloudDeakin – but do not assume it is all there!

Students who are absent from two or more consecutive lectures should discuss the matter with the unit

Page 7: SIT323 Unit Guide

Deakin University, Faculty of Science, Engineering and Built EnvironmentSIT323 - Practical Software Development 2013 / Trimester 2

15 July 2013 Page 7 of 8

coordinator.

On Campus Students — Workshops All on campus students are strongly encouraged to attend their allocated workshop sessions each week.Attendance at workshops is vital to doing well in this unit as the exercises provide foundation to the successfulcompletion of the assignments. Class allocations will be discussed in the first lecture of the trimester. StudentsMUST attend the sessions to which they have been allocated. Students are expected to complete the exercisesin the allotted time. If you are unable to complete the exercises within the class, you will need to makearrangements with your tutor to complete the work in your own time, before your next weekly session.

Off Campus Students — Study Planning Off campus students are welcome to attend lectures at Waurn Ponds or Burwood, or use the lecture recordingfacility on CloudDeakin. Otherwise, you are expected to work through the sessions at a self-paced rate but, togain maximum benefit, this should be at a steady rate of progress as described and allocated in the studyguide.

As a rule of thumb, the average time required for an average student, seeking an average mark is about 10hours per week. Note that this is an average. The actual time required may be greater or less at differenttimes of the trimester. For example, when preparing an assignment submission, more time may be required.Some students, seeking better results, devote more time. Other students, finding unexpected difficulties,spend more time than expected.

Student evaluation

This unit has been running for a number of years but under a recent curriculum change to improve graduateoutcomes, i.e., to make our students more employable, this unit has been revamped in its contents. While thename of this unit remains the same, the materials have been redeveloped altogether. Since 2009, this unit has constantly received very good SETU scores despite a revised set of material andassessment each year. We look forward to delivering an excellent learning experience again.

ASSESSMENT

Assessment overview

2 assignments (40%, 60%)

Assessment tasks

AssessmentName

Weight

Duedate

Brief Description Linked UnitLearningOutcome(s)(ULOs)

Linked DeakinGraduateLearningOutcome(s)(DGLOs)

Page 8: SIT323 Unit Guide

Deakin University, Faculty of Science, Engineering and Built EnvironmentSIT323 - Practical Software Development 2013 / Trimester 2

15 July 2013 Page 8 of 8

Assignment 1 40%End ofWeek 6

The overall theme is to generatesimple and complex word-searchpuzzles. The first assessment taskfocuses on the development of aGUI interface for a client/serversystem, including a dummy serverto ensure client functionality.

1,2,3,4 1,2,5,6

Assignment 2 60%End ofWeek12

Development of a the back end forthis client/server word-searchsystem.

1,2,3,4 1,2,5,6

Assignment submission

Check CloudDeakin regarding submission instructions for each assignment.

LEARNING RESOURCES

Unit materials

See CloudDeakin.

Prescribed and/or recommended texts

There is no prescribed textbook for this unit. Relevant materials will be progressively uploaded to CloudDeakinfor students. Students may choose to purchase general reference books suited to their needs, borrow from thelibrary or use the Internet.

Textbooks, reference books, general books and software may be ordered from the bookshop:

phone 1800 686 681 (freecall);●

email to [email protected]; or●

order online from the University bookshop web site at http://www.dusabookshop.com.au/●

Reference books

Suitable references will be provided in the slides of each lecture.