Sunday, October 31, 2010
Recently I went through OOAD and UML training. The OOAD and UML tutorial was very impressive and I decided to share it with you. Object Oriented Analysis & Design and Unified Modelling Language is very important in a life cycle of a project. Previously I was involved in project requirement study and technical design. But this time, I learned the tricks of the trade. I discovered different tips for identifying Use Cases, Actors and Classes. In this series of posts, I am planning to take you through the process of involvement of UML in Requirement analysis and Design phase.
This series will include 3 parts...
Part 1. Identifying Use Cases – Use Case Diagrams
Part 2. Realizing Use Cases – Sequence Diagrams
Part 3. Identifying Classes – Class Diagrams
For this purpose we will take commonly available sample requirement – Student Registration process. From this requirement we will identify the ACTORS and USE CASES.
Tip: For identifying Actors, identify Noun in the requirement provided to you. Also identify external systems as actors.
Tip: For identifying Use Cases, identify Verb in the requirement provided.
Sample Student Registration Requirement
As the head of information systems for WestCoast University you are tasked with developing a new student registration system. The college would like a new client-server system to replace its much older system developed around mainframe technology. The new system will allow students to register for courses and view report cards from personal computers attached to the campus LAN. Professors will be able to access the system to sign up to teach courses as well as record grades.
Due to a decrease in government funding the college cannot afford to replace the entire system at once. The college will keep the existing course catalog database where all course information is maintained. This database is an Ingress relational database running on a DEC VAX. Fortunately the university has invested in an open SQL interface that allows access to this database from college's Unix servers. The legacy system performance is rather poor, so the new system must insure that access to the data on the legacy system occurs in a timely manner. The new system will access course information from the legacy database but will not update it. The registrar maintains course information, professor information and student information through the same system.
At the beginning of each semester students may request a course catalogue containing a list of course offerings for the semester. Information about each course, such as professor, department, and prerequisites will be included to help students make informed decisions.
The new system will allow students to select four course offerings for the coming semester. In addition, each student will indicate two alternative choices in case the student cannot be assigned to a primary selection. Course offerings will have a maximum of ten students and a minimum of three students. A course offering with fewer than three students will be cancelled. For each semester, there is a period of time that students can change their schedule. Students must be able to access the system during this time to add or drop courses. Once the registration process is completed for a student, the registration system sends information to the billing system so the student can be billed for the semester. If a course fills up during the actual registration process, the student must be notified of the change before submitting the schedule for processing.
At the end of the semester, the student will be able to access the system to view an electronic report card. Since student grades are sensitive information, the system must employ extra security measures to prevent unauthorized access.
Professors must be able to access the online system to indicate which courses they will be teaching. They will also need to see which students signed up for their course offerings; In addition, the professors will be able to record the grades for the students in each class.
From the above requirement, we have identified 6 Actors:
4.Legacy System / Course Catalog (External system)
5.Billing System (External system)
6.New DB (External system)
And there are 13 use cases:
3.Registration for Secondary Courses
5.View Report Card
7.Sign up to Teach
9.View Student Details
10.Maintain Student Details
11.Maintain Professor Details
12.Maintain Course Details
13.Cancellation of Courses
Now we will see how these Actors and Use Cases are depicted in Use Case diagram. I have made use of Enterprise Architect for tooling.
- Vighnesh Bendre
Friday, October 15, 2010
In my last post I had mentioned about custom actions locations and IDs. In this post you will see how to add a custom action to Central Administration's Application Management.
For this we need to add 'Module' to VS 2010 SharePoint project. You can delete the text file which gets created by default when you create module. Now in the Elements.xml file add the below xml code.
This will add a custom action under Web Applications which is under Application Management.
You can see 'People Editor Settings' menu under Application Management->Web Applications
- Vighnesh Bendre
Following are the custom action Locations and IDs for SharePoint 2010. This list will
help you in putting an application page or administration page in Central Administration (CA) or site settings.
Custom Action Group ID
Databasessection under Application Management on Central Administration
ServiceApplications section under Application Management on Central Administration
Servers section under System Settings on Central Administration
Farm Management section under System Settings on Central Administration
HealthAnalyzer section under Monitoring on Central Administration
Timer Jobs section under Monitoring on Central Administration
Reporting section under Monitoring on Central Administration
Farm Backup and Restore section under Backup and Restore on Central Administration
Granular Backup section under Backup and Restore on Central Administration
Users section under Security on Central Administration
General Security section under Security on Central Administration
Information policy section under Security on Central Administration
External Service Connections section under General Application Settings on Central Administration
Site Directory section under General Application Settings on Central Administration
SharePoint Designer section under General Application Settings on Central Administration
Farm Configuration section under Configuration Wizards on Central Administration/td>
Thursday, October 14, 2010
You would get this error after configuring a list which uses External Content Type (created using SharePoint Designer or VS 2010). Now you must be wondering when ECT and the list is created with the same login id, why should one get access denied error.
When you create a new list which uses the ECT, it gives Access Denied error
But there is one more step before you use the ECT in a list. In Business Data Connectivity Service in Central Administration we need to set object permission for the ECT.
1. Open CA, navigate to click on ‘Manage Service Applications’ under ‘Application Management’.
2. Click on ‘Business Data Connectivity Service’
3. Select the ECT you are looking for
4. Click on ‘Set Object Permissions’ on the ribbon,
In BDC service application, select the ECT and click on 'Set Object Permissions' in the ribbon
5. Enter the user name you want to give permission to, Click on Add
6. Select permissions for the selected user and click OK.
In the set object permissions popup, add the user and set permissions
That’s it, now go and refresh your list…
Monday, October 11, 2010
In this example, we are going to format a column based on certain condition. Here I already have a list called Projects. I also have workflow associated with it. So whenever I create a new item in the list, workflow status column shows ‘In Progress’. Subsequently when the workflow in completed, the workflow status column shows ‘Completed’.
For demonstration purpose, I will set the background color of workflow status column to yellow when the status is ‘In Progress’ and to green when the status is ‘Completed’.
In SharePoint Designer open the site on which you are working. Click on ‘Lists and Libraries’ link. Choose the ‘Projects’ list.
In SharePoint Designer Navigation, choose ‘Lists and Libraries’.
In the list settings page, click on ‘New’ in ‘Views’ section. Provide appropriate name for the view and click OK.
After choosing list, click on ‘New’ in the Views section. Give appropriate name to the list.
Now click on any column, then in the ribbon, click on List View Tools->Options->Conditional Formatting->Format Column.
Click on List View Tools->Options->Conditional Formatting->Format Column in the ribbon.
Select the field name as workflow status column, Comparison as Contains and Value as ‘In Progress’.
Set the condition criteria for In Progress status.
We have specified the condition, now we have to set the style. Click on ‘Set Style’.
Set the background-color as appropriate.
Now repeat the step for creating formatting for workflow status ‘Complete’. Click on save in SPD. Navigate to the newly created view in browser.
You will be able to see the conditional formatting on Workflow status column.