Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
New Vision Concept School Portal Phase II MSE Project Sindhu Thotakura Committee Members Dr. Mitchell Neilsen(Major Professor) Dr. Gurdip Singh Dr. Daniel Andresen. Elaboration Phase Second phase in the software development cycle. develop an architectural design for the project. Outline Action Items Architectural Design Formal Requirement Specification Test Plan Formal Technical Inspection Prototype Demo Phase Deliverables Vision Document 2.0 Project Plan 2.0 Architectural Design Test Plan Formal Requirement Specification Formal Technical Inspection Letters Architecture Prototype Action Items Dreamweaver and FrontPage Removed the register privileges Added few requirements to User Interface Technologies used Client Side ASPX: ASP components are used in client side to display all the controls HTML and CSS: CSS template is used for styling and HTML is used in combination with CSS JavaScript: few features were developed using JavaScript Dreamweaver and Microsoft Front Page: used for developing most of the pages as it would be easy to edit in future. Server Side C#: All the server side code is written in C#, which connects to the database Database SQL Server 2008: used to store all the information IDE Microsoft Visual Studio 2010 ASP.net Reduces amount of code. Safe and secure with built-in windows authentication better performance-early binding, just-in-time compilation, native optimization, and caching services rich toolbox and designer-drag and drop, automatic deployment Provide simplicity- easy to perform common tasks. ASP.NET pages are easy to maintain and write as source code and html are together. Server side technology- Therefore ASP.NET code executes on the server before it is sent to the browser. language-independent-it allows you to choose one language or partition your application across many languages. Built in security through the Windows server or through other authentication/authorization methods Applications are faster and can accommodate more number of users. SQL Server 2008 Scalability Reliable – Performance Studio Security – Encrypt the entire database Fewer Database vulnerabilities Can easily be Integrated with ASP.Net Support backup Compatibility GUI for managing databases Microsoft Visual Studio 2010 It reduces clutter and complexity. Supports multiple document windows and floating tool windows. SQL Sever 2008 is integrated with Visual Studio 2010. 3-Tier Architecture Presentation Layer acquire data from the user and render data to the user. manage the visual layouts, styles and general appearance of the application. Takes the input from user using appropriate controls such as text boxes Manage control flow Business Logic Layer separates the business logic from other modules withstand modifications or replacements of the other two tiers could be rewritten to retrieve data from a different database, without affecting any of the business logic Data Access Layer interacts with persistent data usually stored in a database or in permanent storage. Business logic methods are mapped to the data access layer. Advantages All business logic can be defined once within the business layer and then shared by any number of components within the presentation layer. Any changes to business rules can therefore be made in one place and be instantly available throughout the whole application. Fewer JavaScript, thus simpler to the client Superior performance for medium to high volume environments Disadvantages More complex structure More difficult to setup and maintain The physical separation of application servers containing business logic functions and database servers containing databases may moderately affect performance Web Forms User Interface (UI) elements that give your Web applications their look and feel. Web Forms are made up of two components: ◦ the visual portion (the ASPX file) ◦ code behind the form, which resides in a separate class file. User Controls .ascx pages which are reusable components, are independent of parent page. user controls are easy to add to any web page once you created combine the other controls to create user controls. Convert whole pages into user control with minor modifications Speeds up the development processdevelopment is modularized which means you have different functionalities available by using just a simple tag in your web page. Tables List of Tables Student_Login HomeWorks Results Schedule BalanceDue Stored Procedures Atomicity- either all of the SQL statements in a stored procedure will execute, or none will Speed: ◦ run entirely on the database server(no need to pass sql code over network) ◦ Are compiled when created.(unlike in line queries). ◦ storing execution information is time saver, especially if the stored procedure is called many times. Process Control ◦ advantage of control flow statements such as IF...ELSE, for etc ◦ handle some quite complex logical operations from within SQL code. ◦ Without stored procedures, we'd need to create an object in the data layer to handle looping Reduce Network Traffic ◦ enables a client application to pass control to a stored procedure on the database server ◦ Enables intermediate processing on the database server ◦ processes large amounts of data using stored procedures returns only the data that is needed by the client Modularization ◦ writing reusable code units ◦ maximizing team talents ◦ easier maintenance- reuse existing stored procedures List of Stored Procedures usp_update usp_update_results How is Performance handled? Reduced html content Used Stored Procedures User Controls Caching using Sessions Caching Separate volatile data from non volatile data ◦ Designed usercontrols that encapsulates static content and keep them separate from non volatile data. This allows you to cache that decreases load on your server. Evaluate frequency of use: - Sessions ◦ Caching data or output that is frequently used. User specific data is specifically stored in database Implemented Page Output Caching - ◦ keeps a copy of the HTML that was sent in response to a request in memory @OutputCache To implement page cache <%@ OutputCache Duration="60" VaryByParam="*" %> Stored Procedures contribution in Performance Reduced Network traffic ◦ Performs immediate processing on the database server without transmitting unnecessary data. Tunable: ◦ source code modification can be eliminated. Reusability also improves performance Stored procedures improve security Stored Procedures ◦ By including database privileges with stored procedures that use static SQL, the database administrator (DBA) can improve security Security is also improved by Authentication for users Class Diagram Sequence Diagram Flow diagram of website Jakob Neilsen’s Rules ◦ Facilitates scanning ◦ Placing Logo on every page ◦ Placing Home Link all through the site ◦ Do the same as everybody else ◦ Writing simple headlines ◦ Update the users with ongoing information ◦ Using user’s language not system oriented terms ◦ Providing proper error messages ◦ Proper navigation Formal Specification Use 2.4.0 All classes are specified with the necessary attributes and operations. Associations Constraints --- Every Student should have unique user name context Student inv uniqueUserid: Student.allInstances -> forAll(s1, s2|s1<>s2 implies s1.userid <> s2.userid) --- Every Teacher should have unique user name context Teacher inv uniqueUserid: Teacher.allInstances -> forAll(t1, t2|t1<>t2 implies t1.userid <> t2.userid) --- There are only 6 subjects context Subject inv sixSubjects : Subject.allInstances -> size=6 Formal Inspection Checklist Do the symbols used in class diagram conform to UML 2.0? Do the symbols used in sequence diagram conform to UML 2.0? All the classes represented in the class diagram are described in the Architecture Document or not? All the classes in OCL model are represented in the class diagram or not? All the attributes, multiplicities in the OCL model have been depicted in the class diagram or not? Are the sequence diagrams unambiguous and understandable? The attributes in the USE model are consistent with the attributes of the corresponding class diagrams or not? All the requirements in the Software requirements specification have been covered in the Architecture Design Document or not? Test Plan ◦ Functional Testing ◦ Usability Testing ◦ Compatibility Testing ◦ Performance Testing ◦ Testing Tools Requirements to be tested SR1 – The user can view only one page at a time in the website. SR2 – The user can register only if the user is either staff or a student who is studying 8th, 9th or 10th class. SR3 – The users can send the feedback. SR4 – The users should be able to contact the management using the contact form. Students SR5 – The student can view the individual results obtained during exams which are posted by teacher. SR6 – The student can view the class results which are posted by teacher. SR7 – The student can view the Balance Due. SR8 – The student can view the Class Schedule. SR9 – The student can view the Homework posted by the teachers. SR10 – The student can view the Comments posted by the teachers. Teachers SR11 – The teacher can update the results of the students. SR12 – The teacher can write the comments about the students. SR13 – The teacher can add or delete a student from the class. SR14 – The teacher can post the Homework. SR15 – The teacher can write the comments about the students. SR16 – Appropriate graphs should be shown for the information. Test Deliverables Test design specification Test case specification Test procedure Test Log Test summary report To be done Logout button Link to Homepage Demo Questions/Comments???