Saturday, February 28, 2009

Semester timetable example.



The timetable is NOT usually given early, so you will have a very hard time planning. So much for project management ;-p

Wednesday, February 25, 2009

Complex Business Scenario Sample

Complex Business Scenario

Maintain Catalogue Use Case
The user clicks the ‘Item and Stock Maintenance’ menu and selects ‘Catalogue’ submenu, ‘Maintenance Catalogue’ screen will be displayed. In order to add the new catalogue item, the user clicks the ‘Add New’ button. Then, type catalogue ID, description, Bin No, Reorder level, Reorder quantity and balance in respective text fields, and choose the desired Category, Unit of Measure, Suupplier 1,2 and 3 from respective drop-down list and also checks on ‘Is Active’ check box and then click ‘Submit’ button and the new catalogue item will be displayed in the listed items below. If the user wants to edit the existing information, selects the desired CatalogueID that user wants to edit and then click the ‘Update’ icon and edit the existing information. After user finished the editing, checks on ‘Is Active’ check box then clicks ‘Submit’ button to save the changes and will be displayed in the below gridview with the updated information. If user wants to delete the specific row of data, selects the desired row’s radio button, then clicks on ‘Delete’ image button. The selected data row will be deleted and disappear from the gridview.

Test Script for ‘Maintain Catalogue’ Use Case
TestID:DT087592W Prepare by/date:06/02/2009 Tested by:/date: 06/02/2009
Test Description: ‘Maintain Catalogue’ Use Case Testing
- Integration testing
- A complex scenario with creating, updating and retrieving catalogue information. Programs Tested
Boundary Class:
maintenanceCatalogue
Control Class:
MaintenanceMgr
Entity Class:
StationeryStore DS
DB Broker
MaintenanceDB
s/n Test Step Expected Result Actual Result
Screen6: Maintenance Department
1

The process of this usecase starts when the user clicks the ‘Catalogue’ submenu from the ‘ Item and Stock Maintenance ’ menu.

On Page Load [MaintenanceCatalogue]Screen will be displayed. Catalogue ID, Description, Bin No, Reorder level, Reorder quantity and Balance text fields are clear when Category, Unit of Measure, Suupplier 1,2 and 3 drop-down lists are selected none and both textboxes and drop-down lists are non-editable. ‘Add New’ button is enabled. Maintenance Catalogue gridview is displayed.
‘Add New’ button is visible. As Expected
2 User selects on desired radio button. The catalogue data of the selected row will be displayed in the respective text box in non-editable mode.
As Expected
3 Click ‘Add New’ button All text boxes and drop-down lists will become enable. ‘Submit’ and ‘Cancel’
buttons are enable . As Expected
4 Type the desired data in respective text boxes and choose desired data from the drop-down lists, checks on ‘Is Active’ check box and then click ‘Submit’ button Add the new row in the grid view table. ‘Add New’ button will become enable again. As Expected
4 Click ‘Update’ button All text boxes and drop-down lists will become enable . ‘Submit’ and ‘Cancel’ buttons are enable also. As Expected
5 Type again the data user wants to change, checks on ‘Is Active’ check box and then click ‘Submit’ button The old existing data is edited and saved in the table.
‘Add New’ button becomes visible. As Expected
6 Click on ‘Cancel’ button Clear the data in all text boxes. ‘Add New’ button is enabled. As Expected
7 Click on ‘Delete’ image button. Remove the entire row that user deletes. As Expected

Test Data For ‘Maintain Catalogue’ Use Case
Maintenance Catalogue
Table name : Catalogue

Field Name

