• No results found

IT4304 Rapid Software Development (Optional)

N/A
N/A
Protected

Academic year: 2021

Share "IT4304 Rapid Software Development (Optional)"

Copied!
10
0
0

Loading.... (view fulltext now)

Full text

(1)

1

IT4304 Rapid Software Development

(Optional)

INTRODUCTION

This is one of the optional courses designed for Semester 4 of the Bachelor of Information Technology Degree program. This course on Rapid Software Development (RSD) focuses on software development methods and tools associated with building correct, high quality software on schedule and within budget.

CREDITS: 04

LEARNING OUTCOMES

After successful completion of this course students will be able to:

• Obtain a firm foundation on RSD concepts and methodologies.

• Acquire sufficient working knowledge on RSD tools.

MINOR MODIFICATIONS

When minor modifications are made to this syllabus, those will be reflected in the Virtual Learning Environment (VLE) and the latest version can be downloaded from the relevant course page of VLE. Please inform your suggestions and comments through the VLE.

http://vle.bit.lk

ONLINE LEARNING MATERIALS AND ACTIVITIES

You can access all learning materials and this syllabus in the VLE: http://vle.bit.lk, if you are a registered student of BIT degree program. It is very important to participate in learning activities given in the VLE to learn this subject.

ONLINE ASSIGNMENTS

The assignments consist of two quizzes, assignment quiz 1 (It covers the first half of the syllabus) and assignment quiz 2 (It covers the second half of the syllabus). Maximum mark for a question is10, minimum mark for a question is 0 (irrespective of negative scores).

Final mark is calculated considering 40% of assignment quiz 1 and 60% of assignment quiz 2. Pass mark for the online assignments in a course is 50. You are advised to do online assignments before the final exam of the course. It is compulsory to pass all online assignments to partially qualify to obtain year 2 certificate.

(2)

2 FINAL EXAMINATION

Final exam of the course will be held at the end of the semester. Examination Paper will consist of two parts.

• Part 1 : 1 Hour paper consisting of Multiple Choice Questions

• Part 2 : 1 Hour paper consisting of Structured Questions

OUTLINE OF SYLLABUS

Topic Hours

1- Introduction to RSD 02

2- Characteristics of Rapid Software Development 02

3- Project Estimation 02

4- Project Scheduling 04

5- Teamwork 04

6- Iterative and Incremental Development 04*

7- Rapid Application Development 04*

8- Software prototyping 02*

9- Agile software development 26*

10- Other topics in Rapid Software development 10*

Total 60

(3)

3 REQUIRED MATERIALS

Main Reading

Ref 1: Steven McConnell, Rapid Development ISBN: 81-7853-013-9, WP Publishers & Distributors (P) Ltd.

Supplementary Reading

Ref 2: Agile and Iterative Development: A Manager's Guide by Craig Larman, Agile Software

development series, Alistair Cockburn and Jim Highsmith, Series Editors

Ref 3: http://www.csulb.edu/committees/webcomm/hannonhill/Hannon_Hill_Content_Management_W hite_Paper.pdf Ref 4: http://www.freesoftwaremagazine.com/articles/cms_end_users_part_1?page=0,0 Ref 5: http://www.freesoftwaremagazine.com/articles/cms_end_users_part_2 Ref 6: http://www.agile-tools.net/ Ref 7: http://www.atlassian.com/agile/tools/ Ref 8: http://www.codegear.com/products/jbuilder Ref 9: http://www.easyeclipse.org/site/distributions/index.html Ref 10: http://www.netbeans.org/ Ref 11: http://www.eclipse.org/ Ref 12: http://www.stevemcconnell.com/rdcntnt.htm Ref 13: http://www.hallogram.com/menus/RAD_Tools.html Ref 14: http://www.stevemcconnell.com/rdkind.htm Ref 15: http://www.itmweb.com/essay520.htm Ref 16: http://www.netobjectives.com/files/events/download/rup_xp_scrum_pc_030326_ppt.pdf Ref 17: http://www.functionx.com/ Ref 18: http://www.codeproject.com/KB/architecture/scrum.aspx#Introduction0 Ref 19: http://www.oreilly.com/catalog/netbeans/ Ref 20: http://www.netbeans.org/kb/articles/books.html Ref 21: http://www.extremeprogramming.org/ Ref 22: http://agilemodeling.com/

The pages of the web addresses mentioned above last accessed on 31st March 2011. The content of the above address are on the VLE.

(4)

4 DETAILED SYLLABUS:

Section 1: Introduction to RSD (2 hrs) Instructional Objectives

• Identify issues in traditional software development

• Describe the difference between traditional software development and Rapid Software Development

• Identify commonly made classic mistakes during Rapid Software Development • Select appropriate Rapid Software Development model

Material /Sub Topics

1.1. What is Rapid Software Development? [Ref 1: pg 1] 1.2. Issues in traditional software development

