Valentinos Computerised System: MSC in Software Engineering With Management Studies
Valentinos Computerised System: MSC in Software Engineering With Management Studies
(CIM 301)
Gaurang S. Patel
K0851882
MSc in Software Engineering with Management Studies
Objectives Measures Financial Objectives Measures Financial Increase client applications Applications/ year Increase client applications Applications/ year Increase profitability Revenue Increase profitability Revenue Decrease cost Operating Cost Decrease cost Operating Cost
Objectives Objectives
Customer Customer
Measures Measures
Objectives Objectives
Internal Internal
Measures Measures
On time delivery of post and emails delivery of post On time and emails Increase market share Increase market share Low registration fees Low registration fees
Customer satisfaction index Customer satisfaction index Market Share Market Share No. of customers/month No. of customers/month
Improve Technology Improve Technology Reduce time in sending introduction list in sending Reduce time to clients introduction list to clients Improve Advertising Improve Advertising
Investment in Technology/year Investment in Technology/year Average no. days for delivery Average no. days for delivery Performance audit score Performance audit score
Objectives Objectives
Innovation Innovation
Measures Measures
Build online user friendly system online user friendly Build system Open new braches Open new braches Experienced staff Experienced staff
No. of website visitors No. of website visitors No. of applications/ month No. of applications/ month Customer satisfaction index Customer satisfaction index
The system would be developed using following developing tools and technologies: Scripting will be done using PHP, HTML and AJAX for interfaces and ORACLE will be used as a database. Another version of the website can be accessed via mobile phones and will be using XML and WML (Wireless Markup Language). Security will be provided by using encryption algorithms. Payments will be secured by a secure payment gateway.
3. Scope Diagram
VALENTINO PERSONAL INTRODUCTION AGENCY Register and Payment Details Request Introduction List Generate Matches
CLIENT
COMPUTER SYSTEM
STAFF
Out of Scope Email System Post office System Telephone System Secure Payment System
Intangible benefits
Costs
Fast, reliable and easy to access both by clients as well as staff. Registration can be done online, so no need to meet the staff personally which saves clients time.
Setup costs Servers Additional Computers Software Development Website Development Staff Training Operational Costs Salaries of staff involved in development. Software maintenance Hardware maintenance Hardware Support
Description
Create a new entry for the client in the database. Fill questionnaire. Receive membership payment after verification of address. Client answers number of questions regarding himself and the type of person he/she is looking for. After registration and verification of clients address 150 are automatically deducted from clients credit card or account if payment is done through cheque and account is activated. Client can edit his details and requirements and mode of contact. Client can view and print the invoice or the receipt generated for further references. After opening account, client can start generating introduction lists whenever required. The introduction list generated can be printed so the client can contact the listed members if the member is found to be suitable. Client would have to pay 5 for generating the lists after the first free one. Client can request more introduction lists by paying additional 5. If the system generates less than six matches, the subsequent list is generated free of charge. If in previous request the client gets less than six introductions the subsequent introductions list is generated free for client. If the client finds any difficulty in using the system he/she can contact the staff member through email or telephone by searching the nearest Valentino branch. Must
Priority
Must Must
Edit Profile View/ Print Payment Invoice Generate Matches View/ Print Introduction Lists
Receive 5 payment View/ Print Additional Introduction Lists Less than six matches View/Print Free Introduction List Query Staff
Must
3) Performance Requirements: Response Time: - The time in displaying the web page should not be more than 15 seconds. If the system takes more than 15 seconds, a message saying system busy should be displayed. If the user is not using the system for more than 5 minutes then he should automatically be logged off. Degradation under Overload Conditions: - The system should display System BusyWait for few seconds messages if it enters an overload state. At a time around 10,000 users should be able to access the system.
4) Security: The system should allow passwords that consist of mix match of characters and numbers. i.e. strong password. System should notify the users to change their passwords every 3-4 weeks. In case of password recovery client id and email id of the client should be verified and the new password should be emailed to the clients email id. To ensure that authorized clients are allowed to edit profiles and settings of their account.
5) System and browser compatibility requirement: The Valentinos website has to be compatible with the following browsers: Internet Explorer, Mozilla Firefox, Opera, Google Chrome,etc. The Valentinos web server should also support pcs having Windows 95/98/ME/XP/Vista/7, Mac OS, Linux, etc.
Functional requirement: Receive membership payment To be able to debit membership fee from clients credit card and generate payment invoice Non-functional requirement(s) Description Target value Availability 24 hours Monday Sunday Response time 15 seconds
Comments Client should be updated every moment while processing the card. Client should be asked for confirmation of card details at each step. Verification of card details by payment gateway.
Security
Immediate
Unlimited
Benefits This function will allow the client to register himself with Valentino and make membership payment. Comments/suggested solutions After the payment has been done an invoice is sent for viewing and printing purposes and the first introduction list is generated. Related documents Sample of currently produced timetable. Related requirements Verification of clients credit card and address. Resolution
Priority: Must
Owner: Client
Functional requirement: Generate Matches To be able to generate matches depending on the clients requirements. Non-functional requirement(s) Description Target value Availability 24 hours Monday Sunday Response time 15 seconds Security Immediate
Benefits This function will compare client requirements with other client information in the database and generate six most compatible matches.
Comments/suggested solutions Client will be presented with a list of six introduction list. If it contains less than six introductions next introduction will be generated for free. The list generated will be stored in clients account for future reference and can be printed. Related documents Client questionnaire form which contains his requirement for match generation. Related requirements Client needs to pay 5 for each new introduction list generated. Resolution
The actors involved in the system are as follows: 1) Client He is the one who registers himself with the system and requests introduction lists. 2) Staff They guide their clients during problem situations. They even provide advice related to love, dating, etc. 3) Computer System This forms the most important part of the system. Clients and Staff are in continuous contact with the system. It accepts payment, generates matches using a unique matching algorithm and displays it to the client.
7 8 9 10 11
System verifies credit card and debits 5 from card. After receiving payment, system runs an algorithm to search for members whose characteristics or requirements are matched with those of the client. The list is then displayed on the website in the clients account. If the client is not satisfied with the list, he can generate another list by paying additional amount. Repeat 5-9. Client can then view and print the list online and contact the members if he finds them suitable to his/her requirements.
The cheque payment mode shown in the model takes time. The cheque needs to be deposited first by the employees after that client would receive his login details by post. This process may take 5-7 working days. So its a slow process compared to registering online.
Assumptions
In above class model the login ID and password allocation is not show. We need to assume that while online registration the client enters his email id. This email id is the only source through which the client can remain in contact with the valentinos system. During signup client receives his login id and password via email. Any kind of error reports or generated introduction lists are mailed to the client. If the client forgets his password, he can click on the forgot password link on the website and recover his password through email. There is a cheque payment shown in the model. Payment can be done by cheque also. After the cheque gets cleared and the payment is credited in valentinos account, client will receive an email or a letter specifying the login id and passwords. Address verification of client is not shown in the above model. We need to assume that the address verification is done by employees by accessing the client details.
In the above class model staff or valnetino employees can also be included. In case if the client wants to register with valentino he can do so by manually filling the application form and submitting it to the employee. The employee then enters the detail manually in the system. A payment gateway could have been included in the model. The payment gateway verifies the credit card details for security purposes. The cheque payment mode could have been excluded. If a client wants to register but doesnt have a credit card but have got internet connection then he can select this payment mode. In this the mode the client fills his details and the questionnaire form but makes the payment by cheque via post. He wont be allowed access to the system until the cheque is deposited in valentinos bank account. After the cheque is cleared, a staff member will send a mail to the client stating clients login details after which he could access his account.
2. Description
The rich picture above provides a cartoon representation of the complex system. It is used to identify and locate problem situations occurring in system at the pre-analysis stage. Problems detected at this stage can then be avoided or overcome in the later development or implementation phase. Listed below are a few problem situation and their solutions: Clients The use of website saved clients time. He no longer has to personally go and meet the staff for registration and enquiry purposes since everything can be done online by just clicking a button. For clients who dont know to use the internet or dont have internet connection or an email id they still can register with valentinos. Valentinos experienced staff is always ready to help them. Registration can also be done by visiting a branch and personally filling all the data in forms. Clients can visit or call staff for help when the internet connection is down or the valentinos system is overloaded with work load. If the client doesnt find the introductions interesting or suitable for him then still he can generate a new list. In case when the client forgets his password, he can generate a new one just authenticating him to the system. If there is no internet connectivity or if the system is slow he can call staff and generate a new password.
Staff There is no more work left for the staff. They are required on few instances only when the system is down or some one gives a telephone call for a query or a client wants to register manually. Since there is no work left. Staff can now concentrate on advising clients with managing their first dates, relationships, marriage suggestions, etc. Staff members are happy that their shelves are no more loaded with papers and files. Staff members would be worried about their job security. Staff members would be under pressure only when the system is down or there are too many telephone calls.
IT Support Staff IT support people are the ones who maintain the entire system. During system failures or slow down, the support staff needs to read and follow the documentation report to avoid system failure. Every small problem needs to be documented. They should backup database every week to prevent loosing it during major failures as this system is nothing without its database.
Cons -
Right people with right knowledge need to be searched. There will be no surety that the product will run properly, since its been developed by in-experienced students. Development tools and equipments needs to be purchased which turns to be expensive. There will be no point in spending a big amount if there was no outcome of the invested money. Copyright needs to be done if not meant for sale.
Purchase of rival agency Pros Cons No need to invest money in developing software as it would be readily available or some customisation can be done. Saves time and resources. Turns out to be useful and user friendly as its already been in use. Increases market share in the industry. No need of copyrights needed. Large amount of money needs to be invested. Not worth if it doesnt add to revenue. May need upgrades or customization to a large extent. Takeover turns out to be a loss if the software is not compatible with the current technology. Turn out to be bad deal if proper documentation is not available.
Development by external contractor Pros Product generated will be reliable and flexible. Compatible with existing hardware. All requirements can be met. Low price needs to be paid as the product is outsourced to India. Good Quality of delivered product. Cuts Operating Costs. Access to better technology.
Cons
Slow response time. Threat to security and confidentiality. Improper specification may lead to quality problems. Communication can become an issue. High up gradation cost. High maintenance cost.
2. Recommended Approaches
Purchase of rival agency Suggested life cycle: Customisation in combination with iterative and incremental development approach. Since we need to customise the software as per our needs, we need to perform testing at each phase. The deliverables are deployed and new requirements are taken for analysis.
Iterative and Incremental Development Model Iterative and incremental development is suitable as only few requirements need to be analysed and designed.
Development by external contractor Suggested life cycle: Waterfall model Since the project is to be outsourced, specifications/requirements need to be specified at the early stage itself. Continuous communication is not possible due to difference in time and location.
Waterfall Model
This approach is suitable if the project is outsourced to some company in India. I would recommend Valentinos to get their product to be developed by an external contractor. Since the exact requirements will be specified by valentino the product will be developed product will be consistent and compatible with the existing setup. The only risk in purchasing an external agency is the huge investment. And if the software doesnt seem to be that productive then it will turn out to be a complete loss.