Software Engineering should yield the following results:
If software engineering doesn't produce these results, don't bother using it. If an approach, theory, or product doesn't contribute to getting these results, trash it. Life's too short and software development too tough to waste time on garbage.
Software engineering as typically practiced in the AS/400 community means three things. One, a development process is used that provides checks and balances to insure that individual mistakes are not propogated throughout the system. Two, the process has standards which support the software engineering goals. And three, emphasis on clear communications amoung everyone involved. What follows are some of the things my colleagues and I have done that may be termed software engineering as defined above. Personally, I think software engineering is still "software engineering" but the computer profession is young and it is good to have lofty goals.
Thoughtful use of program templates will increase development speed and improve code accuracy. If adopted as standards, templates will reduce the maintenance burden and provide a common technique language amoung the developers. Here are some that I use continously.
Remember that templates must be used thoughtfully. Templates cannot cover all problems. Rigid, authoritarian use will yield no benefits. There must be room for individual talent and initiative.
Should go without saying but it ain't always so in AS/400 land. With ILE, there is no longer an excuse.
Return to Page One