08.01.2015 Views

Software Development: Tools and Process - Suraj @ LUMS

Software Development: Tools and Process - Suraj @ LUMS

Software Development: Tools and Process - Suraj @ LUMS

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Software</strong> <strong>Development</strong>: <strong>Tools</strong><br />

<strong>and</strong> <strong>Process</strong>es<br />

Lecture -1: Introduction to Course<br />

1


Your Expectation <strong>and</strong> perception about<br />

the Course <br />

2


Course Outline discussion<br />

3


Module 1: Introduction<br />

• Introduction to course<br />

• <strong>Software</strong> development life cycle – overview of<br />

software development process models.<br />

• Review of software engineering concepts<br />

• 2 session of 75 minutes<br />

• Pressman, McConnel Chapter 6,8<br />

• Pankaj-1 Chapter 1,2<br />

4


Module 2: Introduction to CMMI<br />

• Key concepts of processes<br />

• Introduction to quality st<strong>and</strong>ards – CMMI –<br />

• Underst<strong>and</strong>ing the Architecture of CMMI –<br />

• Continuous <strong>and</strong> Staged Representations<br />

• Interpreting the CMMI<br />

• Attributes of level 1 organizations<br />

• 3 sessions 75 minutes each<br />

• Dennis Chapter 3 – 6, 9<br />

• Beth Chapter 1 - 5<br />

• McConnel Chapter 7<br />

5


Module 3: Detailed study of CMM<br />

• CMM appraisals - SCAMPI<br />

• <strong>Process</strong> Areas Discussion<br />

• Technology evolution & change<br />

management<br />

• 2 sessions 75 minutes each<br />

• www.sei.cmu.edu/cmmi<br />

• McConnel Chapter 14<br />

6


Module 4: Personal software process<br />

• Detailed discussion of personal software<br />

process <strong>and</strong> its application<br />

• 2 sessions 75 minutes each<br />

• Humphrey-1 Chapter 11 to 19<br />

• Mid Term Exam<br />

7


Module 5: Key concepts for software development processes<br />

• <strong>Software</strong> configuration management – example of SCM<br />

tool<br />

• <strong>Software</strong> quality assurance – example of quality<br />

assurance tool – QA activities<br />

• <strong>Software</strong> Estimation – function points <strong>and</strong> other methods<br />

• Requirement Elicitation <strong>and</strong> management<br />

• Case Study: Rapid development of a software project –<br />

mapping of artifacts<br />

• 5 sessions 75 minutes each<br />

• Pressman Chapter 9<br />

• Pankaj-2 Ch. 2, 6<br />

8


Module 6: Managing <strong>Software</strong> Projects<br />

• Problems in managing software projects –<br />

defining scope, extracting requirement,<br />

requirement creep, people factor -<br />

• Key success factors in management of<br />

Information system projects – Major<br />

causes of project failures<br />

• 2 sessions 75 minutes each<br />

• Flowers Chapter 7<br />

9


Module 7: Guest Speaker<br />

• <strong>Software</strong> development practices in<br />

industry<br />

• 1 sessions 75 minutes<br />

10


Module 8: Project Presentations<br />

• Presentation regarding projects by all<br />

groups<br />

• 2 session of 75 minutes<br />

11


Course Project<br />

Students will be required to perform CMMI<br />

based assessment of software<br />

development processes, for a selected<br />

software company. Next, they will give<br />

recommendations for the improvement of<br />

software processes with respect to CMMI<br />

framework.<br />

12


Grading <strong>and</strong> Exams<br />

Quizzes 15%<br />

Project 25%<br />

Midterm 25%<br />

Final 35%<br />

13


Review of Basic Concepts<br />

14


Review of <strong>Software</strong> Engineering Concepts<br />

What is the Difference between Art <strong>and</strong> Science<br />

• Art: The integration <strong>and</strong> manifestation into a state of being which<br />

allows a free flowing creative process using personally unique<br />

techniques evolved from the technical processes of a discipline<br />

• Science: the process of gaining knowledge based on making<br />

repeated observations about nature in controlled conditions<br />

(experimentation) <strong>and</strong> attempting to explain what causes those<br />

observations (theorizing) through constructing hypotheses that can<br />

be tested experimentally<br />

What is the Difference between Science <strong>and</strong><br />

Engineering<br />

• Engineering: the practical application of science to commerce or<br />

industry<br />

• Is software Engineering same as computer science<br />

15


Review of <strong>Software</strong> Engineering Concepts<br />

• What is <strong>Software</strong> Engineering<br />

• <strong>Software</strong> project starts with an idea <strong>and</strong> ends with a<br />

working product Whatever is done from the start till the<br />

end is called software engineering<br />

• A systematic approach towards building a software<br />

solution is called software engineering<br />

• System Engineering<br />

• Integrating software solution into existing business –<br />

software, hardware, people, etc.<br />

• Identification of sub-systems<br />

16


Review of <strong>Software</strong> Engineering Concepts<br />

<strong>Software</strong> Engineering – another<br />

definition<br />

• Bringing together the disciplined approach of<br />

engineering <strong>and</strong> creativity of an Artist to build<br />

required software solutions.<br />

<strong>Software</strong> development life cycle –<br />

SDLC<br />

• System engineering – requirement analysis –<br />

design – implementation – testing – deployment<br />

- maintenance<br />

17


Review of <strong>Software</strong> Engineering Concepts<br />

What is the difference between<br />

requirement specifications <strong>and</strong><br />

functional specifications<br />

18


Review of <strong>Software</strong> Engineering Concepts<br />

<strong>Software</strong> <strong>Process</strong> Models:<br />

• Waterfall Model<br />

• Incremental <strong>Development</strong> Model<br />

• Prototyping Model<br />

Which Model will you prefer<br />

We should know that which Model should be<br />

applied under what circumstances<br />

19


Questions!<br />

20

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!