Friday, 2 December 2011

Refactor Code

Remove all blank lines ^:b*$\n

Find what” window you can use these regular expressions:
If you want to: 
Remove regions     {[#]<region[^]*}|{[#]<endregion[^]*}
Remove comments     [^]*//[^]*
Remove XML comments     [^]*///[^]*
Remove empty lines     {^:Wh}{$:Wh}

Other Blogs

http://praveenbattula.blogspot.com

http://subhashnetworld.blogspot.com/search/label/Interivew%20Experinces%20On%20Dotnet

http://www.sharetermpapers.com/software-engineering/dfd-of-student-information-management-system/

http://www.devcurry.com/search/label/jQuery

http://www.sqlservercurry.com/

http://www.dotnetcurry.com/

http://mashable.com/2007/08/30/google-calendar/

http://www.visual-paradigm.com/product/?favor=vpuml

Asp.Net Design Patterns Image


Sunday, 27 November 2011

Student Information System: Vision and Scope

Student Information System: Vision and Scope

Project Vision
The vision for the Student Information System Project is to provide state-of-the-art software for managing student academic and financial records. The system will provide Case Western Reserve University campus members the tools to create, maintain and report on student data in an efficient and convenient manner. Upon completion of the project, the system will improve the quality of the academic experience for students, faculty and staff. PeopleSoft SIS will be the single, integrated, authoritative source for student-related data.

Our vision is to create an environment that:
  • Eliminates the reliance on Social Security Number as the primary student identifier
  • Migrates all student data from the unsupported legacy mainframe environment to the enterprise Oracle database
  • Enables a stable, reliable and convenient self-service registration environment (replacing SOLAR)
  • Provides more timely (real time), convenient (24/7) and flexible self-service options to students, faculty and staff
  • Provides the opportunity to improve on current business processes
  • Is conducive to managing and maintaining changes to academic and/or regulatory policies
  • Improves communication by sharing consistent information within and across functional areas of the University
  • Does not limit the academic vision of the university
Project Scope
A clear scope is important to any project because it defines those areas that will be addressed by the project as well as those areas that will not be included in the project.
Scope management will be a critical task during the project in order to ensure an on-time and on-budget implementation. Any changes in the defined scope of this project could potentially cause an increase in cost and extension of the project timeline.
If changes are identified, the Decision Support Policy will be followed. An analysis of the impact of the change will be made by the project team and recommendations will be made concerning if and how the change will be accommodated.
Definition of Project Scope
The scope of the student information system implementation project is to evaluate the current business processes through fit/gap analysis and install a new student information system to meet the needs of all Undergraduate, Graduate and Professional Programs at Case. It also encompasses interfaces to and from the current Financial Aid and Admissions systems which are not in scope.
The Fit/Gap Analysis phase will build a working prototype of the student information system and identify any gaps in service or functionality. The objective is to develop and define specific strategies for addressing these gaps in Student Records, Student Financials and Campus Community IDP sessions. The decisions made in these sessions will determine the full scope of the project.
Back to Top
Additional Outcomes of the Prototype
  1. Evaluate pros and cons of implementing the most current release of the software.
  2. Evaluate pros and cons of implementing Academic Advising versus interfacing to DARS.
  3. Determine which parts of Admissions need to come back into scope because they are currently in ISIS.
  4. Evaluate pros and cons of running in a shared database with Human Resources (HCM).
  5. Evaluate pros and cons in implementing SEVIS processing versus interfacing to FSA/Atlas.
  6. Understand how the Medical School processes work in the new student information system.
  7. Promote learning, knowledge transfer and system ownership.
  8. Identify and implement reporting needs through the Enterprise Data Warehouse.
  9. Identify the scope of modifications required for interfaces.
  10. Implement self-service modules that would be available through the MyCase portal.
  11. Decisions related to interfaces will take into consideration the potential future implementations of Academic Advising, Admissions, and Financial Aid

DFD

A data flow diagram (DFD) is a design tool to represent the flow of data through an information system.
A "context level" DFD can be used to show the interaction between a system and outside entities; it can also show the internal data flows within a system. This version is also called a context diagram. It often shows the information system as a single circular shape with no details of its inner workings: what it shows is its relationships with the external entities.

Above: an example of a context diagram for Flip Flop Baker, from the 2007 SD Exam
For a diagram to be called a DFD, it needs to show the inner workings of an information system. The different levels of a DFD indicate how detailed it is, e.g. a Level 0 DFD is a broad overview of a system, showing hardly any detail within the system. A level 2 DFD explodes more summarised processes and shows another level of complexity within them. A level 3 or 4 DFD shows even more components opened up to show their inner details.
With a dataflow diagram, developers can map how a system will operate, what the system will accomplish and how the system will be implemented. It's important to have a clear idea of where and how data is processed in a system to avoid double-handling and bottlenecks. A DFD also helps management organise and prioritise data handling procedures and staffing requirements.
A DFD lets a system analyst study how existing systems work, locate possible areas prone to failure, track faulty procedures and reorganise components to achieve better efficiency or effectiveness.
Components
A data flow diagram graphically represents:
  • processes - jobs that are done with the data. A process transforms incoming data flow into outgoing data flow.
  • data stores - files, databases, archives. They can be manual, digital or temporary.
  • external entities/terminators in a business or other system - other systems or people beyond the control of the current system. These are the places which provide the organisation with data, or have data sent to them by the organisation (e.g. customers, partners, government bodies). External entities are sources and destinations of the system's inputs and outputs.
  • connecting data flows - arrows show how data flows from one place to another. Flows that cross the system boundary are known as Input Output Descriptions. Label the arrows with the name of the data that moves through it.
(DFDs can also show resource flows, but it's better to avoid them in VCE IT - they can easily get confused with data flows.)
Here are the basic DFD shapes :

DFD shapes

 

DFD Conventions

  • Do not allow a single page of a DFD to get too complex - it should have no more than 10 components. If it has more than this, combine some components into a single self-contained unit and create a new DFD for that unit.
  • Each component and subcomponent should be numbered. e.g. a top level DFD has components 1 2 3 4 5. The subcomponent DFD of component 3 would have components 3.1, 3.2, 3.3, and 3.4; and the subsubcomponent DFD of component 3.2 would have components 3.2.1, 3.2.2, and 3.2.3. This enables a developer to plan in a top-down manner: starting with representing large concepts, and then repeatedly breaking these objects into their components.
  • All processes must have at least one data flow in and one data flow out.
  • All processes should modify the incoming data, producing new forms of outgoing data.
  • Each data store must be involved with at least one data flow.
  • Each external entity must be involved with at least one data flow.
  • A data flow must be attached to at least one process
  • Data flows cannot go directly from one external entity to another external entity: such flows need to go through at least one process.

A sample DFD from http://www.smartdraw.com

As you explore DFDs you will find two 'flavours' out there: the Yourdon and Coad style, and the Gane and Sarson
style.
They have slight differences in the way components are shaped and where their numbering goes, for example:
Gane and Sarson datastore notation
Yourdon and Coad datastore notation


A DFD EXAMPLE from the 2006 Information Systems Exam

(copyright of the VCAA - thanks to them for letting me use the material)

A company, No Blots, supplies ink cartridges for printers which are sold only through the internet. When customers place an order, the order is checked, a confirmation is sent back to the customer and the details of the orfer are sent to the warehouse. The diagram below shows the data flow diagram (DFD) for the No Blots online purchasing system. The diagram does not show the data sources and destinations.

a. In a DFD a circle represents a process. Briefly explain what is meant by a process. (1)
A process is some form of processing or data transformation which take data as input, does something to it, and provides outputs
b. In the DFD, what do the symbols labelled stock and orders represent? (1)
They are data stores, including electronic stores such as databases, and physical stores such as filing cabinets or stacks of paper.
c. Complete the context diagram below for the No Blots system. (3)
This is the completed diagram...
It seems that we need to provide an input to the warehouse from the online purchasing system (OPS). We would also need to add an external entity, the customer, and link the customer to the OPS. I'm only guessing that the warehouse must send some form of invoice or receipt or packing slip to the customer when the goods are shipped.
As a tip: I used Word's drawing tools (basic shapes, connectors) to draw the DFD. The connector arrows move around when you move connected shapes. Add text to shapes by right-clicking the shape and selecting "Add text". Add text to arrows the hard way with a text box (formatted to have no fill and no lines).

SAMPLE DFDs

http://www.smartdraw.com/examples/preview/index.aspx?example=Quiz_Software

An example from www.visualcase.com - you can download a 30 day free trial of their DFD software
"Student" box is an external entity.
Blue circles are data transformations (processing).
Arrows are data flows.
The "Student database" is a data store.

SqlServer-Faq's


What's the difference between DELETE TABLE and TRUNCATE TABLE commands?

DELETE TABLE is a logged operation, so the deletion of each row gets logged in the transaction log, which makes it slow. TRUNCATE TABLE also deletes all the rows in a table, but it will not log the deletion of each row, instead it logs the de-allocation of the data pages of the table, which makes it faster. Of course, TRUNCATE TABLE can be rolled back.
Views
The SELECT clauses in a view definition cannot include the following:
  • COMPUTE or COMPUTE BY clauses
  • An ORDER BY clause, unless there is also a TOP clause in the select list of the SELECT statement
_____________________
The ORDER BY clause is used only to determine the rows that are returned by the TOP clause in the view definition. The ORDER BY clause does not guarantee ordered results when the view is queried, unless ORDER BY is also specified in the query itself.
  • The INTO keyword
  • The OPTION clause
A reference to a temporary table or a table variable.

Useful Links

http://praveenbattula.blogspot.com

http://subhashnetworld.blogspot.com/