Barren

Barren

Friday, February 4, 2011

Retooling the Software Engineering Curriculum

The HOD asked me if there is any way in which the Curriculum could be made better, and of course I jumped onto the offer. So I have a week to come up with some suggestions. Some might impact the current students and some might be kept to incorporate next year/semester. A real life example of Phased Development, right? :)

So here are some of my quick thoughts on the matter. And since I am making a big hue and cry about creating an interactive process to learning, this is your opportunity to chime in. YOU will be the torch bearers of this process, incoming students (and teachers) will follow your example, so set the bar high and voice your opinions. Success here might lead to changes in other classes also. So take the initiative and help yourself.

My 2 cents on the matter -


  1. The book is outdated. We need to get a book that has more practical examples and less theory. An excellent candidate would be "Software Engineering - A Practitioner's Guide" by Roger Pressman
  2. UML integration. Although the HOD assured me you will learn UML in 7th Semester, but a rudimentary knowledge of UML will go a long way in making the concepts clearer, if I may use a cliche.
  3. Group Projects. This I think would be a big and necessary change.
    • At the end of  Unit 1 - basically where we are currently - students will be broken up into groups of 4-6 people.
    • Each group will go through a Software Life Cycle through the semester and produce something of substance by the end.
    • When the groups are formed, the students decide which process model they will follow, but with a twist. You create your own process - you take an existing process and add your improvements to it. The more innovative the changes, the better it'll be. Waterfall will not be allowed.
    • You pick a sufficiently complex project and nominate one person in the group as a Customer. 
    • As we go through the curriculum you create requirements, design the system and program, do backend coding, create test cases and test the system and deliver the project.
    • You decide what softwares to use for each leg of the project. Everything should not be done in MS Word, but the idea is to expose you to new softwares out there which take into account the Software Engineering processes.
    • Deliverables will match with the progression through units.
    • Idea is not to have a running system (although that would boost your marks) but to find out creative ways to tackle Software Development.
So here are my very quick thoughts on the matter. If we follow my suggestions I can guarantee you will be better engineers and therefore have better chances of employability. And to those who only care about becoming the next "Ambani" - it won't hurt to have a paying job after college.

6 comments:

  1. How i wish there was some similar moves in second year??Nevertheless I'm the happiest man under the moon tonight for getting an opportunity to indulge in something genuinely pragmatic and helpful.

    Sir,I request you to start the the project process asap as an early beginning would leave us with ample time to work on it unlike in last semester where projected was done for marks with no pragmatic intentions by a plethora of the demographics.

    ReplyDelete
  2. i love projects!
    way better than a boring lectures xP
    count me in ;)

    ReplyDelete
  3. sir that would be great...
    but indulging everyone would be difficult....
    these projects will make us more hone to present 'industry'...

    i am really interested in what ever u have outlined..... i am ready..... :)

    ReplyDelete
  4. sir,
    its a total different approach to teaching and i like it! doing real time projects is indeed good!!
    the prob only lies in our curriculum!! doing such a project in such less time, i feel is not worth it,because if we are forced to do it like the last sem most o us just land up taking codes from one and another and finishing it only to get the marks!! and working with full honesty on a proj such as this is not possible with the number of activities and assignments and tests that are coming up!! i think something like this should be done during the 3 months off that we get so that it is used up constructively!!

    other than the time constraint.. it is a wonderful idea and a platform to showcase what we learn!!

    ReplyDelete
  5. Sneha

    There are always reasons and excuses not to do tough things. It is but human nature.

    If you read the guidelines carefully, I am not asking you to deploy the product by the end of the semester. But it'll start you on the right path to get there.

    The 3 months in summer should be for internships, and if not then you can always build on this project to create something world class.

    I have never been able to do something when I start it thinking I won't be able to do it. Stay positive!

    Navpreet

    ReplyDelete
  6. sir,

    i agree with you in a way!!
    the prob is we already have another project in CG which of course has to be completed !!

    i was just trying to voice the opinion of the class !!

    nice thought!! i second that !!

    sneha

    ReplyDelete