2. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
SAD Revision History
Date Versions Description Authors
25/03/2011 1.0 Group 11,12
01/04/2011 1.1 Group 11,12
07/04/2011 1.2 Group 11,12
Group 11, 12 Trang 2 / 16
4. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
1.Overview
Centre is a Web-based student information system. Centre/SIS has been designed to address the
most important needs of administrators, teachers, support staff, parents, students, and clerical
personnel. It also adds many components not typically found in other student information
systems. Centre boasts an intuitive interface to manage student demographic information,
perform complex scheduling, and manage student attendance, grades, and eligibility. Centre
greatly cuts down the time it takes to report to state agencies and distribute student information
to teachers, support staff, and parents.
Centre is a full-featured student information system that includes a gradebook and scheduler.
Centre is built on the open-source platforms PHP and Postgres and is scalable to school districts
of any size. It has 3 editions:
• Community edition
• Professional edition
• Enterprise edition
In order to archive purposes above, Centre/SIS system must have portal ability, easy to
implement, security, easy to plug in a new feature, and allow multiple accessing at the same time
Some key functional of Centre/SIS:
• Manages information of schools
• Manages information of students, parent like grades, eligibility, ..
• Monitor of students attendance
• Fee managements
• And it can manages others: food-service, ..
1.1Purpose
The Software Architecture Document provides a comprehensive architectural overview of
Centre/SIS 3.0.1 offered by Miller group. It presents a number of different architectural views to
depict different aspects of the system. It is intended to capture and convey the significant
architectural decisions which have been made on the system, and for understanding this project
as a whole.
1.2Scope
Because the purpose, the scope of this document is to depict the architecture of the Centre/SIS
project version 3.0.1. Describes elements, externally visible properties and relationships among
them which relate to Centre/SIS project.
1.3Definitions, Acronyms and Abbreviations
1.4Reference
Applicable references are:
i. Architecting Software Intensive Systems – A Practitioner’s Guide, Taylor & Francis
Group, 2009, Anthony J.Lattanze
Group 11, 12 Trang 4 / 16
5. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
ii. http://www.ts.mah.se/RUP/wyliecollegeexample/courseregistrationproject/artifacts/an
alysisndesign/sadoc.htm
iii. http://www.medbiq.org/std_specs/techguidelines/softwarearchitecture.pdf
iv. http://www.ts.mah.se/RUP/wyliecollegeexample/courseregistrationproject/artifacts/an
alysisndesign/sadoc.htm
2.Architecture representation
3.Architecture goals and constraints
3.1Constraints
• Small cost (especially with Community Edition), so the system should be built based
open elements, such as: java, PHP, mySQL, progess SQL,..
• System must be deployed on PHP
3.2Technical platforms
• Apache v2.2 or above
• PHP v5.2 or above
• PostgreSQL v8.1 or above
• HTML Doc 1.8.27 or above
3.3Transaction
Billing transactions: The Centre/SIS allows you to maintain student balances and payments.
From one simple-to-use program, you can assign a fee to students in any course, class, or
activity, using Centre's familiar searching interface. The system uses a credit and debit
system, so your school's accountant should feel comfortable using the program. Additionally,
parents and students can track their fees and payments online in real time.
3.4Security
CentreSIS must implement basic security behaviors:
• Authentication: Login using a user name and a password
• Authorization: as per our software specifications, web administrator will have
enhanced privileges to perform tasks that general user would not be authorized.
For internet access, the following requirements are mandatory:
• Confidentiality: sensitive data must be encrypted (credit card payments for paying
student fees online)
• Data integrity : Data sent across the network cannot be modified by a tier
Basic scenario for CentreSIS security attribute:
Source Individual or system that is correctly identified, identified
incorrectly, of unknown identity who is internal/external,
Group 11, 12 Trang 5 / 16
6. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
authorized/not authorized with access to limited resources, vast
resources
Stimulus Tries to display data, change/delete data, access system services,
reduce availability to system services
Artifact System services; data within system
Environment Either online or offline, connected or disconnected, firewalled
or open
Response
• Authenticates user;
• hides identity of the user;
• blocks access to data and/or services;
• allows access to data and/or services;
• grants or withdraws permission to access data and/or
services;
• records access/modifications or attempts to access/modify
data/services by identity;
• stores data in an unreadable format;
• recognizes an unexplainable high demand for services, and
informs a user or another system, and restricts availability
of services
Response Measure Time, effort, resources required to circumvent security measures
with probability of success; probability of detecting attack;
probability of identifying individual responsible for attack or
access/modification of data and/or services; restore data/services
3.5Persistence
Data persistence will be addressed using a relational database.
3.6Reliability/ Availability
The Reliability/Availability will be addressed through the Apache web server platform
Targeted availability is 16/7: 16 hours a day, 7 days a week
The time left (8 hours) is reserved for any maintenance activities
Any failure or crash of connection caused by internal system must be repaired after several
minutes under normal condition.
Internal or External System
Group 11, 12 Trang 6 / 16
7. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
Stimulus Fault: omission, crash…
Artifact
Environment Normal condition
Response System should detect event and do one or more of the following:
• record it
• notify appropriate parties, including the user and other
systems
• disable sources of events that cause fault or failure according
to defined rules
• be unavailable for a prespecified interval, where interval
depends on criticality of system
Response Measure Time availability is 16/7: 16 hours a day, 7 days a week
3.7Usability
CentreSIS’s users are almost students and their parents. So these kinds of user must feel
comfortable to learn the system.
Source End user
Stimulus Wants to learn system features; use system efficiently; minimize
impact of errors; adapt system; feel comfortable
Artifact System
Environment At runtime or configure time
Response System provides one or more of the following responses:
• to support "learn system features"
• to support "use system efficiently":
• to "minimize impact of errors":
• to "adapt system": customizability; internationalization
• to "feel comfortable":
display system state; work at the user's pace
Group 11, 12 Trang 7 / 16
8. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
Response Measure Task time, number of errors, number of problems solved, user
satisfaction, gain of user knowledge, ratio of successful operations to
total operations
3.8Modifiability
The developers or even end-users can modify the functionality of the CentreSIS from source
code using any php tools, modification is easy because every module, function files are located
in the corresponding folder in CentreSIS framework.
Beside this, the system administrator can edit the preference through the form the system
supplies.
Source End-user, developer, system-administrator
Stimulus Add/delete/modify functionality.
Artifact System user interface, php tools
Environment At runtime, design-time
Response Locate places in folders for modifying
Response Measure Time to modifiability: 1 day work of team
4.Use-case View
4.1Actor and Use-case view
Actors of Centre/SIS includes:
• Student: could view information about schools, schedulers, grades, food-service
• Parent, some other users: Could view information of related students, and they
could edit their profile, reset password
• Teacher: Could view information of related students and parent associate with those
students, and they could manage the grade of students, make comments, manage the
attendance of students
• Administrator: has enhanced privileges to edit, add new, or delete all information
about schools, students, parent, teachers, …
Use-cases relate with Student actors:
Group 11, 12 Trang 8 / 16
9. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
Legend:
NewPackage
Use case
View School Information View Eligibility Information
Actor
View Calendar
View food service information
student Association
Student
View Student information Setup menu daily, meal items
View Resouces of Centre/SIS
View Scheduling
projects
View Grades of related students Search
View attendance Information Print something
Use cases relate with Parent actor:
Group 11, 12 Trang 9 / 16
10. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
Legend:
Student Use case
View student information
Actor
Reset password
Association
Parent Edit general information
Generalization
Use cases relate with Teacher actor:
Group 11, 12 Trang 10 / 16
11. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
Legend:
Use case
Making periods
Student Actor
Input Grades
View parent of studens
Association
Make assignments
Generalization
Teacher Reset password
Make comments
Edit Information
Take attendence
View list of students
Enter Eligibility
Make reports
Use case relate with Administrator actor:
Group 11, 12 Trang 11 / 16
12. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
Perspective
Dynamic
Physical
Static
Add/edit/delete/copy Schools and Mixed (describe)
Manage School setup related information
Teacher Legend:
Manage students (Add, edit, Make Calendar
Use case
delete)
Actor
Manage Users (add, edit, remove)
Administrator Setup course
Manage Schedule (for studens, Association
teacher, groups)
Run schedule
Generalization
Manage Grades
Edit grades
Manage Attendence
History making periods
Manage Eligibility
Manage Food service Set up Food service
5.Logical view
Architecture Layer Dependencies
Group 11, 12 Trang 12 / 16
13. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
Each layer’s specific responsibilities are:
• The presentation layer deals with the presentation logic and the pages rendering on
Centre/SIS web site. The Presentation layer contains all the components needed to allow
interactions with an end-user. It encompasses the user interface.
• The control layer manages the access to the domain layer. Control layer contains all the
components used to access the domain layer or directly the resource layer when this is
appropriate.
• The resource layer (integration layer) is responsible for the access to the enterprise
information system (databases or other sources of information). Resource layer contains
the components needed to enable communication between the business tier and the
enterprise information systems: Postgres Database, Centre/SIS server, and other systems
(eg. Bank Systems).
• The domain layer is related to the business logic and manages the accesses to the
resource layer. The Domain layer contains all the components related to the business
logic. It gathers all the subsystems that meet the needs of a particular business domain. It
also contains the business object model which is specified in design document.
• The Common Elements layer gathers the common objects reused through all the layers
like users and assets. Common Element layer contains the components re-used within
several layers and may be determined in the future.
6.Module view
Group 11, 12 Trang 13 / 16
14. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
Perspective
School Setup
Static
Grades Scheduling
Legend:
User Module
Attendance
Student
Food Service
Use
Eligibility
Report
Module description:
School setup :enabling management of school parameters, grades, marking periods and
the roll-over of data from one school-year to the next ;
Student demographics: enabling management of students demographics, medical
information, adresses and contacts as well as advanced reports ;
Scheduling module: enabling management of courses, classes, automated scheduling of
students and teachers, creating timetables and master schedules ;
Attendance module: enabling the configuration of attendance codes, taking attendance,
managing absences, creating daily reports, trends and charts ;
grades & report cards: enabling the configuration of grading scales, pre-defined or free-
form comments, entering assignments, gradebook grades and exam results, calculating
GPA's, class ranks and honor roll as well as generating and printing fully customized
report cards that look exactly like yours today ;
eligibility module: enabling the tracking of student weekly academic performance
relates this performance to eligibility for student activities, like sports, plays, student
government;
food service module: enabling the establishment of school menus, food items and costs.
tracks free & reduced meals, collects payments, tracks expenditures, keeps student
balances ;
student billing module: enabling the billing of student fees, by course, class or activity,
and maintain account balances and online payments, by student or payer
Group 11, 12 Trang 14 / 16
15. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
7.Deployment view
Perspective
There may be
multiple There may be
Physical
Browser can Printer
Browser multiple Printers
be desktop,
laptop, cell Legend:
phone,
PDA,.. <<LAN>>
<<internet>>
CentreSIS
Server <<internet>> Bank
System Processor
There may be
<<School LAN>> multiple Bank
Systems
Device
Project Management
Connection
There may be Database
multiple database
system for
recovery, security Anchor note to item
8. Data View
Perspective
<<role>> Static
PostgresDBManager
Session ObjectStore
create() destroy(object:Object)()
join()
interminate()
Database Transaction
open() begin()
create() commit(retain int)()
createRoot(name:string, object: Object)()
close()
Group 11, 12 Trang 15 / 16
16. CENTRE/SIS Version: 1.2
Architecture Software Document Date: 07/04/2011
Class descriptions:
Session: The class that represents a database session. A session must be created in order to
access the database and any persistent data
A session is the context in which databases are created or opened, and transactions can be
executed. Only one transaction at time can exist in a session
Database: Database class represents an ObjectStore database
Before you begin creating persistent objects, you must create a database to hold the objects. In
subsequent processes, open the database to allow the process to read or modify the object.
Transaction: An ObjectStore transaction. Manages a logical unit of work. All persistent objects
must be accessed within a transaction
ObjectStore: Define system level operations that are not specific to any database
PostgressDBManager: Responsible for proving access to the persistent objects
Group 11, 12 Trang 16 / 16