1.3. Classic mistakes in Rapid Software Development [Ref 1: pg 37-38] 1.3.1. People related classic mistakes [Ref 1: pg 40-43]

1.3.2. Process related classic mistakes [Ref 1: pg 44-46] 1.3.3. Product related classic mistakes [Ref 1: pg 46-47] 1.3.4. Technology related classic mistakes [Ref 1: pg 47-48] 1.4. Why RSD?

1.4.1. Choosing most rapid life cycle model [Ref 1: pg 133-151] 1.5. What kind of RSD do you need? [Ref 1: pg 8-27]

1.6. Modern RSD

Section 2 : Characteristics of Rapid Software Development (2 hrs) Instructional Objectives

• Describe the general strategy for rapid development

• Describe the four dimensions of development speed

• Discuss the importance of customer oriented development

• List some customer oriented practices

Material /Sub Topics

2.1. Rapid development strategy [Ref 1: pg 8-18] 2.1.1. General strategy for rapid development

(5)

5

2.1.2. Four dimensions of Development 2.1.2.1. People

2.1.2.2. Process 2.1.2.3. Product 2.1.2.4. Technology

2.2. Customer oriented development [Ref 1: pg 233-245] 2.2.1. Customer’s importance to rapid development 2.2.2. Customer oriented practices

2.2.3. Managing customer expectations

Section 3 : Project estimation (2 hrs) Instructional Objectives

• List different ways of estimating a RSD project

• Describe the differences among main aspects of RSD project estimation

Material /Sub Topics

3.1. Software estimation and estimation process in RSD 3.2. Size estimation [Ref 1: pg 174-182]

3.3. Effort estimation [Ref 1: pg 182-183] 3.4. Schedule estimation [Ref 1: pg 183-185] 3.5. Estimate refinement [Ref 1: pg 197-200]

Section 4 : Project scheduling (4hrs) Instructional Objectives

• Explain the relationship between schedule pressure and schedule slips • Identify root causes of overly optimistic scheduling

• Identify negative effects of overly optimistic scheduling • Explain different approaches of beating schedule pressure

Material /Sub Topics

4.1. Overly optimistic scheduling [Ref 1: pg 207-220]

4.1.1. Root causes of overly optimistic schedules [Ref 1: pg 209-210] 4.1.2. Effects of overly optimistic schedules [Ref 1: pg 210-215]

(6)

6

4.1.3. Excessive schedule pressure [Ref 1: pg 215-217] 4.2. Schedule pressure

4.2.1. Beating schedule pressure [Ref 1: pg 220-224]

Section 5 : Teamwork (4 hrs) Instructional Objectives

• Describe the importance of creating effective teams • Explain the process of long term team building • Identify the issues related to team work

Material /Sub Topics

5.1. Teamwork’s Importance to RSD [Ref 1: pg 276-277] 5.1.1. Variations in Team Productivity

5.1.2. Cohesiveness and Performance 5.2. Creating Effective Teams [Ref 1:pg 278-289]

5.2.1. Team Characteristics

5.3. Why Teams Fail? [Ref 1:pg 289-292] 5.4. Long-Term Team Building [Ref 1:pg 292]

5.5. Team Structure [Ref 1:pg 297] 5.5.1. Team Models [Ref 1:pg 304]

Section 6 : Iterative and Incremental Development (4 hrs)

Instructional Objectives:

• Identify characteristics of RAD approach

• List advantages and limitations of Iterative and Incremental Development

• List commonly used Iterative and Incremental Development tools

