On 16th July 2016, Department of Computer Science PG, MCA Program organized a seminar on Transformation from waterfall and traditional software development to Agile Software development. The Resource person for the session was Mr. Srinivas V (PMF SAFe, Agilist, CSFO, CSM), Agile Coach at CISCO Systems, Mr. Srinivas briefed the Second and Third year MCA students on Agile Software Development. He began the seminar by discussing about, what transformation is and why it is required. Then he went on to explain the software development life cycle and existing software development model - the waterfall model, Iterative and Incremental model and their shortcomings. The waterfall model has five distinct levels which are: Requirement, Architecture Design, Implementation, Validation/Testing and Deployment. In Iterative and Incremental software development model, all the phases overlapped and the developers involved had to multitask and many people were involved. The students came to an understanding that both the models were flawed and needed to be upgraded to overcome all their shortcomings i.e. defects, waste, command and control were high and the planning was less. He also introduces us to this new terminology "Code Smells", which means that the code that is developed is flawed and since no measures have been taken over a period of time the code began to smell/cause unwanted defects or errors.
Sir kept the audience interactive and interesting by offering sweets to which ever student asked or answer a question pertaining to the subject during the seminar.
In the second half of the seminar Mr. Srinivas introduced the students to the Agile software development. Agile software development is a set of principles for software development in which requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. It promotes adaptive planning, evolutionary development, early delivery, and continuous improvement, and it encourages rapid and flexible response to change.
He went on to explain about how agile works in comparison to Waterfall development methods as well as Agile Ceremonies (meetings).
SCRUM- Agile is a methodology and SCRUM is a framework. It is based on transparency, inspection and adaptation. Many meetings are planned over the course of the developmental stages. The meetings are 1. Sprint planning 2. Daily SCRUM meeting 3. Sprint review 4. Sprint retrospection,
User Story- Explains who, what, why and how? Questions that the developer has for the client.
Epics: Story sizing which is the estimations done based on references.
Difference between definition of done and acceptance criteria: Definition of done: Helps to build quality (Building the product right) and Acceptance criteria: Helps to build functionality (Building the right product).
The session ended with a recap of all the topics that had been discussed.