Record ItemCode CategoryCode Description Reorder
Level Reorder
Qty UOM
Code Bin No Balance Supplier
Code1 Supplier
Code 2 Supplier
Code 3 Active
Flag
B001 CG05 Execise book 100 50 UM03 A7 400 S02 S06 S04 True
C001 CG01 Clips Double 1" 50 30 UM01 A1 70 S01 S02 S03 True
C002 CG01 Clips Paper Small 50 30 UM01 A3 60 S01 S04 S06 True
C003 CG01 Clips Double 300 50 UM01 A7 200 S03 S02 S01 True
C004 CG01 Clips Paper Large 400 50 UM01 A7 300 S07 S01 S02 True
C005 CG01 Clips Double 2” 400 50 UM01 A7 400 S07 S01 S03 True
D001 CG02 Diskettes 3.5 inch(HD) 400 200 UM02 A2 500 S04 S05 S06 True
E001 CG03 Envelope Brown(3") 600 400 UM03 A2 900 S01 S04 S06 True
E002 CG03 Envelope White 600 400 UM03 A4 400 S04 S06 S05 True
E003 CG03 Eraser 50 20 UM03 A8 300 S02 S01 S05 True
E004 CG03 Envelope Brown 200 50 UM03 A4 300 S01 S02 S03 True
E005 CG03 EmvelopeWhite 300 400 UM03 A4 700 S04 S06 S07 True
E006 CG03 EnvelopeWhiteWindow 600 400 UM03 A4 900 S01 S05 S09 True


(For Category Combo box)
Table name : Category
Field Name

Record Description
Clip
Disk
Envelope/Eraser
Highlighter
Exercise Book(100 pg)
File Seperator/Folder
Hole Puncher
Pad Postit Memo
Paper/Pen/Pencil
Ruler
Scissors/Scotch/Stapler
Thumb/Transparency/Trays

(For UOM Combo box)
Table name : UOM

Field Name

Record Description
Dozen
Box
Each
Set
Packet

(For Supplier Combo box)
Table name : Supplier
Field Name

Record Supplier Name
ALPHA Office Suppliers
Cheap Stationer
BANES Shop
OMEGA Stationery Supplier
Beta Office Suppliers
Tiger Stationery
Theator Stationery
Snowy Shop
FriendSter
Google Stationery

Sample Internship Report

1. Objectives

Our Student Management System aims to develop the automated system of administration of students including student new recruitment, student attendance, and student examination and looking up the student profile in details and this automated system is web-based intranet system.

1.1 Business Problems

In the past, all these modules mentioned above were kept track by administrator and lecturers in manual and all the necessary data were stored in files. As a result, data may be lost and times for keeping track of these modules were consumed. Moreover, all the users cannot easily access these units and also cannot easily maintain the records of applicants and students systematically.

1.2 Project Scope

“Student Management System” covers:

 Can automate in recruiting new applicants for new batch
 Auto-generate in calculating Aptitude Test and Interview grade in advance.
 Selection of new applicants can be easily and automatically done in exact results.
 Able to calculate particular student’s attendance percentage and also able to easily generate report for overall attendance percentage of all students.
 Automatically generate the student’s grade in details and individual records can be kept in central database.
 Can easily maintain each and every applicant and student records in advance.
 In every phase, system can easily export data for back-up and can easily generate the reports for official use.


1.3 Project Impact

With the computerized system, the following improvement in process is expected:

 Communication between administrator and lecturer possible in an easy way
 Lecturer can evaluate the students simply
 Automatic calculation of examination results
 Turnaround time for creating reports would be shorten
 Easy allotment of students for SA Course


1.4 Project Goals

 Our project goal is to make the users friendly in use of the system and support the needs of current organization.
 Every manual task is already transformed into automated system and easy to use and time-saving.
 Communication between lecturers and administrators is becoming effective.
 All the error-prone conditions are reduced by this system and can get clear and exact results of data in every phase.
 All the users can have access this system from own client machine and can easily generate the reports for official use.
 Student management system is very much reliable for future enhancement and further development.

2. Project background

Our team members were commissioned to build a computerized system for XXX to build a system for Graduate Diploma in System Analysis. The computerized project is undertaken to improve the manual system. The computerized system needs to address some of the issues faced by the manual system such as

 Information stored in various places
 Long lag time to create reports
 A lot of effort spent keeping manual records up to date
 Difficult to manage the students to select aptitude test, record their mark for aptitude test, interview selection, final selection for SA
 Student attendance was marked manually
 Manual calculation was done for examination grade, cap point, total mark and required grade if the students failed to meet the minimum appoint
 Manual entering of lecturer comments

And this computerized system needs to be web-based intranet application that can be accessed by anywhere in the organization. And future maintenance and further development will be able to need to perform in this computerized system.


3. Project details

3.1 Nature of assignment domain
Our project mainly consists of five sections- Recruitment Attendance, Examination, Maintenance, Look-up details. To present in details

Student Recruitment System
This system is designated for recruiting new applicants for new batch and this system will be mainly accessed by administrator. This system includes starting from importing new applicant excel file and passing through the phases of aptitude test mark entry/selection, interview grade entry/selection, final SA Student selection, entry of matric no and nus email etc. In every step, the administrator can generate report and also can export the data out for back-up.

Student Attendance System
This system is designated for saving and tracking of the attendance of the SA students from the latest batch and this system will be mainly accessed by administrator. This system includes saving the attendance, modifying the attendance, viewing the attendance report and exporting the attendance to excel file. At the end of the semester, administrator can view the percentage of the attendance of all the SA students.

SA Maintenance System
This system is designed for adding new Lecturer, Administrator and source of information. And this system is used by SA administrators. There are also include amend and delete for lecturers, Administrators, SA applicants, SA students. Their profile details can be amended if there is any changes and can also been deleted if there is duplicate data or profile is no more needed.

Student Look-up details
This system is designated for reviewing particular student’s profile details including student’s profile, working experiences, education background, examination details. Moreover, this system is mainly used by SA lecturers and there is a module for adding new comments for particular students by lecturers. Then, lecturers can review the comments of lecturers. Finally lecturers can generate the report out for official use.

Student Examination System
This system is designed mainly for Graduate Diploma in Systems Analysis (SA).This application is mainly used by the administrator. The program mainly used to import the excel file which contains student details such as name, matric no, citizenship, education and mark for each paper. the program will calculate Grade point for each paper, overall Cap point, Required grade if the student failed to meet minimum appoint in the semester and total mark. Another phase of this application is to back up every data to excel file through exporting.

3.2 Job Responsibilities

In Student management system, there are five main sections namely student recruitment system, student attendance system, student examination system, student maintenance and student look up details. We all shared our workloads as follows:

Student Recruitment System - XXXXX

Student Attendance System - XXXXX

Student Examination System - XXXXX

Student Maintenance System - XXXX

Student Look up Details - XXXXX and XXXXX

Student Analysis - XXXXX


3.3 Software used

Being a web-based intranet application, our student management system needs such technologies and tools that we have shown as follows:

 Microsoft Visual Studio 2005
 Microsoft ASP.Net 2.0 using C#
 Internet Information Services (IIS)
 Microsoft Office 2003 ( Excel )
 Rational Rose
 Microsoft Project Plan

3.4 Project Statistics

In our Student Management System is based on 3-tier architecture and used Unified Modeling Language (UML).

Number of System Use case : 24 system use cases

Number of Screens created : 54 screens including reports

Number of tiers used : Presentation Layer
Business Layer
Data Layer
Report Layer


4. Deliverables given to organization

The following items are the necessary deliverables given to organization.
 Project Plan
 Business Use Case Model Survey
 Business Object Model Survey
 Requirement Specification( Functional Requirement )
 Requirement Specification( Non-Functional Requirement )
 UI Design
 Analysis Models
 Design Models
 Relational DB Design
 Code
 Test Case and Test Result
 Running Application

5. Accomplishments

We all achieved every task and phase that we defined in project plan. According to our project plan, there were no milestones mXXXed in every phase. It is sure to say that we can perform what user needs in our system. Finally, we can successfully release the final running software and perfectly passed through every User Assessment Test phase. Therefore, we can conclude that we’ve successfully done every task required for our student management system.

6. Innovation

We’ve successfully applied what we have learnt in our institution. Also, we can enhance our skills and abilities that can make us boost in our technical skills. And also we became understandable and gained many experiences how to negotiate relationship between users and clients. Problem solving is our major achievements in this period of application project. Therefore, we fully understand the whole SDLC and two sorts platform such as client-server and internet-based technologies.

7. Challenges

We faced a lot of challenges during this project but we took it as a self learning motivator. Initially we started developing the system in windows platform but to meet up with the user requirements we had to change it into web platform. For this, the main problem is time constraint. System Integration process was quite cumbersome as programmers used independent coding techniques and terminologies. This was responsible for an increased time spent during the integration process and reduced the time available for testing. Database structure had to be frequently updated as a few requirements were overlooked during the database design process. Also, initially, there was no centralized database used by individual programmers which led to inconsistencies in certain data retrieval functions. Quality control was tightened for the coding process to make sure that individual programmers conformed to the original UI specification and programming standards. Form/ report names, methods and controls were standardized to ensure that a common standard was practiced by everyone. UI specification was also expanded to include even the minute details. Every team members were required to document and submit the respective variable names, methods and controls before handing it over for final integration which helped to ease the required integration effort.

Sample Peer and Individual Evaluation

Individual Evaluation


1. Roles played

In our Project, I have taken up the responsibility to develop Server Side Programming like coding controller classes, web services, .cs files, some JavaScript functions, Designing Database and also Integration. Documented Set up Instructions for the project which we did.

2. Interaction within the team

I helped in designing Database where we had dilemma in designing it. While discussion about the project with the company supervisor, I provided some of my suggestions in shaping up the project according to its requirements.

3. Major Challenges and resolution

In our project, we need to code for uploading some KML file and parse it to get some data from it. Initially we couldn’t get reference for parsing the file, later somehow I managed to code it with the help of some forums on the internet.
For our project, we should familiarize with Google map and about its API’s. It took some time for me, to understand and work on it.

We have to publish our website on the server and also test it on different machines. While doing so, it showed different kinds of errors for accessing IIS, because of the settings of those computers. Then for each error, we referred some sources like surfing the internet for solutions and using MSDN and also with our own debugging knowledge, we successfully run the project on different machines innovatively.


4. Quantum

The quantum of time spent in the various activities of the project is as follows:
 Requirement Analysis - 15 man days
 Group Discussions - Weekly twice
 Programming - 50 man days
 Presentation - 3 man days
 Documentation - 2 man days
 Deployment - 2 man days


5. Experience

I got experience of real time project experience. I enhanced my programming skills from the project experience I got during my internship period. I had been working on AJAX technology and Web Services also. Now I’m so confident in programming after completing my internship. I got clear understanding of Client - Server architecture too. I also had enhanced my Java Scripts coding skill.


Peer Evaluation


Student Name: XXXXXXXXXXXXX


Organization: XXXXXXXXXXXXXXXXXX


Rating: (L/A/H)

Team Member Leadership Technical Competency Teamwork Contribution
XXXXXX A H H H


L – Low
A – Average
H – High


Industrial Attachment Questionnaire


I. GENERAL

A. Student Name: __XXXXXXX___________________________

B. Industrial Attachment Organization Name: XXXXXXX

C. Industrial Attachment Supervisor: _Mr. XXXXXXX

D. Industrial Attachment Dates: From _18 August __To 19 December


II. TIME ALLOWANCE

A. Was there time allowed for the completion of your work assignments:

Too Short About Right Too Long

B. If the time was too short or too long, how much time you think should be allowed?
NA

C. Any other comments
Nil


III. ASSIGNMENTS


A. Which assignments were of the most/least value to you? Please explain?

Coding Get Directions module was most value to me, since I was able to impress my supervisor and also this whole module done by me alone. In this module, I need to code for getting data from Google search engine for some specific locations which user type or click on the map. I was able to do it, yet later enhancement of it is to allow users to add multiple directions and swap the locations and remove some locations were little bit challenging to code.


B. Which assignments were of the most/least value to your industrial attachment organization? Please explain.

All the search features in our project was most value to our industrial attachment organization. Searching includes getting location/Places from Google search engine and also searching markers and routes from our project Database. This search feature also includes auto suggestion to the users for Titles/ Descriptions.

C. Did the assignments make use of the knowledge/skills acquired? Please explain.
Yes, the assignments made use of the Programming skills acquired from XXX. And also we were able to enhance it by doing this internship project.

D. Which assignments, if any, would you add/delete/change? If changes, how do you think they should be changed?

Nil

E. Any other comments.

Nil


IV. INDUSTRIAL ATTACHMENT ORGANISATION


A. Did you get adequate guidance from your project supervisor? Please comment.
Yes, I got adequate guidance from my project supervisor. Yet since he doesn’t have much programming knowledge, he couldn’t help us adequately during our early stages of implementation. Though he helped us by providing some references from the internet.


B. How much time per day did you spend on SA assignments?

The whole office hours from 9 am to 6.30 pm.

C. How did you spend the time that was not devoted to SA assignments?
Most probably the time were spent on SA assignments. Some of the times were devoted to learn things needed to do our assignments. Like learning some coding from internet and learning some E Books etc.,

D. Did you have access to all resources (people, information), needed to
complete your assignments?

Yes, we had access to the resources, needed to complete our assignments.
Though one developer were assigned to help us for integrating the project, unfortunately he couldn’t help us much. We relied on us to finish up the project.

V. INDUSTRIAL ATTACHMENT ADVISOR

A. Did your XXX Advisor visit you? If Yes, How many times?

Yes, my XXX Advisor visited us twice during our Internship Period.

B. Were you able to contact your XXX advisor during the attachment and was the advisor prompt in responding?

Yes, I could contact my XXX advisor and he responded to me promptly.


C. Did you have to contact any other XXX staff for assistance or enquiries during industrial attachment? If yes, who they were and what form of assistance did you need?

No, I didn’t contact other XXX staff’s for assistance during the attachment.

D. Do you have any comments or compliments for your industrial attachment advisor?

My XXX Advisor was so kind to me and he asked about my convenience in the organization.


VI. INDUSTRIAL ATTACHMENT OVERALL

A. Did the industrial attachment programme meet the objectives presented in Section 1.2 of the industrial attachment guidelines?

YES NO

If No, Please explain.


B. Was the industrial attachment :

Very useful some use OK Little use Useless


VII. SKILL SETS


A. List the skill sets that is most commonly used by the staff in your industrial attachment organization (e.g. Methodology, Programming, networking etc.)

Programming skill is most commonly used by the staff in my industrial attachment organization.

B. Which of these skill sets are important to your attachment project?
Programming skill and understanding of project requirement.

C. What other skill sets would you suggest that XXX should impart that will benefit you?
Methodology

COMMENTS/SUGGESTIONS

Please make any additional comments/suggestions not specifically covered in this questionnaire. Your input on the industrial programme will serve as a major source for evaluating and modifying the industrial attachment programme. Please feel free to discuss any of your comments with members of the XXX staff.

Nil

Sunday, February 22, 2009

Sample Codes coming soon...REALLY!!

Dear friends,

Please email me whether you are interested to see sample codes of an ASP Website projects which include login and the basic business processes. JAVA projects, project documentations and such.

Including those who are planing to come to ISS Singapore, maybe we can share some cautionary tales.

Myanmar friends!!..Minglaba, as usual, ISS is your chance to be PR and get a job here in Singapore. Please manipulate ISS system because, Singapore government subsidise the tuition fees up to 80% (subject to changes-as usual, knowing Singapore ;*p). Especially those who have programming skills, you will breeze through the course. Those without programming skills, double extra hard work.

Please work on your C#, ASP.Net, JAVA SE, EE and J2ME
Please work on your project management skills ; using Microsoft Project; producing gantt chart, precedence chart and so forth.
ISS use Rational Rose for the production of diagrams for the OO modules, so try to learn those as well.

To Myanmar friends..Minglaba...and work on your presentation skills, interpersonal skills and please please work on your command of English. It will help you tremendously.

Projects are usually done in teams, so try to work well in teams/groups or identify those who are 'gurus' unless you are a ;guru' yourself LOL.

Exams in ISS are open book exams. 3 hours. I will provide some previous exam notes and samples for your reference.

I know its hard to believe for you that I am sharing with you all this information. You might ask, whats in it for me? Well as hard to believe for you as it is, its the truth. I am doing this because I like to help people. Thats it. Nothing..no cappucino. Speaking of coffee. ISS students will enjoy endless flow of coffee, teas and such.

As for the classes, starts from 9am until 5.30pm, depending on lecturers. usually you spend more time at ISS than at home. So bring along lunches, dinners and breakfast.LOL.

Email me at iss.nus.sg@gmail.com

Warm Regards,
Peter
Institute of System Science
National University of Singapore.

Team Responsibilities and Roles Example

Team Responsibilities And Role

Team Members


1. XXXXXXXXXXXXXX - Project Leader

Identifying user Requirements and designing the work flow.
Reviewing and Approving Documentation.
In charge of Coding of the project.
Integration of Whole Project.

2. XXXXXXXXXXXXXXXXXX –System Analyst

In charge of all Reports required for the project and all the printing functions.
Involved in Business Modeling , Analysis, Design and Coding.


3. XXXXXXXXXXX- System Analyst

In charge of Documentation.
Involved in Business Modeling, Analysis, Design and Coding .

4. XXXXXXXXXXXXX-System Analyst

In Charge of Maintenance package of the project.
Involved in Business Modeling ,Analysis, Design and Coding.


5. XXXXXXXXXXXXX –System Analyst & UI Designer

In charge of creating UI Design Templates and Navigation Standards.
Involved in Business Modeling , Analysis, Design and Coding .

6. XXXXXXXXXXXXX- System Analyst

In charge of Documentation and Progress Reports.
Involved in Business Modeling, Analysis, Design and Coding.


Unique Feature of the System


The system is built for all the employees of Logic University and store clerk, Supervisor, Manager of Stationery Store to


The features provided in our System

1. The employee can request for stationery from their own PC at any time.
2. The employee can view all his requests and its status.
3. The Department Head can approve the requests from his PC.
4. The Department head can send e-mail to the employees showing the reason for his reject and also for approval.
5. The department head will informed through e-mail if there are more than ten submitted requests from his department awaiting his approval.
6. The Department head can authorize a delegate for approving the requests.
7. The store clerk can keep track of pending requests and can allocate when the stock arrives.
8. The items will be allocated in first come first serve basis to the employees.
9. The store clerk can print the list of items needed to retrieve from the store.
10. The store clerk will not be allowed to allocate items more than the requested quantity and more than stock balance quantity .This will avoid errors .
11. Store clerk can print disbursement list and also can send e-mail with disbursement list as the attachment which is in PDF format.
12. The Department Representative can take print out of the list of allocated items to each employee and he can disburse accordingly.


Problems Faced by the Current System and Our Solution for the problems


Information on catalogue Item stored in several places making information gathering cumbersome. Our Use Case View Items To Order will display all the items which is below reorder level. The corresponding supplier details can also be viewed.
Reports for Management takes a long time. All the reports needed for management are generated and every month the reports will converted into a PDF and saved.
Items run out of stock leading to complaints from departments. The store clerk can view stock card and filter through the balance quantity .
The clerk is taking too long to consolidate the stationery requested and to gather them from the store. The stationery retrieval list will be auto-generated and can take print out for the store clerk to retrieve from the store.
The change in collection point and representative not informed promptly The department representative can update the changes from his PC.
The representatives not informed promptly for collection of inventory. The system will send e-mail to the representative with a copy of disbursement list as attachment.

Strength of Design


1.Since it is mentioned that store clerk is new to computers , all the screen designs are exactly replicating the forms which they are currently using. This will enable them to use our system with easiness.
2.The screens are user friendly and easy to understand.
3. The Reports will be auto generated by the system and will be saved in the system in PDF Format.
4. The system is providing a help document for users to refer.
5.The system is built with auto sending e-mail functionality.


Limitations of Design

1.Generation of Purchase Order is not implemented.
2.The process of allocating items to department or employee according to Store clerk’s discretion is not implemented.
3.Maintaining Employee Profile not implemented.

C# Workshop

using System;

namespace Triangle
{
class Triangle
{
private double side1;
private double side2;
private double side3;

public Triangle()
{
side1 = 0;
side2 = 0;
side3 = 0;
}

public Triangle(int a, int b, int c)
{
side1 = a;
side2 = b;
side3 = c;
}

public double getArea()
{
double s = (side1 + side2 + side3)/2;
double area = Math.Sqrt(s * (s - side1) * (s - side2) * (s - side3));
return area;
}

public double getPerimeter()
{
double perimeter = side1 + side2 + side3;
return perimeter;
}

public double getAngle1()
{
double a = (side2*side2 + side3*side3 - side1*side1)/(2*side2*side3);
double angle1 = Math.Acos(a);
return angle1*(180.0/Math.PI);
}

public double getAngle2()
{
double a = (side1 * side1 + side3 * side3 - side2 * side2) / (2 * side1 * side3);
double angle2 = Math.Acos(a);

return angle2 * (180.0 / Math.PI);
}

public double getAngle3()
{
double a = (side2 * side2 + side1 * side1 - side3 * side3) / (2 * side2 * side1);
double angle3 = Math.Acos(a);
return angle3 * (180.0 / Math.PI);
}

}
}

using System;

namespace Triangle
{
class TriangleApp
{
static void Main()
{
Triangle t = new Triangle(3, 4, 5);
double area = t.getArea();
double perimeter = t.getPerimeter();

Console.WriteLine("the area of this triangle is {0}", area);
Console.WriteLine("the perimeter of this triangle is {0}", perimeter);
Console.WriteLine("angle one is {0}", t.getAngle1());
Console.WriteLine("angle two is {0}", t.getAngle2());
Console.WriteLine("angle three is {0}", t.getAngle3());

string s = Console.ReadLine();
}
}
}

Personal Word Organizer J2ME

Personal Word Organizer( J2ME Project)
1.WordOrganizerMIDlet.java
package team12.wordOrganizer;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.midlet.MIDlet;
import javax.microedition.lcdui.Alert;
import javax.microedition.rms.RecordStore;
import javax.microedition.midlet.MIDletStateChangeException;


public class WordOrganizerMIDlet extends MIDlet {

private RecordStore rs;
private BrowseList browseList;
private AddForm addForm;
private SearchForm searchForm;
private ChooseList chooseList;
private ViewWord viewWord;
private Detail detail;
private DetailView detailView;

public WordOrganizerMIDlet() {
// TODO Auto-generated constructor stub
}

public void destroyApp(boolean arg0) {
// TODO Auto-generated method stub
try
{
rs.closeRecordStore();
}
catch(Exception e)
{}
}

public void pauseApp() {


}

public void startApp() {
try{
rs=RecordStore.openRecordStore("WS",true);
}catch(Exception e)
{}
chooseList=new ChooseList(this);
Display.getDisplay(this).setCurrent(chooseList);
}

public void goToWordList(String[] words)
{
ViewWord wordList=new ViewWord(this,words);
Display.getDisplay(this).setCurrent(wordList);
}

public void goToBrowseWordList()
{
browseList=new BrowseList(this);
Display.getDisplay(this).setCurrent(browseList);

}

public void goToBrowseWordList(Alert a)
{
browseList=new BrowseList(this);
Display.getDisplay(this).setCurrent(a,browseList);

}

public void goToAddForm()
{
addForm=new AddForm(this);
Display.getDisplay(this).setCurrent(addForm);
}
public void goToSearchForm()
{
searchForm=new SearchForm(this);
Display.getDisplay(this).setCurrent(searchForm);
}
public void goToChooseList()
{
chooseList = new ChooseList(this);
Display.getDisplay(this).setCurrent(chooseList);

}
public void goToChooseList(Alert a)
{
chooseList=new ChooseList(this);
Display.getDisplay(this).setCurrent(a,chooseList);
}

public void goToDetail(String result)
{
detail=new Detail(this,result);
Display.getDisplay(this).setCurrent(detail);
}

public void goToDetailView(String result, String[] wordList)
{
detailView=new DetailView(this,result,wordList);
Display.getDisplay(this).setCurrent(detailView);
}

public void exitApp(){
destroyApp(false);
notifyDestroyed();
}
public RecordStore getRS(){
return rs;
}

}
2.AddForm.java
package team12.wordOrganizer;
import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.Choice;
import javax.microedition.lcdui.ChoiceGroup;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.TextField;
import javax.microedition.rms.*;
import javax.microedition.lcdui.Ticker;

public class AddForm extends Form implements CommandListener
{

private RecordStore rs;
private Ticker ticker;

private Command cmdBack,cmdStore;
private WordOrganizerMIDlet midlet;
private TextField alphabet,word,description;
private ChoiceGroup wordtype;
String[] choicetype={"Noun","Adjective","Verb"};

public AddForm(WordOrganizerMIDlet midlet) {

super("Add Word,Please Fill the form.");
ticker = new Ticker("Personal Word Organizer");
this.midlet=midlet;
rs = midlet.getRS();
alphabet=new TextField("Alphabet: ","",1,TextField.ANY);
word=new TextField("Word: ","",18,TextField.ANY);
description=new TextField("Description","",30,TextField.ANY);

wordtype=new ChoiceGroup("Word Type :", Choice.EXCLUSIVE,choicetype,null);


cmdBack=new Command("Back",Command.STOP,1);
cmdStore=new Command("Store",Command.SCREEN,1);


append(alphabet);
append(word);
append(description);
append(wordtype);
setTicker(ticker);
addCommand(cmdBack);
addCommand(cmdStore);
setCommandListener(this);

}


public void commandAction(Command c, Displayable arg1)
{

if(c==cmdBack)
midlet.goToChooseList();

else if(c==cmdStore)
{
int rid;
byte[] data;

try
{
WS ws=new WS(alphabet.getString(),word.getString(),description.getString(),wordtype.getString(wordtype.getSelectedIndex()));
data=ws.toBytes();
rid=rs.addRecord(data,0, data.length);
System.out.println("Record: is added");
Alert a=new Alert("Message","The new word is successfully added!",null,null);
a.setTimeout(3000);
midlet.goToChooseList(a);


}

catch(Exception e)
{
System.out.println("Error in adding WS record:"+e);
Alert a=new Alert("Message","The new word is not successfully added!",null,null);
a.setTimeout(3000);
midlet.goToChooseList(a);
}
}

}

}
3.BrowseList.java
package team12.wordOrganizer;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.List;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.Alert;
import javax.microedition.rms.*;
import javax.microedition.lcdui.Ticker;

public class BrowseList extends List implements CommandListener {

private Ticker ticker;
private WordOrganizerMIDlet midlet;
private RecordStore rs;
private Command cmdBack;
static String[] options={"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V",
"R","S","T","U","V","W","X","Y","Z"};

public BrowseList(WordOrganizerMIDlet midlet) {

super("Browse Word,Please Choose one:",List.IMPLICIT,options,null);
cmdBack = new Command("Back", Command.EXIT, 1);

this.midlet=midlet;
rs = midlet.getRS();
ticker = new Ticker("Personal Word Organizer");
addCommand(cmdBack);
setTicker(ticker);
setCommandListener(this);

}

public void commandAction(Command c, Displayable arg1) {
if(c==cmdBack)
{
midlet.goToChooseList();
}
else if(c==List.SELECT_COMMAND)
{
RecordEnumeration re = null;
WS data = null;
try
{
RecordFilter rf = new WSFilterByAlphabet(this.getString(this.getSelectedIndex()));
WSComparator rc = new WSComparator();
re = rs.enumerateRecords(rf,rc,false);
if(re.numRecords()> 0)
{
String[] wordList = new String[re.numRecords()];
for(int i=0;i {
re.hasNextElement();
int id = re.nextRecordId();
data = new WS(rs.getRecord(id));
wordList[i] = data.getWord();
}
midlet.goToWordList(wordList);
}
else
{
System.out.println("no words exists");
Alert a=new Alert("Message","No words exists!",null,null);
a.setTimeout(3000);
midlet.goToBrowseWordList(a);
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}
4.ChooseList.java
package team12.wordOrganizer;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.List;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.Ticker;

public class ChooseList extends List implements CommandListener {

private Ticker ticker;
private Command cmdExit;
private WordOrganizerMIDlet midlet;
static String[] options={"Browse Word","Add Word","Search Word"};

public ChooseList(WordOrganizerMIDlet midlet) {

super("Please choose one:",List.IMPLICIT,options,null);
cmdExit = new Command("Exit", Command.EXIT, 1);
ticker = new Ticker("Personal Word Organizer");
this.midlet=midlet;
addCommand(cmdExit);
setTicker(ticker);
setCommandListener(this);



}
public void commandAction(Command c, Displayable arg1) {

if(c==List.SELECT_COMMAND)
{
if(this.getString(this.getSelectedIndex()).equals("Browse Word"))
midlet.goToBrowseWordList();
else if(this.getString(this.getSelectedIndex()).equals("Add Word"))
midlet.goToAddForm();
else if(this.getString(this.getSelectedIndex()).equals("Search Word"))
midlet.goToSearchForm();

}
else if(c==cmdExit){
midlet.exitApp();
}
}
}
5.SearchForm.java
package team12.wordOrganizer;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.TextField;
import javax.microedition.lcdui.Form;
import javax.microedition.rms.RecordFilter;
import javax.microedition.rms.RecordStore;
import javax.microedition.rms.RecordEnumeration;
import javax.microedition.lcdui.Ticker;

public class SearchForm extends Form implements CommandListener {

private WordOrganizerMIDlet midlet;
private Command cmdBack, cmdSearch;
private TextField word;
private RecordStore rs;
private String result=null;
private Ticker ticker;

public SearchForm(WordOrganizerMIDlet midlet)
{
super("Search Form,Please enter word:");
this.midlet = midlet;
rs = midlet.getRS();
ticker = new Ticker("Personal Word Organizer");
cmdBack = new Command("Back", Command.STOP, 1);
cmdSearch = new Command("Search", Command.SCREEN, 1);

word=new TextField("Word:","",18,TextField.ANY);
append(word);
setTicker(ticker);
addCommand(cmdSearch);
addCommand(cmdBack);
setCommandListener(this);
}

public void commandAction(Command c, Displayable arg1) {
if (c == cmdBack)
{
midlet.goToChooseList();
}
if(c==cmdSearch)
{
RecordEnumeration re=null;
WS data1;

try{
RecordFilter rf=new WSFilterByWord(word.getString());
re=rs.enumerateRecords(rf, null, false);
if(re.hasNextElement())
{

int id=re.nextRecordId();
data1=new WS(rs.getRecord(id));

System.out.println("Record"+id+"is"+data1.getWord());
result="Word:"+data1.getWord()+"\n"+
"Type:"+data1.getType()+"\n"+
"Description:"+data1.getDescription();
midlet.goToDetail(result);


}
else
{
System.out.println("This word is not in recordStore!");
result="The word is not in your store";
midlet.goToDetail(result);

}
}
catch(Exception e)
{
}
}


}
}
6.ViewWord.java
package team12.wordOrganizer;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.List;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.rms.*;
import javax.microedition.lcdui.Ticker;

public class ViewWord extends List implements CommandListener {

private Ticker ticker;
private WordOrganizerMIDlet midlet;
private RecordStore rs;
private Command cmdBack;
private String[] wordList;

public ViewWord(WordOrganizerMIDlet midlet, String[] wordList)
{
super("View Word,Please Choose one:",List.IMPLICIT,wordList,null);
cmdBack = new Command("Back", Command.BACK, 1);

ticker = new Ticker("Personal Word Organizer");
this.midlet=midlet;
rs = midlet.getRS();
this.wordList = wordList;
addCommand(cmdBack);
setTicker(ticker);
setCommandListener(this);
}

public void commandAction(Command c, Displayable arg1)
{
if(c==cmdBack)
{
midlet.goToBrowseWordList();
}

if(c==List.SELECT_COMMAND)
{
RecordEnumeration re=null;
WS data;
String result;
try{
RecordFilter rf=new WSFilterByWord(this.getString(this.getSelectedIndex()));
re=rs.enumerateRecords(rf, null, false);
if(re.hasNextElement())
{

int id=re.nextRecordId();
data=new WS(rs.getRecord(id));
System.out.println("Record"+id+"is"+data.getWord());
result="Word:"+data.getWord()+"\n"+
"Type:"+data.getType()+"\n"+
"Description:"+data.getDescription();
midlet.goToDetailView(result,this.wordList);
}
else
{
System.out.println("This word is not in recordStore!");
result="The word is not in your store";
midlet.goToDetailView(result,this.wordList);
}
}
catch(Exception e)
{
e.printStackTrace();
}

}
}
}



Detail.java
package team12.wordOrganizer;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.TextBox;
import javax.microedition.lcdui.Ticker;

public class Detail extends TextBox implements CommandListener
{
private WordOrganizerMIDlet midlet;
private Command cmdBack;
private Ticker ticker;

public Detail(WordOrganizerMIDlet midlet, String text) {

super("Detail View", text, 100, 0);
this.midlet=midlet;
ticker = new Ticker("Personal Word Organizer");
cmdBack=new Command("Back",Command.BACK,1);
addCommand(cmdBack);
setTicker(ticker);
setCommandListener(this);
}

public void commandAction(Command c, Displayable arg1) {

if(c==cmdBack)
{
midlet.goToSearchForm();
}
}

}
7.DetailView.java
package team12.wordOrganizer;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.TextBox;
import javax.microedition.lcdui.Ticker;


public class DetailView extends TextBox implements CommandListener
{
private String[] wordList;
private WordOrganizerMIDlet midlet;
private Command cmdBack;
private Ticker ticker;

public DetailView(WordOrganizerMIDlet midlet, String text, String[] wordList) {

super("Detail View", text, 100, 0);
this.midlet=midlet;
this.wordList = wordList;
ticker = new Ticker("Personal Word Organizer");
cmdBack=new Command("Back",Command.BACK,1);
addCommand(cmdBack);
setTicker(ticker);
setCommandListener(this);
}

public void commandAction(Command c, Displayable arg1) {

if(c==cmdBack)
{
midlet.goToWordList(this.wordList);
}
}

}
8.WS.java
package team12.wordOrganizer;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;


public class WS {

private String alphabet;
private String word;
private String description;
private String type;

public WS(String alphabet, String word, String description, String type) {

this.alphabet = alphabet;
this.word = word;
this.description = description;
this.type = type;
}

public String getAlphabet() {
return alphabet;
}

public String getWord() {
return word;
}

public String getDescription() {
return description;
}

public String getType() {
return type;
}

public byte[] toBytes(){
byte data[]=null;
try{
ByteArrayOutputStream baos=new ByteArrayOutputStream();
DataOutputStream dos=new DataOutputStream(baos);

dos.writeUTF(alphabet);
dos.writeUTF(word);
dos.writeUTF(description);
dos.writeUTF(type);

data=baos.toByteArray();

baos.close();
dos.close();
}
catch(Exception e)
{
}
return data;

}

public WS(byte[] rec)
{
try{
ByteArrayInputStream bs=new ByteArrayInputStream(rec);
DataInputStream dis=new DataInputStream(bs);

this.alphabet=dis.readUTF();
this.word=dis.readUTF();
this.description=dis.readUTF();
this.type=dis.readUTF();

bs.close();
dis.close();
}
catch(Exception e){}
}

}
9.WSComparator.java
package team12.wordOrganizer;
import javax.microedition.rms.RecordComparator;

public class WSComparator implements RecordComparator
{
public int compare(byte[] rec1, byte[] rec2) {
WS r1=new WS(rec1);
WS r2=new WS(rec2);

if(r1.getWord().compareTo(r2.getWord())==1)
return RecordComparator.PRECEDES;
if(r1.getWord().compareTo(r2.getWord())==0)
return RecordComparator.EQUIVALENT;
return RecordComparator.FOLLOWS;

}

}
10.WSFilterByAlphabet.java
package team12.wordOrganizer;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import javax.microedition.rms.*;

public class WSFilterByAlphabet implements RecordFilter
{
/*Filter by Alphabet*/
private String alphabet;

public WSFilterByAlphabet(String alphabet)
{
this.alphabet = alphabet;
}

public boolean matches(byte[] rec)
{
WS ws= new WS(rec);
if(ws.getAlphabet().equals(this.alphabet))
return true;
else
return false;
}
}
11.WSFilterByWord.java
package team12.wordOrganizer;
import javax.microedition.rms.RecordFilter;


public class WSFilterByWord implements RecordFilter {
private String word;

public boolean matches(byte[] rec) {
WS ws=new WS(rec);
if(ws.getWord().equalsIgnoreCase(this.word))
return true;
else
return false;
}

public WSFilterByWord(String word) {

this.word = word;
}


}

Internship Summary Report Example

1. Objectives

Our Student Management System aims to develop the automated system of administration of students including student new recruitment, student attendance, and student examination and looking up the student profile in details and this automated system is web-based intranet system.

1.1 Business Problems

In the past, all these modules mentioned above were kept track by administrator and lecturers in manual and all the necessary data were stored in files. As a result, data may be lost and times for keeping track of these modules were consumed. Moreover, all the users cannot easily access these units and also cannot easily maintain the records of applicants and students systematically.

1.2 Project Scope

“Student Management System” covers:

 Can automate in recruiting new applicants for new batch
 Auto-generate in calculating Aptitude Test and Interview grade in advance.
 Selection of new applicants can be easily and automatically done in exact results.
 Able to calculate particular student’s attendance percentage and also able to easily generate report for overall attendance percentage of all students.
 Automatically generate the student’s grade in details and individual records can be kept in central database.
 Can easily maintain each and every applicant and student records in advance.
 In every phase, system can easily export data for back-up and can easily generate the reports for official use.


1.3 Project Impact

With the computerized system, the following improvement in process is expected:

 Communication between administrator and lecturer possible in an easy way
 Lecturer can evaluate the students simply
 Automatic calculation of examination results
 Turnaround time for creating reports would be shorten
 Easy allotment of students for GDipSA Course


1.4 Project Goals

 Our project goal is to make the users friendly in use of the system and support the needs of current organization.
 Every manual task is already transformed into automated system and easy to use and time-saving.
 Communication between lecturers and administrators is becoming effective.
 All the error-prone conditions are reduced by this system and can get clear and exact results of data in every phase.
 All the users can have access this system from own client machine and can easily generate the reports for official use.
 Student management system is very much reliable for future enhancement and further development.

2. Project background

Our team members were commissioned to build a computerized system for ISS to build a system for Graduate Diploma in System Analysis. The computerized project is undertaken to improve the manual system. The computerized system needs to address some of the issues faced by the manual system such as

 Information stored in various places
 Long lag time to create reports
 A lot of effort spent keeping manual records up to date
 Difficult to manage the students to select aptitude test, record their mark for aptitude test, interview selection, final selection for SA
 Student attendance was marked manually
 Manual calculation was done for examination grade, cap point, total mark and required grade if the students failed to meet the minimum appoint
 Manual entering of lecturer comments

And this computerized system needs to be web-based intranet application that can be accessed by anywhere in the organization. And future maintenance and further development will be able to need to perform in this computerized system.


3. Project details

3.1 Nature of assignment domain
Our project mainly consists of five sections- Recruitment Attendance, Examination, Maintenance, Look-up details. To present in details

Student Recruitment System
This system is designated for recruiting new applicants for new batch and this system will be mainly accessed by administrator. This system includes starting from importing new applicant excel file and passing through the phases of aptitude test mark entry/selection, interview grade entry/selection, final SA Student selection, entry of matricno and nus email etc. In every step, the administrator can generate report and also can export the data out for back-up.

Student Attendance System
This system is designated for saving and tracking of the attendance of the SA students from the latest batch and this system will be mainly accessed by administrator. This system includes saving the attendance, modifying the attendance, viewing the attendance report and exporting the attendance to excel file. At the end of the semester, administrator can view the percentage of the attendance of all the SA students.

SA Maintenance System
This system is designed for adding new Lecturer, Administrator and source of information. And this system is used by SA administrators. There are also include amend and delete for lecturers, Administrators, SA applicants, SA students. Their profile details can be amended if there is any changes and can also been deleted if there is duplicate data or profile is no more needed.

Student Look-up details
This system is designated for reviewing particular student’s profile details including student’s profile, working experiences, education background, examination details. Moreover, this system is mainly used by SA lecturers and there is a module for adding new comments for particular students by lecturers. Then, lecturers can review the comments of lecturers. Finally lecturers can generate the report out for official use.

Student Examination System
This system is designed mainly for Graduate Diploma in Systems Analysis (SA).This application is mainly used by the administrator. The program mainly used to import the excel file which contains student details such as name, matric no, citizenship, education and mark for each paper. the program will calculate Grade point for each paper, overall Cap point, Required grade if the student failed to meet minimum appoint in the semester and total mark. Another phase of this application is to back up every data to excel file through exporting.

3.2 Job Responsibilities

In Student management system, there are five main sections namely student recruitment system, student attendance system, student examination system, student maintenance and student look up details. We all shared our workloads as follows:

Student Recruitment System -

Student Attendance System -

Student Examination System -

Student Maintenance System -

Student Look up Details -

Student Analysis -


3.3 Software used

Being a web-based intranet application, our student management system needs such technologies and tools that we have shown as follows:

 Microsoft Visual Studio 2005
 Microsoft ASP.Net 2.0 using C#
 Internet Information Services (IIS)
 Microsoft Office 2003 ( Excel )
 Rational Rose
 Microsoft Project Plan

3.4 Project Statistics

In our Student Management System is based on 3-tier architecture and used Unified Modeling Language (UML).

Number of System Use case : 24 system use cases

Number of Screens created : 54 screens including reports

Number of tiers used : Presentation Layer
Business Layer
Data Layer
Report Layer


4. Deliverables given to organization

The following items are the necessary deliverables given to organization.
 Project Plan
 Business Use Case Model Survey
 Business Object Model Survey
 Requirement Specification( Functional Requirement )
 Requirement Specification( Non-Functional Requirement )
 UI Design
 Analysis Models
 Design Models
 Relational DB Design
 Code
 Test Case and Test Result
 Running Application

5. Accomplishments

We all achieved every task and phase that we defined in project plan. According to our project plan, there were no milestones missed in every phase. It is sure to say that we can perform what user needs in our system. Finally, we can successfully release the final running software and perfectly passed through every User Assessment Test phase. Therefore, we can conclude that we’ve successfully done every task required for our student management system.

6. Innovation

We’ve successfully applied what we have learnt in our institution. Also, we can enhance our skills and abilities that can make us boost in our technical skills. And also we became understandable and gained many experiences how to negotiate relationship between users and clients. Problem solving is our major achievements in this period of application project. Therefore, we fully understand the whole SDLC and two sorts platform such as client-server and internet-based technologies.


7. Challenges

We faced a lot of challenges during this project but we took it as a self learning motivator. Initially we started developing the system in windows platform but to meet up with the user requirements we had to change it into web platform. For this, the main problem is time constraint. System Integration process was quite cumbersome as programmers used independent coding techniques and terminologies. This was responsible for an increased time spent during the integration process and reduced the time available for testing. Database structure had to be frequently updated as a few requirements were overlooked during the database design process. Also, initially, there was no centralized database used by individual programmers which led to inconsistencies in certain data retrieval functions. Quality control was tightened for the coding process to make sure that individual programmers conformed to the original UI specification and programming standards. Form/ report names, methods and controls were standardized to ensure that a common standard was practiced by everyone. UI specification was also expanded to include even the minute details. Every team members were required to document and submit the respective variable names, methods and controls before handing it over for final integration which helped to ease the required integration effort.

The Design Model

The design model builds on the analysis model by describing, in greater detail, the structure of the system and how the system will be implemented. Classes that were identified in the analysis model are refined to include the implementation constructs.

The design model is based on the analysis and architectural requirements of the system. It represents the application components and determines their appropriate placement and use within the overall architecture.

In the design model, packages contain the design elements of the system, such as design classes, interfaces, and design subsystems, that evolve from the analysis classes. Each package can contain any number of subpackages that further partition the contained design elements. These architectural layers form the basis for a second-level organization of the elements that describe the specifications and implementation details of the system.

Within each package, sequence diagrams illustrate how the objects in the classes interact, state machine diagrams to model the dynamic behavior in classes, component diagrams to describe the software architecture of the system, and deployment diagrams to describe the physical architecture of the system.

from here..

Naming Covention

Hi. Team


Please follow the standard

First . Very Important !!! Please change the name of our database to : SA29AD14SSIS Repeat: SA29AD14SSIS . SA29AD14SSIS . SA29AD14SSIS
And change the namespace to SA29AD14SSIS, Repeat: SA29AD14SSIS. SA29AD14SSIS

maincontroller name: MainController
use case controller: Use Case Name+ Controller
DatabrokerFactoryInterface: DBFactoryInterface.cs
DatabrokerFactory:DBFactory.cs
Databroker Name: database table name + DB if there is any joint table, please create additional DB, e.g. If you need to get data from user table and department table, create one class called "UserDepartmentDB" and create new datatable and new dataset, fill the dataset with your data table and return to controller