6.1. Characteristics of the developmental model [Ref: Teacher's note] 6.1.1. Iterative planning

6.2. When to use Iterative and Incremental Development [Ref: Teacher's note] 6.3. Iterative Development methods [Ref: Teacher's note]

6.3.1. Unified Process

(7)

7 Section 7: Rapid Application Development (4 hrs)

Instructional Objectives:

• Identify characteristics of RAD approach

• List advantages and limitations of RAD

• List commonly used RAD tools

7.1. Characteristics of RAD [Ref: Teacher's note] 7.2. RAD constraints [Ref: Teacher's note] 7.3. When to use RAD [Ref: Teacher's note]

7.3.1. Advantages of RAD 7.3.2. Disadvantages of RAD

7.4. RAD environment tools [Ref: Teacher's note] 7.4.1. Database programming

7.4.2. Interface generators 7.4.3. Report generators

7.4.4. Links to office applications

Section 8 : Software prototyping (2hrs) Instructional Objectives:

• Identify characteristics of prototype approach

• List advantages and limitations of prototyping

• Identify two(2) different prototyping methods

8.1. Characteristics of prototyping method [Ref: Teacher's note] 8.2. Benefits of prototyping [Ref: Teacher's note]

8.3. Prototyping process [Ref: Teacher's note] 8.4. Prototyping methods [Ref: Teacher's note]

8.4.1. Throwaway prototyping 8.4.2. Evolutionary prototyping

(8)

8 Section 9: Agile software development (26 hrs)

Instructional Objectives:

• Identify characteristics of agile approach

• List advantages and limitations of agile development

• Identify different agile development methods

Use Rapid Software Development tools in agile development 9.1. What is agile software development? [Ref 2: pg 25 - 26] 9.2. History of Agile development [Ref: Teacher's note] 9.3. Agile process characteristics [Ref: Teacher's note]

9.3.1. Human factors

9.4. The Agile manifesto and principles [Ref 2: pg 27 - 28] 9.5. Agile methods

9.5.1. Adaptive Software development [Ref: Teacher's note] 9.5.1.1. Features

9.5.2. Agile Unified Process (AUP) [Ref: Teacher's note] 9.5.2.1. History

9.5.2.2. Characteristics of AUP 9.5.3. Scrum

9.5.3.1. History of scrum [Ref 2: pg 135 - 136]

9.5.3.2. Characteristics of Scrum [Ref: Teacher's note] 9.5.3.3. Roles and Practices [Ref 2: pg 115 - 123]

9.5.3.4. Agile project management with scrum [Ref: Teacher's note] 9.5.3.5. Artifacts [Ref 2: pg 114]

9.5.3.5.1. Product backlog [Ref 2: pg 123 - 124] 9.5.3.5.2. Sprint backlog [Ref 2: pg 123 - 124]

9.5.3.5.2.1. Sprint planning best practices 9.5.3.5.3. Burn down [Ref 2: pg 125 - 126] 9.5.4. Extreme Programming (XP)

9.5.4.1. History [Ref 2: pg 170]

9.5.4.2. Characteristics of XP [Ref: Teacher's note] 9.5.4.2.1. Planning, Design, Coding, Testing

9.5.4.3. Work products, Roles and Practices in extreme programming [Ref 2: pg 144 - 156]

(9)

9

9.5.5. Dynamic Systems Development method [Ref: Teacher's note] 9.5.5.1. Principles

9.5.5.2. Critical success factors 9.5.6. Crystal clear [Ref: Teacher's note]

9.6. Agile tools and methods [Ref: Teacher's note]

9.6.1. Integrated Development Environments (IDE) – Jbuilder, EasyEclipse, NetBeans etc.

9.6.2. Requirements Management (Product/release/backlogs) 9.6.3. Planning (Release/Iteration planning)

9.6.4. Automated testing

9.6.5. Version controlling & Integration/ Automated builds 9.6.6. Tracking (project/release/iteration progress tracking) 9.6.7. Quality Assurance (testing, bugs management)

9.6.8. Feedback Gathering (feedback from customers, ideas, issues)

Section 10 : Other topics in Rapid Software development (10hrs) Instructional Objectives:

• Identify the use of CMS

• Identify different types of CMS

• Describe the advantages of CMS

Create a simple website using a CMS

10.1. Content Management Systems(CMS) [Ref: Teacher's note] 10.1.1. Introduction 10.1.2. Advantages of CMS 10.1.3. Different types of CMS 10.1.3.1. Web CMS 10.1.3.2. Transactional CMS 10.1.3.3. Publication CMS 10.1.3.4. LCMS

10.1.3.5. Integrated document management system 10.1.3.6. Enterprise CMS

(10)

10

10.1.4. Creating a managed website 10.1.4.1. Choosing a right CMS

10.1.4.2. Installing a CMS and promoting the site 10.1.4.2.1. Technical Infrastructure to setup a CMS 10.1.4.2.2. Setup a CMS

10.1.4.2.3. Setup the site 10.1.4.2.4. Promoting the site

10.2. Capability Maturity Model(CMM) [Ref: Teacher's note]

PLATFORM

References

Related documents

With: Wishbone Ash, Uriah Heep, Status Quo, Lynryd Skynyrd and Deep

• Draft: Quality considerations in Demonstrating Biosimilarity to a Reference Protein Product (2012). • Draft: Biosimilars: Questions and Answers Regarding Implementation of the

 Government’s  Development  Finance  InsCtuCon

● Kathy and Valerie used Google Calendar to put together a master calendar of Web events, online advertising, retention events, regular advertising and special events so we can

Each of the important parameters in Figure 1 is estimated, including: the static performance difference between Internet-only start-ups and branching start-ups (i.e., the

The results presented indicate that the high volatile acid pro- duction of starters is not the result of mixtures of two or more cultures of Bact. PRESENCE IN

Founded by nationally recognized clinical pharmacist James LaValle, Integrative Health Resources specializes in creating science-based educational program materials

In our study, we performed full LV coverage and we have shown that post-contrast T1 maps can accurately quantify acute MI size (using the semi-automated 2-SD threshold) when compared