New Vision Concept School Portal Phase II MSE Project Sindhu Thotakura Committee Members Dr....

Preview:

Citation preview

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 PhaseSecond phase in the software

development cycle.develop an architectural design

for the project.

OutlineAction ItemsArchitectural DesignFormal Requirement SpecificationTest PlanFormal Technical InspectionPrototype Demo

Phase DeliverablesVision Document 2.0Project Plan 2.0Architectural DesignTest PlanFormal Requirement SpecificationFormal Technical Inspection

LettersArchitecture Prototype

Action Items

Dreamweaver and FrontPageRemoved the register privilegesAdded few requirements to User

Interface

Technologies usedClient SideASPX: ASP components are used in

client side to display all the controlsHTML 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 SideC#: All the server side code is

written in C#, which connects to the database

DatabaseSQL Server 2008: used to store

all the informationIDEMicrosoft Visual Studio 2010

ASP.netReduces amount of code.Safe and secure with built-in windows

authenticationbetter 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 2008ScalabilityReliable – Performance StudioSecurity – Encrypt the entire databaseFewer Database vulnerabilitiesCan easily be Integrated with ASP.NetSupport backupCompatibilityGUI for managing databases

Microsoft Visual Studio 2010It 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 Layeracquire 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 Layerseparates 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 Layerinteracts with persistent data usually

stored in a database or in permanent storage.

Business logic methods are mapped to the data access layer.

AdvantagesAll 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 

DisadvantagesMore complex structureMore 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 FormsUser 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 createdcombine the other controls to create user controls.Convert whole pages into user control with minor

modificationsSpeeds up the development process- development

is modularized which means you have different functionalities available by using just a simple tag in your web page.

Tables

List of TablesStudent_LoginHomeWorksResultsScheduleBalanceDue

Stored ProceduresAtomicity- either all of the SQL statements in a stored procedure will

execute, or none willSpeed:

◦ 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 Proceduresusp_updateusp_update_results

How is Performance handled?Reduced html contentUsed Stored ProceduresUser ControlsCaching using Sessions

CachingSeparate 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 databaseImplemented Page Output Caching -  

◦ keeps a copy of the HTML that was sent in response to a request in memory

@OutputCacheTo implement page cache

<%@ OutputCache Duration="60" VaryByParam="*" %>

Stored Procedures contribution in PerformanceReduced 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 securityStored 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 SpecificationUse 2.4.0All classes are specified with the

necessary attributes and operations.

AssociationsConstraints

--- Every Student should have unique user namecontext Studentinv uniqueUserid:Student.allInstances -> forAll(s1, s2|s1<>s2 implies s1.userid <> s2.userid) 

--- Every Teacher should have unique user namecontext Teacherinv uniqueUserid:Teacher.allInstances -> forAll(t1, t2|t1<>t2 implies t1.userid <> t2.userid)

--- There are only 6 subjectscontext Subjectinv 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 DeliverablesTest design specificationTest case specificationTest procedureTest LogTest summary report

To be doneLogout buttonLink to Homepage

Demo

Questions/Comments???

Recommended