Online trading system use case diagram
The importance of web system reuse has been increased with the revolution of the internet and building a reusable web system become a new challenge. Here, a systematic approach online trading system use case diagram building a reusable web system is presented. This approach contains two concerns; first is about web system architecture since it builds a reusable Model Driven Web Engineering MDWE through integrating component-based architecture approach with service oriented architecture approach.
Second concern is this approach involves reusability in the early development phases regardless of the development methodology. A case tool was developed for modeling and storing analysis and design artifacts, associating these artifacts with its related proven tested implementation codes, also with its related test cases in order to maintain these reusable assets in a central library, this tool also helps to find out whether the acquired assets for building new MDWE are available or not.
Model Driven Development MDD is a software development approach that addresses a model in each development process with a high level of abstraction, it depends on the separation of concern principals and presents semi-automation methodology for generating implementation code Moreno et al.
Model Driven Architecture MDA is a software design approach that presented by Object Management Group OMG and has been proven success in building many application domains, it uses a platform-independent modeling language to express a model in each online trading system use case diagram process Moreno et al.
The MDWE models different web application concerns such as analysis, content, navigation and presentation concerns.
Each one of these concerns have separated model, all of these models are integrated in order to be transformed into an implementation codes Koch et al.
Software reuse is the process of using pre-defined software components to build a new software system Das, Developing web system is a complex and time consuming task, also reusing web system is more complex due to the navigation, interactivity and presentation of web application.
Web system reuse has two fold: Software reuse plays an important role in the software development market due to its promising benefits, such as increasing software productivity and quality which leads to a powerful competitive advantages, besides cutting down the development costs through minimizing development staff and the time consumed in the development tasks, in addition to reducing process risk through using proven tested components De Almeida et al.
There are several approaches for reusing software system Keswani et al. Software product line approach is a software reuse approach in which a set of systems and components are integrated together to solve a specific problem domain and present the final software product Keswani et al. Another approach is design patterns, which are software reusable solutions for commonly occurring problems.
Code generation is a software reuse approach that uses a set of tools to generate software code depending on a set of pre-defined problem domain or entity relationship diagram.
Content Management Systems CMS became one of the most commonly used approaches which uses open source software to build web system from pre-defined libraries and components in less time and cost Mascena et al. Most of the recent software reuse approaches are not flexible enough to meet the needs of the various industrial situations Das, They lack the formal documentation for reusable assets which lead to an increase in maintenance and modification costs and the process of integrating with third party component became complex as a result.
Software reuse approaches does not integrates technical reuse with none technical reuse as they are reused technical assets like objects, code, component and functions separately from none technical assets like analysis documents, modeling artifacts, management plan and risk analysis besides reuse test cases is not investigated. Code generation approach is limited to a small number of business domains online trading system use case diagram is related to specific design pattern; it also generates unused code since generating tools depend on specific templates, also most of reuse approaches does not provide a way to find out whether the acquired components are available or not De Almeida et al.
Navigation, interactivity and presentation reuse for a web system is still an emerging discipline, but recently code generation tools tries to generate navigation and presentation for small web system without formal documentation.
There are many open source content management systems that help to build web systems, but they require trained personnel who know how to use it, besides learning the web development technology, also the requirements have to be adapted to reflect the functionality.
It also lack of control over functionality and performance Sommerville, The pre-defined libraries and components in the open source CMS makes it easy for attackers to hack it. In this study, an approach was presented that helps to develop a reusable MDWE through integrating component-based architecture with service oriented architecture, the reusable MDWE was modeled using UML and UWE, also a case tool was developed to model and store the modeling artifacts with its related implementation code and related test cases besides the ability to search for the stored reusable assets.
Several approaches were presented to tackle the challenges of software reuse range from reusing system objects and methods technical reuse to reuse the whole software environments none technical reuse. Ahmed presented an approach for integrating the development environments into a case tool, this approach focused on reusing UML artifacts and the early stages artifacts.
Robinson and Woo presented a simple approach to reuse software artifacts through an automated reuse online trading system use case diagram tool by helping analysts to reuse UML sequence diagram to retrieve similar and related artifacts for reuse.
Rubin and Chechik presented an approach refactoring existing, closely related products into product line representations, this approach based on comparing and matching the related artifacts and merging them into a product line engineering adoption.
Model Driven Web Engineering Reuse MDWER approach is a web system reuse approach which uses the separation of concerns and MDD principals to tackles the different web application domain concerns analysis, content, navigation, interactivity and presentation during the development process. This approach integrates component-based architecture approach with service oriented architecture approach to build a reusable Model Driven Web Engineering MDWEthis model is consists of a set of integrated components that managed by a set of integrated services.
Services are integrated with each other or components through a contract layer, this contract responsible for interacting the service with its related components or other services; on the other hand, component-based contains a connectors that shows how this component interact with the related services or components. Vertical reuse shown in Fig. Application domain B and application domain c are consists a set of services and components integrated with each other's like application domain A.
Application domain D reuse a set of components and services from application domain A not all services or components service A1, A2 and A3 and components component A1 and A2 ; in application domain D reuse part of application domain A not the whole model as shown in Fig. Horizontal reuse shown in Fig. This approach does not support auto-generation of implementation code to avoid two problems of code generation approach, they are the generation for unused code online trading system use case diagram using a specific design patterns.
The MDWER enables developer to build their own specific web application domains and reuse it as needed through allowing developers to convert the MDWE modeling artifacts into implementation codes depending on their code standards and using their own development methodology. A case tool was developed which represent a software repository or central library, this case tool does not generating code; it only stores analysis and design documents online trading system use case diagram related modeling artifacts, related proven tested implementation codes and related test case reusable assets ; Furthermore, it allows participators to: Practice software reuse to build a web system must be start from the early development phases so that MDWER adds an early phase in the web system development process called "Initiation phase" thus MDWE development phases become five phases: The initiation phase in addition to the four commons analysis, design, implementation and testing.
The MDWER uses Standard UML model diagram to model the initiation phase, whereas, a modified version of UML-based web engineering framework is used to model the analysis and design phases with difference concerns analysis, content, navigation and presentation Elminir et al. The MDWER does not focus only on reusing web system analysis and design artifacts, but also relates design with implementation codes and test cases via a platform and programming language independent case tool.
A module is a version of UML and UWE artifacts that model specific business requirements exists in a specific web application domain, it also uses package diagram to online trading system use case diagram business requirements at the initiation, analysis and design phases.
A domain is a container for a group of modules that defines a specific web application domain; a domain also helps to maintain the relations among the initiation, analysis, design and testing phases. This study breaks web system vertically to help in application domain reuse and horizontally to help in component reuse. So, any application domain can be developed by reusing all the phases initiation, analysis, design, implementation and testing previously developed or by modifying the existing assets to match new web system requirements and if a domain or a module is related to another one, then both of their assets must be reused.
The MDWER involves reusability in the early development phases through starting the development process with the initiation phase which responsible for determining which assets will be developed for reuse, which will develop with reuse and which will not be reused any more.
Domains and modules are categorized into three types:. A list of steps was determined to evaluate software reuse: Knowledge reusing is considered one of the major factors in software assets reusing methodology as it represents the business online trading system use case diagram. User process, browse and server process use case, also it uses a standard UML use case documents to provide more details description, these documents helps to extract test cases scenarios needed in the test phase.
According to UML-based web engineering framework, activity diagram is used to provide more detailed description of the related use cases using four types of activities: Browse, client side, server side and outer side.
The output of this phase is a set of UML-based web engineering use cases and activity diagrams Elminir et al. The MDWER uses UML-based web engineering framework to model domains and modules which were analyzed in the analysis phase; online trading system use case diagram result is a set of artifacts that will online trading system use case diagram stored in the presenting case tool, this framework models three different web system concerns.
Conceptual model, navigation model and presentation model Elminir et al. Conceptual model expressed in standard UML class diagram; navigation model expressed in a set of online trading system use case diagram classes, direct navigability, index, guided tour, query and menu stereotypes ; presentation model expressed in a set of stereotypes presentation page, presentation group, presentation class and user interface elements Elminir et al. In this phase, according to MDWER, online trading system use case diagram are translates the MDWE artifacts which were modeled using UML and UML-based web engineering in the previous phases into implementation codes using an object oriented programming language, their code standards and their suitable design pattern.
Depicts to MDWER, the implementation code is stored in the developing case tool after verifying and fixing bugs related to this code. Test cases are used to verify software business scenarios against implemented codes.
They are extracted from use cases and their related activities and are organized in the same domains and modules of the use cases from which they were extracted. A single use case may be related to one test case or more, these test cases are reused when their related use cases or activities are used to develop with reuse. We does not reuse all analysis and design artifacts, but we defines which assets in each phase can be reused as follows:.
The MDWER approach was applied on three different case studies with different business domains to show how this approach helps to increase productivity and quality through applying reusability online trading system use case diagram long as we builds a new web system.
This is a portal web site that displays categorized news politic, sports, economic and technology. This portal has three actors, visitor can view all news lists and read news details, registered users can browse all the news and news comments and portal admin can manage news and news category.
A daily email that contains the latest news is sent to registered users based on their favorite news category. It breaks web portal into four domains news, security, mail list and email service. The news domain contains news, comments, news comments categories and news category modules. Initiation phase determines which domain or module will develop for reuse, which will develop with reuse and which will not reused any more.
In this case study, we do not have any modules or domains that were modeled since we begin to apply this study, so the all domains and modules will develop for reuse. For each domain or module that will develop for reuse start to model online trading system use case diagram analysis phase using UWE as shown in Fig.
Activity diagrams are modeled as needed to describe a specific use case; here four activities are shown in Fig. In the design phase, the conceptual model contains entity object model, extended object model, data provider model and rendering model; they are modeled using standard UML class diagram as shown in Fig.
Navigation space model shows which news portal objects can be visited from three actors anonymous, user and administrator perspective and online trading system use case diagram which property and methods can be accessed as shown in Fig.
Static online trading system use case diagram for news portal web site is modeled as shown in Fig. E-trading web based application: Online trading system use case diagram is a trading system in which customer can login in two steps. The first will be using a username and a password for authentication then using One Time Password OTP generated with a token to verify the authenticated user. After login, customers online trading system use case diagram submit orders to buy or sale stocks or browse news about current stocks.
When buying stocks the E-trading web based application validates customer balance via third party system to check if the customer balance allows him to buy or not. Customers can browse their orders status. System administrator adds new customers and news about stocks to the system.
Initiation phase breaks E-trading web system into five domains; security, stocks, news, customers and stock news. Security domain contains three modules login OTP and registration.
Login module is developed with reuse from news portal web site case study without any modifications as well as the news module. Registration module in security domain is developed with reuse from news portal web site but with some modification, other modules will develop for reuse. In the analysis phase, use case diagram for login and news modules are modeled the same way as the news portal web site as they develop with reuse. Registration module has some modifications from the news portal web site as shown in Fig.
Other modules develop for reuse. Activity diagrams related to login and news modules are modeled in the same way as news portal web site, the authentication activity diagram in Fig. A new activity diagram for validation token and buy stock use cases are modeled in Fig. In the design phase for the E-trading web based application, there is no need to model extend object model, login and news modules are developed with reuse from news portal web site online trading system use case diagram any modifications.
Figure 19 - 21 show design phase for E-trading web based application where registration module online trading system use case diagram developed with reuse and modified by adding and deleting methods or property to classes. Navigation space model shows which E-trading web based objects can be visited from three actors anonymous, customer and administrator perspective and determines which property and methods can be accessed as shown in Fig.
Login and news module are modeled the same in news portal web site for three actors as they are developed with reuse.