1 / 49

The University of Anytown

The University of Anytown. School of Business Computing. Problem Situation. Student Retention Too many students enrol on a course then withdraw in their first year Need a software system to help solve the problem An improved school intranet. Start with a mind map (or rich picture).

ulla
Download Presentation

The University of Anytown

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The University of Anytown School of Business Computing

  2. Problem Situation • Student Retention • Too many students enrol on a course then withdraw in their first year • Need a software system to help solve the problem • An improved school intranet

  3. Start with a mind map (or rich picture)

  4. Develop a Process Map • Admissions • Pastoral Care • Timetabling • Module Delivery • Peer Tutoring • Assessment • Attendance Monitoring • Research

  5. Definition of a Pastoral Services System • A system under the control of an in-school counselling team – giving appropriate referrals to external agencies to students presenting personal problems to members of the counselling team.

  6. Root Definition for Peer-Tutoring • A system owned by the school that provides study skills support to students using volunteers from the student body with the quality of their support activities monitored by academic staff

  7. Activity Diagram for Peer-Tutoring

  8. Things that could be added to the activity diagram • Is it enough to advertise? • Should some students be made to attend? • Should we pay peer tutors? • Money? • Credits? • How should the effectiveness of the system be measured?

  9. Attendance Monitoring

  10. Related Use Cases Let’s consider this one

  11. Create Class List

  12. The information displayed here might be brought together through collaboration between objects

  13. Class Diagram showing relationships between these objects

  14. We can do two things with this class diagram • Implement it in an OOPL • Translate it into an entity model then implement the entity model as a relational database • CASE tools can help with both of these

  15. Three Very Simple Use Cases Create New Supplier Update Supplier Details Delete Supplier Let’s consider some coding issues!

  16. One “Entity” Class

  17. Three Control Classes Update Supplier Details Create New Supplier Delete Supplier

  18. One Boundary Class for all Three Use Cases

  19. One Boundary Class

  20. One Class to Talk to the Database

  21. Create New Supplier Sequence Diagram for DB Connection DBSupplier Control Class “Create Supplier” Entity Class “Supplier” Supplier Form

  22. Overview of the System Architecture

  23. Project Window for the entire application

  24. More Sophisticated Use Cases Perhaps we could ask the Customer object to: • Project future sales to this customer. This would involve analysing past sales to identify trends. Implies the need for a “Customer Sales History” class not currently included in the model. • Collect overdue payments. This would involve generating standard letters to be sent to the customer. Implies collaboration with a “Payment” class (associated with Order or Invoice?) not currently included in the model.

  25. Building the Module Maintenance Application in VB Select Add Class Module from the Project menu

  26. Use the Class Builder

  27. Click the Button to add a new class

  28. Give the Class a Decent Name

  29. Click the Button to Add an Attribute

  30. Give the Attribute a Name and Data Type

  31. Select this Button to Add an Operation

  32. Name the Operation

  33. When we Update the Project the necessary code is generated to implement the class

  34. Using a collection to implement a 1:M relationship • We might want to implement a Module class that knows the many pathways on which the module is taught • One of the attributes of this module class will be a collection of pathways!

  35. Back to the Class Builder • Assume we’ve created the classes clsModule and clsPathway • We now need to create a class that can manage a collection of pathway objects • Create this collection by clicking this button

  36. Use the Collection Builder • To name the collection • And indicate what it is a collection of..

  37. Sequence Diagram • A VB form allows us to select a Module (from a drop down list) and then see a list of the pathways the module is taught on • This involves asking a Module object to ask each of the pathways in its MyPathways collection to display their title. • In UML we document this type of collaboration in a sequence diagram

  38. We’ll see how Rational Rose can help • Generate a VB class module from a class diagram • Generate an entity model from the class diagram • Generate a database from the entity model

  39. Create a VB6 Model

  40. Add a Class

  41. Associate the Model with a VB project

  42. Generated Program Link to the Rose model

  43. Once this connection has been made… • We can.. • Update the VB project from our model • Update our model from the VB project • Round-trip engineering

  44. Now for the database..

  45. First tell Rose about the target database

  46. Set up a schema for the target database

  47. Now generate the entity model

  48. Generate the Database from the Schema

  49. Example of Generated SQL

More Related