Model Clash - Platform and Compatibility | Software Engineering | CSCI 577A, Assignments of Software Engineering

Material Type: Assignment; Class: Software Engineering; Subject: Computer Science; University: University of Southern California; Term: Fall 2008;

Typology: Assignments

Pre 2010

Uploaded on 02/24/2010

koofers-user-mg4-1
koofers-user-mg4-1 🇺🇸

5

(1)

10 documents

1 / 2

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
CS577AFall2008
Homework#1‐ModelClash
DueWednesdaySeptember3,2007,11:59pm(40points);SubmitOnlineThruDEN(www.uscden.net)
IfnoDENaccount,submitprintoutatSAL329
ContactPerson–DENdiscussionboard
Reading:
EP2IntroductiontoMBASE‐Sections13
http://greenbay.usc.edu/csci577/fall2008/site/coursenotes/ep/index.html
Instruction:
Thefollowingcasecontainstheprojectproposal,submittedbytheclient,foraCS577projectfromafewyearsago.Thetitleofthe
projectwas“CaliforniaScienceCenter‐VolunteerTrackingSystemSpecifications”or“CSCVTS”forshort.Readthedescriptionof
CSCVTSandanswerthequestions.
ProjectDescription
PlatformandCompatibility
OurcurrentserverplatformisApacheonUnix/Linux,withMySQLdatabasesandPHPforserversidescripting.Weforeseeseveral
changestoourinternaldatabasesinthefuture,soadegreeofdatabaseabstractionishighlydesirable.Compliancewithweb
standardsisamust.Theapplicationshouldbecrossplatform/crossbrowsercompatible.
InterfaceDesign
Thissystemmustfitwithinourexistingintranettemplate.Anymodificationsoradditionstoestablishedinterfaceelementsmustbe
coordinatedwiththeCSCWebDesigner.Peoplewithlimitedtechnicalprowesswillusethisapplication;sointuitivedesignand
usabilityiskey.Inordertoimprovetheuserexperience,weexpecttouseAJAXtechnologywithintheGUI.
Authentication
ThisapplicationmustusethestandardauthenticationmechanismfortheScienceCenter’sintranet.TheCSCWebEngineercan
provideallnecessaryspecificationsandPHPincludefilestohandlethisauthentication.
ApplyOnline
Thepublicmustbeabletocompleteanonlineapplicationformonourwebsite.
PersonalInformation
Everyvolunteershouldhaveapersonalprofileinthesystemincluding:
Name
Address
PhoneNumbers
VolunteerType(Adult,Youth,College,Hughes,Senior,SpecialEvent,etc…)
DateofBirth
Gender
Status(Active,Resigned,Pending)andDateofStatus
Workhistory,includingstartdate,datesandhoursworkedinwhichareas(Administrative,GuestServices,Education
Presenter,ExploraStore,etc…),totalcareerhoursandyeartodatehours(JuneJuly)
Awardhistory
EmergencyContactInformation
Commentlog
Profilesshouldbegeneratedbytheonlineapplicationprocess.Managersmusthavetheabilitytocreateandeditvolunteerprofiles.
TimeTracking
Thereshouldbeaspecialfrontendtotheapplicationforvolunteerstouseforcheckinginandoutwhentheycometowork.When
checkingin,volunteersshouldalsobeabletoaccessanymessagesleftforthembytheVolunteerCoordinator,includingtheir
currentassignment.Thesystemshouldautomaticallytracktheworktimeofeveryvolunteer,butmanagersmustbeabletooverride
thesystemandmakecorrections/additionsasneeded.
Awards
Volunteersreceiveawardsbasedonthetotalnumberofhourstheyhaveworked.Thesystemmusttracktheawardhistoryforeach
volunteerandautomaticallynotifymanagerswhenanawardisdue.
pf2

Partial preview of the text

Download Model Clash - Platform and Compatibility | Software Engineering | CSCI 577A and more Assignments Software Engineering in PDF only on Docsity!

CS577A Fall 2008

Homework #1 ‐ Model Clash

