Edge Presentation Ppt


Published on

1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Removed some of the unused and redundant controls. Re-used the popup form to confirm and edit name and email.
  • Cleaned up the little used controls and moved the edit portion on the screen to be a popup form.
  • Tab entry of answersManually enter correct answer by drop downQuestion layout more similar to test.
  • Question layout more similar to test.
  • Edge Presentation Ppt

    1. 1. The Edge<br />Brenda Dean, Cormac Sharpe, John Elmer, ShwethaKunamalla, Moussa Doumbouya, Sean Keith<br />
    2. 2. Team Name<br />Stuck in the middle<br />Suggestion<br />
    3. 3. Roles - Leadership<br />Brenda<br />Project Lead<br />Moussa <br />Architecture<br />Cormac<br />Standards<br />Presentation Layer Contributor<br />
    4. 4. Roles - Individual<br />Database<br />Brenda<br />Business Layer and Data Access Layer<br />Moussa, Sean<br />Presentation Layer<br />John, Shwetha, Cormac, Brenda<br />Tester<br />John<br />
    5. 5. The Edge Testing Application<br />The objective of this assignment is to create a windows based application for creating the test that will link to a web based application that will allow participants to respond with the answers to the test.<br />
    6. 6. Design Requirements<br />Use a multi-tiered programming approach when designing the application.<br />Produce a user interface that is intuitive and requires minimal training for the user. <br />Employ Framework 2.0, ADO.NET 2.0, ASP.NET 2.0, and SQL Server 2005 technologies.<br />Create stored procedures for the required functionality.<br />
    7. 7. Functional Requirements<br />Login Page<br />Add Test Taker<br />Edit Test Taker<br />Send Test<br />Open Tests Incidents<br />Question<br />Tests<br />Topics<br />
    8. 8. General Architecture of the application<br />Presented by Moussa Doumbouya<br />
    9. 9. Architectural objectives<br />Highly cohesive tiers<br />Loose coupling between tiers<br />Extensibility<br />Maintainability<br />Promote collaboration between developers<br />Pluggable tiers<br />
    10. 10. Assemblies and dependencies<br />WinClient<br />BLInterface<br />BLImplementation<br />DALInterface<br />DALImplementation<br />Assembly Reference<br />Dynamic loading. (Reflection)<br />
    11. 11. Classes relationship<br />Form1<br />ITestBL<br />TestBL<br />ITestDAL<br />TestDAL<br />Implements (Inherits)<br />Uses<br />
    12. 12. Dynamic loading configuration<br />
    13. 13. Dynamically Loading the tiers<br />BLTool<br />Loads the business layer<br />Holds the instance through a weak reference<br />DALTool<br />Loads the data access layer<br />Holds the instance through a weak reference<br />
    14. 14. Example. Loading the Business layer<br />
    15. 15. Plug in a new BL or DAL<br />Write a class that implements ITestDAL or ITestBL in a new assembly<br />Copy the assembly in the application folder<br />Update the configuration file<br />Start the application<br />
    16. 16. Business / Data access layer Overview<br />Sean Keith<br />
    17. 17. Business Layer Class Diagram<br />
    18. 18. Data Access Layer Class Diagram<br />
    19. 19. Entities Class Diagram<br />
    20. 20. TestEmailTemplate XML File<br />
    21. 21. Error handling in the DAL<br />
    22. 22. Error handling in the BL<br />
    23. 23. Error Logging Method<br />
    24. 24. ErrorCodeEnum<br />
    25. 25. EdgeTestException Class<br />
    26. 26. User Interface architecture & Standards<br />Cormac Sharpe<br />
    27. 27. The User Interface - Login<br />
    28. 28. The User Interface<br />
    29. 29. The User Interface<br />The Edge Test Application User Interface is implemented as an MDI parent form with its MDI children forms corresponding to the Application’s main functional areas.<br />This architecture ensures a common interface for all of the Applications functions.<br />Only 1 instance of a single child form can be open at any one time.<br />
    30. 30. Standards<br />Standards for the project were implemented at a number of levels:<br />User Interface Standards<br />Coding Standards<br />Use of the document “Coding Standards and Conventions”<br />Standardized Indentation<br />Standardized Exception Handling<br />A Standards document was developed and circulated to coordinate the various standards for the project group.<br />
    31. 31. Standards - User Interface <br />User Interface Standards were implemented in a number of ways:<br />All MDI Child forms (i.e. functional screens) inherited from a single TemplateForm.cs which standardized (among other things):<br />A Title Label, and a Status Bar & Status Label with a standard position, font, size & color. <br />Properties to allow inheriting forms to easily set the Title & Status in a consistent way.<br />The group’s Standards document codified a number of formatting standards that could not easily be implemented through templates.<br />
    32. 32. Standards – Exception Handler<br />An ExceptionHandler class was developed that simplifies and standardizes exception handling for the group.<br />It receives an exception as a generic System.Exception & determines its type (EdgeTestException for example).<br />
    33. 33. ExceptionHandler Class Properties<br />ErrorMessage_UserFriendly<br />A simple Exception Message to be displayed to the User.<br />ErrorMessage_FullVersion<br />A verbose Exception Message giving all available information. This will include an Inner Exception message, if any.<br />ExceptionType<br />EdgeTestException<br />ArgumentOutOfRangeException<br />ArgumentNullException<br />ArgumentException<br />UnSpecifiedException (any exception other than above)<br />ErrorCode<br />Returns ErrorCode for EdgeTestExceptions.<br />ErrorCode = UnSpecified for Exceptions other than type EdgeTestException. <br />Exception (Returns the Exception as a generic System.Exception)<br />InnerException (null if none)<br />
    34. 34. Test Application Functional Screens<br />
    35. 35. Manage Topics<br />
    36. 36. Add test takerAnd Edit test taker<br />Add Test Taker – Allows the admin to add applicants to the online test database<br />Edit Test Taker – Allows the admin to edit or remove a test taker from the online test database<br />
    37. 37. Add Test Taker<br />Old Screen<br />New Screen<br />
    38. 38. Edit Test Taker<br />Old Screen<br />New Screen<br />
    39. 39. Defining Questions<br />Brenda Dean<br />
    40. 40. Questions <br />Old Screen<br />New Screen<br />
    41. 41. Manage Tests<br />UI Contributed by<br />Shwetha<br />
    42. 42. Manage Tests<br />Manages Tests <br />Allows user to edit Questions in a selected Test<br />Adds Questions from a selected a Topic<br />Deletes Questions from a selected Test<br />Adds a new Test<br />Deletes an existing Test<br />
    43. 43. Manage Tests<br />New Screen<br />Old screen<br />
    44. 44. Send Test<br />Lists the available Tests for the user to select <br />Sets time limit for the Test<br />Lists the test takers when a session is selected<br />Sends a Test Incident to the selected test takers<br />
    45. 45. Send Test<br />New screen<br />Old screen<br />
    46. 46. Open Tests<br />Old Screen<br />New Screen<br />