Friday, September 20, 2019
Waterfall Model Vs Prototyping Model
Waterfall Model Vs Prototyping Model Software products developed in todays era are mostly customer oriented. It is either drives the market or it driver by market. Customer Satisfaction was the main aim in the 1980s. Customer Delight is todays logo. Market needs more customers oriented and less emphasizes on the technology. Though the technology factor is always the prime factor behind the deliverables, the product should always satisfy the customer needs. The product development should start focusing on the customer requirements in case of both the retail based products and products developed based on pre-defined specifications. The software products like other engineering products have various types of development or manufacturing strategies to obtain the final output. The most famous software development strategies are as follows: Waterfall Model Evolutionary Model or Prototyping Model Incremental Model Spiral Model The most used models are Waterfall models used for generally small scale projects and single release based software products, whereas the Prototyping Model is used for developing large scale products generally developed in multiple parts rather than single release also called version of release. The software developments strategy I prefer is Prototyping Model. The reason for selecting the Prototyping Model encourages progressive strategic development with course of time. With prototyping model, I am also using non-agile approach and USDP methodology as active part of the development process. The usage of the prototyping non-agile approach and USDP methodology is justified below to be the best choice for my Project. WATERFALL MODEL vs. PROTOTYPING MODEL Waterfall Model is a flow based model which consist of following phases:- 1. System/Information Engineering and Modeling 2. Software Requirements Analysis 3. Systems Analysis and Design 4. Code Generation 5. Testing 6. Maintenance A Waterfall method of software development has to pass through every phase once, and not meant to go back to previous phase again. Once the requirements request made freeze, changes cant be done during any phase. That is why, it is used rarely now a days. Due to this If there is any change in requirements, and then it becomes difficult as well as costly affair. Apart from this each phase takes a lot of time to produce solution for its consecutive next phase as it is irreversible process the solution should be well optimized and satisfactory. If one phase result goes wrong means subsequent phases get effected. Prototyping Model is a technique that uses the technique of replication of few aspects or feature of expected product and it is then developed upon it to obtain the full software. It can be called designing of software prototypes or temporary versions of software program being developed for full edition deliverables. The main theme behind the prototyping is to allow users to evaluate developers proposal for the design of expected product based on real time analysis by user rather than interpreting by the developers themselves. So it is also referred as an efficient way of controlling the prototype that act as a key factor in the commercial relationship between clients and respective solution provider. The client and the contractor can compare if the software made matches the software specification, according to which the software program is built. In Prototype strategy of development as we create a number of Prototypes of the product, before the release of final one. We release number of Prototypes with some differences between them just as versions, and take client opinion, and modify the final Product, as per client suggestions. Prototype is developed by keeping currently known requirements in the mind. Development of prototype undergoes design, coding, testing like phases which give client an actual feel of the system. Prototype is a model which looks exactly like Software development life cycle (SDLC). AGILE MODELvs NON-AGILE MODEL Agile software development is mainly based on iterative development in which solutions are generated from the collaboration between the phases and functional teams of development. The agile software development approach has taken the software developing industry by storm. Agile software development has been en vogue in this decade. It started with the popularity of Extreme Programming (XP) and Kent Becks series of books on the topic. Somewhere it creates a misleading impression that agile is not formal and hence maintenance cost is reduced or controlled by spending more on up-front design. Of course, traditional (non-agile) methods shine in other areas. Agile methods are counter indicated, for example, where there are no system experts, so that only exhaustive study can possibly reveal whats truly needed. Most agile methods are, of course, informal, and so will not work unaltered in a problem area where formality is one of the requirements; but enough agile methods have been formally documented that for any formal project where exhaustive study is NOT a requirement, there should be precedent for using a (formal) agile method. Non-Agile software development provides a traditional simple way to develop software. It reduces the whole cost as well as time consumed in the development. It is less affected from the type of resources. Management information system (MIS) A management information system (MIS) is a process that provides the information which are essential to run an organization professionally. MIS are totally different from regular information systems in that they are used to analyze other information systems applied in operational activities in the organization. Academically, the term is commonly used to refer to the group of information management methods tied to the automation or support of human decision making. MIS are computer-based system that provides managers with the tools for organizing, evaluating and efficiently running their departments. In order to provide past, present and prediction information, an MIS can include software that helps in decision making, data resources such as databases, the hardware resources of a system, decision support systems, people management and project management applications, and any computerized processes that enable the department to run efficiently. MIS are designed for ease of any type of business or organization. Now almost every kind of organization has its own MIS. It is a suite of software applications that together make it possible for people or businesses to store, modify, and extract information from a database. There are many MIS places in your everyday life like in banks, hospitals, hotels; colleges and universities have their own management system. MIS are helpful for organizations and institutes. Universities have their own managements systems. There are many departments in a university like examination, admission, registration, administration, hostel, finance. All these are required a proper and complete management, so for this reason MIS are designed to manage these departments. Every department has its own MIS which is specifically designed to handle its operation like data retrieval, storage and modification. Whenever the internet came every organization and institute is try to provide the better facilities through making their MIS online to satisfy their client. Todays every company and organization is moving on internet and building database in such a way that provided the better facilities and interaction to their clients as compare to past. Library information system (LIS) LIS are designed to record and maintain the information related books and activities of library. LIS plays unavoidable role in a university library because it provides the information about all types of books in a better organized manner. LIS keeps the track of all the books in a university. It contains records of each and every book and the members who borrowed the book. In other aspects LIS also serves as an accounts manager for library. It tracks and calculates possible fines, takes care for member securities and when required provide monetary calculation related to library to the university accounts office which manages university financial resources. The LIS is always ready to share data with the university central accounting system [1]. Traditionally manual file based systems serve as LIS in universities. Registers and note books are used to maintain records for available and borrowed books. A university having multiple departments normally has requirement to maintain a separate register for each department and sometimes for each session a department may demand to have a separate register. This builds a large register set which is very difficult to maintain and is highly error prone. In such scenarios to issue book needs much effort whereas at the same time to calculate and report monetary issues, and perform other managerial tasks may sometimes take days or even weeks. The library user pool is mainly the students and the university staff. Library cards are issued to each of them. When Students or staff members borrow books from library, the librarian needs to search for the relevant register and enter the information of borrower and the borrowed book on relevant page. At the same time he needs to assure that the member should be clear from library issues, the book can be borrowed and it is also his responsibility to provide the member with his time to possess the book. Sometimes members are not known to timings or forget to return the book in time even when they want to return it. In manual management of LIS it is not possible to regulate to process of warnings for library members when their returning dates are near to come. On the very other side where student are staff also feel very difficult to integrate with such system because the most irritating part of this system for them is the time took on any process, either to borrow book or to search book or most irritating when they need their clearance from the library and it take a day to just get a single signature. The only solution to these drawbacks of manual LIS lies in automation of the library information system by computerizing it and integrating with other management systems of a university. By automation of LIS it means to develop a fully computerized system that serves to enable the complete library operations through computers. Automations have some traditional advantages over manual systems like no paper work required and easy to backup, higher consistency of data and it is possible to schedule those tasks which are somewhat impossible in manual systems. Similarly, in context of LIS automation results in ease of library administration, control and tracking processes. The convenience of both librarians and members who use library is increased due to higher decrease of time. It becomes a matter of minutes to perform managerial tasks and estimating monetary matters and many other issues which are never resolved in manual systems. It all becomes wonderful when automation also occurs in making the system online, because through this the system becomes available for 24 hours 7 days a week. It means the student has no need to go through so many book racks to find a book and does not need to go to library to reserve a book. He just needs to go there and get his reserved book. He must not be worried to remember the returning date because he knows that he will be sent an alert indicating the return date of the book he has borrowed. So all this becomes more and more convenient with the increased automation in the process of LIS. LIS Automation for university means to develop a fully computerized system that enables the complete library functions through computers. The system provides the basic set of features to add/update/delete member, add/update/ delete books, search for books, and manage check-in / checkout processes. Automated LIS is designed to meet the needs of libraries both large and small, not only to meet the traditional requirements of a resource centre, but also able to keep track on borrowed books in university. This system is very helpful for university staff, student members and librarians because this system is also interact with the bar code reader and magnetic card reader. When the student and staff members are registered in university they are issued library cards from library. Through this card they can borrow books from the library. When they enter in library their cards are identified through the magnetic card reader and barcode reader is helpful for them in searching the books. The automation of LIS lessens human efforts in university. The maintenance of the records is made efficient, as all the records are stored in the database, through which data can be update, delete and retrieved easily. It also reduced the chance of frauds and errors because all things are computerized. Existing solution EXISTING SYSTEM ARCHITECTURE The existing LIS in university is completely manual and file based. It contains the records of all books and members of the university so this builds a large register set which is very difficult to maintain. In this situation to issue book, return book, fine management, catalog management and member registration verification need much effort whereas at the same time to perform other managerial tasks may sometimes take days or even weeks. C:Documents and SettingsATIFADesktopuntitled.JPG Figure 1: Manual Library System In this system, it is also very difficult to control the process of warnings for library members (student and staff) when their returning dates are near to come. Student and staff members are also faced the problem of book search and borrow. And when they need their clearance from the library, it also takes a day to just get a single signature. In existing manual system all the library members (librarian, staff and students) are faced a lot of difficulties when they are going to issue book, return book, fine management, book catalog management and member registration verification. Issue Book To issue a book in an existing system is a big matter because when student and staff members borrow books from library, the librarian needs to search for the relevant register and enter the information of borrower and the borrowed book on relevant page. At the same time the book can be borrowed when librarian is assured that the member should be clear from library issues. Return Book To return a book process is also very irritating and time consuming as well as the issue book process. Sometimes members are not known to timings or forget to return the book in time even when they want to return it. In this system it is not possible to regulate the process of warnings for library members when their returning dates are near to come because this system is completely manual. Fine Management Because the existing LIS in university is completely manual so the fine management is also a tuff and time consuming task. It is very complicated to tracks and calculates possible fines, takes care for member securities and when required provide monetary calculation related to library to the university accounts office which manages university financial resources. Book Catalog Management University central library contains the records of all books related to its every department and its LIS is manual so the book catalog management is not easy. When members returned the borrowed books then there is no proper management to see is the book is placed at right location or not. To add, delete and search the required book is time consuming process because librarian needs to arrange the proper registers for this. Member Registration Files and registers are used in university for member registration, so that all the student and staff members records are saved on them. When the members information are added, deleted and updated the entries in associated registers are also updated which required a large amount of time. Student and staff members registration information is also required to LIS to issue the library cards of each of them. Library staff adds all these information in registers to keep the track of members of LIS so this is also required enough time. The complete functions of existing system are shown in figure. It represents the overall functionality of library in university. Proposed System Architecture Scope of Proposed System Library System is a library information and knowledge management system. This application is used to support a librarian in managing a book library in university. The system is designed to provide the basic set of to add, delete or update members, add, delete or update books, and search for books processes. The main focus of this system is to reduce human efforts. The maintenance of the records is made efficient, as all the records are stored in the database, through which data can be retrieved easily. Some of the other specific objectives of the Library System are as following: Minimum amount of work should be required. Special hardware such as bar code reader and magnetic card reader should be used with this system for security and efficiency. Permanent storage of data should be done easily by using the database instead of the registers. It provides the interface for librarians to interact with the backend library database. It provides the interface to add, delete or update new student and staff member in the database. It also provides the interface to add, delete or update book information in the book database. GUI to search for a book based on user inputs. It provides the interface to check out of books which are issued by student and staff member. It also checks in the books which are returned by student and staff member. Calculate and manage the record for fine. Provide a facility to automatically send reminders to university members when required. Product Perspective The Library System is developed for the library to help the staff members, students and Librarians to search and borrow books. The system provides information related to books to the members of the library. The Librarian can keep the tracks of books updated all the time so that the student and the staff members get the up to date information all the time. This system is developed to interact with its users like librarian students and staff members of the university. The system has to interact with other systems like: Library System, Member Registration System, Catalog Management System, Accounting System, Email System, Fine and Reminder Bot System, Purchase Management System, and Online Client System of university. Software Requirment specifications Introduction The library system provides the information about the books available in the Library. It provides different type of services for its users, such as reserve book, renew book, check items, and check fines and view hold requests in the account. The following requirements specifications and required functions of the Library System are given below: Library members The Library has university staff and students as its members. All members must be registered with the library and issued with Username and Password for accessing their account in Library System. Book issue and return When a library member login via his account he can issue books. The system restricts the borrow limits as this a staff member can borrow up to 4 books up to 4 weeks and a student can borrow up to 2 books for up to 2 weeks. When a book is borrowed or returned by the library member, the information should be captured in the system and the account of the member should be updated. Only book items can be issued in library, currently journals and magazines should only be read in the library. Fine calculation and send late book reminders The system is able to calculate fines and send reminders to members automatically. When a return date is overdue, information about overdue items, overdue days and accumulated fines is sent to the user via email. Adding and deleting books Librarian is responsible to maintain the information about catalogues and library members. He can add, update and delete books in database. Querying to find books The system provides search functions to library members they can search a book through online catalogue. All book items in library are searched either by ISBN No or Author. Report generation Library system generates reports for the system administration automatically. User characteristics The main users of the system are student and staff members, librarian of the university who maintain the system. It is assumed that the members and librarian have the basic knowledge of internet and computers. This system ensures that the system administrator have enough knowledge of the internals of the system such as he is able to correct the small problems like disk crashes and power failure. The proper GUI, users manual, online help and the guide to install and maintain the system must be provided with the system to educate the users. System Constraints All the users information must be stored in a database that is accessible by the library system. The library system is connected to the university server and that is available 24 hours. The library system is accessible for the users who have internet connection with their computers in university. The Member Registration System, Catalog Management System, Accounting System, Email System, Fine and Reminder Bot System, Purchase Management System, and Online Client System are connected to the Library System and the database used by these systems must be compatible with the interface of the System. The users login into Library System through their username and password which they are assigned. System Assumptions and Dependencies Enough knowledge of computers should be required. To access the system online in university internet connection should be required. Library system can access the university student database. Microsoft SQL Management studio 2005 to store the database. To developed the product by using ASP.Net and C #.Net. Requirements For the Online Table Booking system following features will be provided to the customers related to table reservation. Students/Staff Requirements Search Books Search Issue Book by Student/Staff ID Search Reserve Book by Student/Staff ID Get Fine by Student/Staff Get Total Fine for Student/Staff Analysis Models Design Models The Physical design of the system is developed from logical design, which is completely based on logical design [9]. It is completely based upon the relationship among the data rather than the storage structures. The systematic organization of data which is used in automated system makes a database different form of record keeping [10]. While designing the database for the system, theses facts such as data integration, data sharing, no redundancy and data consistency have been taken care. Physical design consists of Table Design and Specifications. Database Physical Schema Tools and Technologies Tools and technologies refer to the text which describes the used and required technical specifications of the designed system. The system is a kind of information system which is targeted to be an n-tier application without losing desktop application style. The requirement to be n-tier and also to have a desktop application demands for a technology combination where following areas can be integrated to build up the system. Centralized data source Interoperability Ease of use Integrity Availability Integrating with the existing system Rapid development All these areas have their own constraints, some of which make it difficult to introduce them in a single system. While our technology study our team was working to find a solution that can help us in such a situation. In earlier stages we had an idea to provide a client server application where the data source will be centralized server and clients will call that for data services. This idea could have worked if the available time was not very short, so we left this option. Later we found a better solution to design a web application that provides the required services and we started working upon that but soon our team found a complete solution that had solved our problems. Creating a web application has some constraints which are number 2 and 3 in the above list. These constraints were removed by the new solution where we shifted to service oriented architecture and used a protocol based approach to provide data to our client application; this architecture is named as SOAP Service Oriented Architecture Protocol. Deciding finally on our system architecture we decided to use the same database management system, which is used by the university website. This decision was to support to integration of the new product with the old system and for the same reason we had used the web technology used by the website. One of the targets of the system design was to lower the cost for the deployment of the developed system, because it will only add up with the existing system and no changed will be required. On the other side no need to buy or manage or maintain any new server. It will just require simple system with required software packages installed and the system will start providing its services. Normally there will be no need to configure the client side application. The coming text will describe the software technologies which were used to design the software with their justification to use them. Server Side: Server side was build with following technologies: ASP.NET The reason to use this web technology is already described above. The website for University of Sargodha is designed using ASP.NET and is currently active and working. So to support integration with the existing web application our team decided that we must use the same technology there are using. It is very famous Microsoft technology and is used to build any kind of web solutions from simple personal websites to n-tire enterprise level web application. In comparison with other similar technologies like PHP and Java Server Pages it focuses on development of quality products rapidly. MSSQL Server 2005 MSSQL server is a database management system which is a product of Microsoft. It is very famous with medium scaled data driven business solutions. It supports client server architecture and at the same time it also provides parallel user access to the databases. Such kind of DBMS also sounds good for web technologies. In normal practice MYSQL another DBMS is used more frequent on web due to the compatibility of MYSQL with LINUX / UNIX based operating systems. MSSQL is only compatible with Windows based operating systems. Similar is the case with ASP.NET, from the introduction of MSSQL 2005 and ASP.NET both are known to be the best for each other for web technologies. The university website is also using the same combination and that is why we also are using the same technology. Web Services Web Services are a technology which is derived to provide a central source not only to provide data but also to receive data. There are many pros when we talk about this technology. Its expandability is inherited from web. Similar to a website a web service can also have unlimited number of clients, only constrained by the hosting server of the web service. This was the biggest reason to use web services in the designed solution. It does not cause change in the existing architecture of the system, but just add to the existing system. This kind of integration ability was very useful for the designed system. Web service use a protocol named SOAP which uses xml to transfer data to/from the clients of the web service. The global nature of xml enables another option in web services, that they do not restrict their clients to be the one kind of system. Any system, which can generate the kind of xml schema required for a web service and can receive and interpret the returned xml document from the web service, can call it. Another reason that made us to use the web services was the ease to call them, we called them from our desktop application where they worked just like normal routine calls, and it made it easier to proceed with the same system. Crystal Reports This technology refers to generating reports from vast data to support business decision; in our system we used crystal reports to generate several reports which are help full in providing the results regarding the library information to higher management. The reason to use this technology was to make it easier to generate reports. We concluded the ease with crystal reports from there automatic database interpretation and retrieving objects from the database schema to design reports. Reports designed in crystal reports are also not very specific to IT; their design can be modified by any designer so university is not constrained to us for required change after the deployment. Client Side: .NET The name Dot Net refers to a Microsoft technology framework which is intended to design managed and secure applications. The reason we used this framework was the ease and speed of development which is supported by .NET. The application, build on .NET assemblies needs .NET to be installed on the system where the application has to run. Our client application requires pre installation of .NET on the hosting system to run on it. The application was built using .NET 2.0 so at least .NET 2.0 or any newer version can support the application. Visual C# It is a programming language with is supported by .NET development environments. The reason to choose this language was to focus on the functionality of the system rather than bug fixing. Communication Method The server side of the system has to be deployed on a web server with the existing website. So considering this the system uses Ethernet as the communication medium to send and receive data from web services. To call/discover the web services the system uses HTTP protocol to send and receive requests to web services. Browser Technology While developing the web based interface, we have tried to make it well formed on most famous browsers which are IE6, Firefox 3.0 and Chrome 1.0. In all of these browsers it has almost similar and well formed look and feel. Another browser is targeted theoretically, which is safari. But this browser is not tested. Regarding to studied problems most of the layout is static which has a complete compatibility in all browsers. No layout uses absolute or relative positioning. System Evaluation introduction The library information management system is designed and developed using the client server architecture and is implemented
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.