CSCI 365 Assignment 1 Due: Jan 31 (10 am) An Introduction to Software Architecture (David Garlan and Mary Shaw) http://malun1.mala.bc.ca/~pwalsh/teaching/365/pex1/intro_softarch.ps cew: A C++ Component Exerciser Workbench http://malun1.mala.bc.ca/~pwalsh/teaching/365/pex1/cew.ps In the Benefits of Integrating Systematic Verification into CS1 and CS2 http://malun1.mala.bc.ca/~pwalsh/teaching/365/pex1/spokane99.ps cew source and example scripts http://malun1.mala.bc.ca/~pwalsh/teaching/365/pex1/IntSet.tar With reference to the above links: Read the paper on cew. Follow the instructions in section 6 to get your version of cew and IntSet. Your task is as follows: 1. Modify the system such that one or more cew test cases can exist on a line within the source script. 2. Modify the system such that code-bloat is reduced. Bonus marks will be awarded to the team that reduces code-bloat the most and still passes the regression tests (provided that it is close to the reduction achieved by the instructor's solution). Note, your solution will be run on two large scripts. I will provide you with one of the large scripts next week. Your code-bloat reduction will be average of the two reductions. 3. Provide documents detailing cew's software architecture (see the link above to the Garlan and Shaw paper). Deliverables: 1. Your software architecture document(s): In class, submit a typed hard-copy of your document set. Make sure you at least address the following (both in terms of the existing cew system and the new modified cew system): ABC Model Business Plan Schedule/Timelines Risk Functional Specification Module/Component Guide Data Flow/Control Flow Diagram Uses Structure Verification Strategy Design Rationale Quality Attributes/Scenarios 2. Your system: Submit your modified system electronically. With IntSet.cew in the current directory, issue the following commands: tar cvf IntSet.tar IntSet.cew /usr/users/faculty/csci365/bin/submit IntSet.tar Note, the submit infastructure has not been set up yet. When it is, I will notify you through the BB. Make sure the names of the team members are on all the deliverables. This exercise is to be completed by each team. Submit only one implementation; if you send more than one, we will discard all but the last one. Your exercise solution must be received before the due date and time. All other methods of submission will not be accepted. You will receive no credit for a programming exercise submission that fails to adhere to this convention. Since this is a team exercise, the instructor reserves the right to question team members on the material contained in exercise deliverables.