Due Wednesday September 3, 2007, 11:59 pm (40 points); Submit Online Thru DEN (www.uscden.net) If no DEN account, submit printout at SAL 329 Contact Person –DEN discussion board Reading: EP‐ 2 Introduction to MBASE ‐ Sections 1 ‐ 3 http://greenbay.usc.edu/csci577/fall2008/site/coursenotes/ep/index.html Instruction: The following case contains the project proposal, submitted by the client, for a CS577 project from a few years ago. The title of the project was “California Science Center ‐ Volunteer Tracking System Specifications” or “CSC‐VTS” for short. Read the description of CSC‐VTS and answer the questions. Project Description Platform and Compatibility Our current server platform is Apache on Unix/Linux, with MySQL databases and PHP for server side scripting. We foresee several changes to our internal databases in the future, so a degree of database abstraction is highly desirable. Compliance with web standards is a must. The application should be cross‐platform/cross‐browser compatible. Interface Design This system must fit within our existing intranet template. Any modifications or additions to established interface elements must be coordinated with the CSC Web Designer. People with limited technical prowess will use this application; so intuitive design and usability is key. In order to improve the user experience, we expect to use AJAX technology within the GUI. Authentication This application must use the standard authentication mechanism for the Science Center’s intranet. The CSC Web Engineer can provide all necessary specifications and PHP include files to handle this authentication. Apply Online The public must be able to complete an online application form on our website. Personal Information Every volunteer should have a personal profile in the system including:

  • Name
  • Address
  • Phone Numbers
  • Volunteer Type (Adult, Youth, College, Hughes, Senior, Special Event, etc…)
  • Date of Birth
  • Gender
  • Status (Active, Resigned, Pending) and Date of Status
  • Work history, including start date, dates and hours worked in which areas (Administrative, Guest Services, Education Presenter, ExploraStore, etc…), total career hours and year‐to‐date hours (June – July)
  • Award history
  • Emergency Contact Information
  • Comment log Profiles should be generated by the online application process. Managers must have the ability to create and edit volunteer profiles. Time Tracking There should be a special front‐end to the application for volunteers to use for checking in and out when they come to work. When checking in, volunteers should also be able to access any messages left for them by the Volunteer Coordinator, including their current assignment. The system should automatically track the work time of every volunteer, but managers must be able to override the system and make corrections/additions as needed. Awards Volunteers receive awards based on the total number of hours they have worked. The system must track the award history for each volunteer and automatically notify managers when an award is due.

Comment Log Every volunteer should have an associated comment log, where managers can submit comments about that individual. Each comment must be time stamped and indicate who posted it. At the managers’ discretion, some comments can be marked as public. Public comments will be seen by the volunteer in a message window when he or she checks in and can optionally be emailed to that volunteer. Scheduling Tools We require an assortment of tools to help the Volunteer Coordinator assess departmental needs in relation to volunteer availability and capabilities, and schedule volunteers accordingly. Reporting Managers must be able to generate a variety of reports analyzing statistical information about the volunteers. The system should be able to export these reports as PDF documents for printing and email distribution. Solutions to Evaluate There are many open source software solutions available with some of the functionalities we require. The students should determine if any of these would be an appropriate base for our application and propose how we can add additional needed functionality. We would also like to evaluate the use of multiple modules from the PEAR project (http://pear.php.net/), including, but not limited to:

  • MDB2 for database abstraction
  • Mail and Mail_Queue for queuing and sending emails
  • Event_Dispatcher to handle event notifications like those needed for the edition checkout process.
  • There are a wide variety of other PEAR classes that handle HTML formatting, form processing, validation, etc… that might be useful. In addition to evaluating specific existing PEAR modules, we would like to consider the benefits of following the PEAR coding standards for all custom classes, so they can be implemented with the PEAR installer and take advantage of other PEAR features. Exercise
  • Describe
  • a possible clash of success models between two key stakeholders
  • a possible clash of product models between two key stakeholders
  • a possible clash of process models between two key stakeholders
  • a possible clash of property models between two key stakeholders
  • In each case:
  • identify the key stakeholders involved in the model clash
  • each stakeholder’s model
  • Why/how the models clash
  • Note that the model clashes you describe needn’t be ones that actually occurred during the course of the CSC‐VTS project; they must, however, be related to what you know about the project, rather than generic. (Feel free to use your imagination to fill in additional, plausible, project details, and state them explicitly.) Hints
  • The project description does not mention that finally the CSC‐VTS has to integrate with another two projects: CSC‐ Newsletter system and CSC‐Event RSVP System
  • The project description does not mention that all three projects have to share the same database
  • The project description is vague about what key stakeholders there might be other than the client and the developers
  • The development team (students) has no experience with PEAR project.
  • There is only one student, which is an off‐campus student, in the development team that has an experience in integrating software modules.
  • The scope of the project seems too big for 24 weeks development in Fall and Spring semester.
  • Use the above hints, and your imagination, to come up with plausible model clashes and, possibly, plausible additional key stakeholders
  • You will get little or no credit if the model clashes are generic and/or simply copied from the readings rather than being directly related to the CSC‐VTS project and plausible in that context