University of Leicester

CO7206: Quiz #3 (8%)

Dec 12th, 2003


Solve the following three questions.


Duration is 55 min.


1.       Reengineering Management: (2%)

XYZ Ltd. is a leading company in paper industry. They have developed their own ERP* system and have been running it successfully for years. The system is written in RPG and runs on an IBM AS/400 and uses a DB2 database. After the initial development and deployment of the system, the management moved 4 of the development team members to other tasks, leaving 1 full time and 1 part time staff to maintain the system. Due to fierce competition, XYZ decided to do a major business process reengineering (BPR) effort to cut costs and increase productivity. This would require some key changes to the business processes of the company. Consequently, a major change is needed in the supporting IT environment, especially the ERP system. The company formed an IT committee to study the available options; whether to buy a ready-made ERP system or reengineer the existing one. In order to implement the BRP plan on time, the top management asked the committee to finish the report in 1 month. Then the chosen solution will be implemented over the subsequent 6 months. This will be done by a project team of the current system 1.5 maintainers, plus an external expert that will be hired on a 6 months contract.


The IT committee needs to evaluate the costs, risks and practical issues involved in both options. This includes evaluating the current status of the exiting system and its evolution history. The system was maintained over the last period of time by a number of different IT staff. Maintenance records and document upgrades were done if time permitted; otherwise priority was given to implement the change requests.


As an expert on reengineering, what are the potential risks in this case that you would inform the management of, if you were asked for advice?


*Enterprise Resource Planning (ERP) - An information system or process integrating all manufacturing and related applications for an entire enterprise. ERP systems permit organizations to manage resources across the enterprise and completely integrate manufacturing systems.


Clone Detection: In this figure (from Semantic Designs Inc.), the horizontal axis represents the release number and the vertical axis represents the % of duplicated code. The four series represent the four software subsystems of one single large system that had four releases over a period of three years. Discuss why the % of clones exhibits the trend represented by this figure. (2%)


2.       TXL: Write a TXL program that does the following: (4%)


          Given this Matrix Grammar


define matrix

[list vector] | [vector] ', [matrix]

end define


define vector

[NL][repeat number]

end define


define program

[matrix] + [NL] [matrix] | [matrix]

end define


          Write a program for matrix addition that takes this input


1 2 3,

4 5 6


1 2 3,

4 5 6


and produces this output


2 4 6,

8 10 12


          Assume that a function called addVec exists. This function adds two vectors and returns the result vector.

          So, basically you need to write:

          The rule that implement the matrix addition

          Any additional rules or changes to the grammar that are needed to support this.


          A working program that compiles and runs is not necessary, but you can use TXL to verify your ideas if you like. But please add comments, explanations, etc. to help me understand your program.