Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 18 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
18
Dung lượng
1,18 MB
Nội dung
Development Framework and Methods Nguyen Manh Hung GCH15283 Pham Thuy Duong Table of Contents DSDM Atern definition 1.1 The DSDM Atern approach to RAD 1.2 The DSDM Atern philosophy 1.3 The DSDM Atern Principles 1.3.1 Focus on business need 1.3.2 Deliver on time 1.3.3 Collaborate 1.3.4 Never comparison quality 1.3.5 Build incrementally from firm foundations 1.3.6 Develop iteratively 1.3.7 Communicate continues and clearly 1.3.8 Demonstrate control 1.4 The DSDM Atern life cycle 1.5 The DSDM Atern Products 1.6 People 1.7 Practices 1.8 Advantages of DSDM Atern 1.9 Disadvantages of DSDM Atern Review the ‘high level requirements’ Use the MoSCoW rules to priorities the requirements 11 The role of the Data Controller within the organization 12 Legal, social, ethical and professional issues that W2L may be faced with 13 5.1 Legal issues 13 5.2 Social issues 13 5.3 Ethical issues 13 5.4 Professional issues 14 Produce a management summary outlining the purpose of the BCS Code of Conduct 14 6.1 Public Interest 15 6.2 Professional Competence and Integrity 15 1|Page 6.3 Duty to Relevant Authority 15 6.4 Duty to the Profession 16 References 16 DSDM Atern definition DSDM is an agile method that focuses primarily on the project lifecycle The DSDM (Dynamic System Development Method) was created in 1994 and serves as a common framework for Rapid Application Development (RAD) (Business, 2018) DSDM provides four-phase framework: Feasibility and business study, Functional model /prototype iteration, Design and build iteration and Implementation 1.1 The DSDM Atern approach to RAD First, it will provide a framework for RAD in a controlled project It will still use the old principles of RAD, in addition to using PRINCE2 to support in project management One basic assumption of Atern DSDM is that nothing can be perfect at the first attempt But it’s a rule of thumb that 80% of the solution can be found in the remaining 20% of the solution The basic problem of RAD is that it is unlikely that the solution user can plan to get all the things going So the problem of changing work methods Second, User must be a part of the development process All stakeholders are fully responsive, including: User, developer, Project Manager and QA Personnel In detail, it answer to the needs of Developers to Freedom to code, to test Do what user needs, to provide project on time, on budget for Project Managers To provide good quality product for QA personnel Final, The DSDM approach was based on principles we will discuss it in the section below 2|Page 1.2 The DSDM Atern philosophy Figure 1- DSDM Atern philosophy (Source: https://www.agilebusiness.org/content/philosophy-and-fundamentals) Any project must be aligned to clearly define the strategic goals and focus when delivering real benefits to the business It is important that we understand the business and strategic goals of the customer Based on that you can develop a system to meet their actual needs and provide value to the customer 1.3 The DSDM Atern Principles 1.3.1 Focus on business need We can understand how it affects the delivery of what the business needs when needed The real business priorities must be understood with a rational business case To implement this principle, the Atern team will: understand the business priorities, truly set up a sound business case seeking continuous business sponsorship and commitment to ensure the subsystems can use the dark minimal The specific business role in Atern, combined with the business of creating platform products and key technologies such as Time boxing and MoSCoW optimization, allows Atern teams to implement this principle 1.3.2 Deliver on time Time boxing is scheduled first and set timeframe The date never change; the features vary depending on the business priorities, to achieve deadlines 3|Page 1.3.3 Collaborate It requires teams to work in a spirit of cooperation and positive commitment Collaboration includes Collaboration that promotes understanding, speed, and shared ownership Ensure teams are empowered and include business representatives 1.3.4 Never comparison quality Solutions must be "good enough" and put the quality first During project development, continuous testing and quality must be in place at the beginning 1.3.5 Build incrementally from firm foundations Businesses can take advantage of the work before the product is completed based on incremental In the process of working and developing, it encourages the confidence and feedback of the stakeholders To implement this principle, the Atern team would: Strive for business benefits soon Continuously validating the correct solution being built Formal assessment of priorities and viability of on-going projects with incremental allocations 1.3.6 Develop iteratively Accepting that work is not always right and you must use time boxed to make sure the solution you are using is the right solution 1.3.7 Communicate continues and clearly Use supported workshops, daily software, modeling, styling, presentations and direct intimate communication 1.3.8 Demonstrate control The team should monitor and control the progress of the project as appropriate and the team should continuously evaluate the project control based on business objectives 1.4 The DSDM Atern life cycle DSDM Atern different from other agile approaches as it covers the entire lifecycle of the project and not just software development (where Scrum dominates) It combines the areas of project management and provides mechanisms to ensure that the benefits of the project are clear, the proposed solution is viable and has a solid foundation in place before the start 4|Page Figure 2- DSDM Atern Life cycle (Source: https://www.agilebusiness.org/content/lifecycle) Pre-Project: This is the first step of the project, by agreeing the terms of the referenced work Feasibility phase: A short assessment of the feasibility of the business case and the feasibility of the work Foundations: This is an important stage in ensuring that the project is well understood and that the scope is good enough at a high level Exploration: The developmental stage is repeated continuously enabling the team to develop and expand fully functional based on business objectives Engineering: Repetitive development phase, where the solution is designed to be deployed for release Deployment: For each Increment (set of time boxes) of the project, the solution is made available Post-Project: Assesses the accrued benefits 5|Page 1.5 The DSDM Atern Products Figure 3- DSDM Atern Products (Source: https://www.agilebusiness.org/content/products) The Terms of Reference is a milestone product It is a high-level definition of the over-arching business driver for, and top-level objectives of, the project 1.6 People Figure 4- DSDM Atern People (Source: https://www.agilebusiness.org/content/roles-and-responsibilities-0) 6|Page Business Sponsor: Possession of business case Ensure funding and resources Ensure effective decision-making and rapid transaction Business Visionary: Entry point for project management High level planning Track progress, resource availability, project configuration, risk management, and escalation issues Business Ambassador: Track progress against vision Owning a business vision and impacting on broader business changes Contribute to key requirements, design sessions, and reviews 1.7 Practices Iterative development Figure 5- Iterative development (Source: https://www.agilebusiness.org/content/iterative-development-0) Prototyping is key to this Time boxing The stages of a Time box: Figure 6- Time box (Source: https://www.agilebusiness.org/content/timeboxing-0) Facilitated workshops 7|Page It is a technique that has been validated by DSDM, in essence it is like a JAD discussion, and it is used whenever a decision is made by a person It is mainly used for high level requirements MoSCoW prioritization Based on the MoSCoW team can determine the priority of what to based on the criteria: must have, should have, could have and won’t have DSDM Atern’s top tips for prioritizations: Agree what the priorities mean early in the project, Use all the priorities, Challenge Must Haves, Control the number of Must Haves and Priorities everything 1.8 Advantages of DSDM Atern Users are more likely to claim a solution The risk of developing the wrong solution is greatly reduced The last solution is more likely to meet the real business requirements of the user Users will be better trained because their representatives will identify and coordinate training on demand Deployment is more likely to take place smoothly, because of the cooperation of all stakeholders throughout the development process By using iterative development, Atern involves the end-user of the solution throughout the life of the project This has many benefits, for example: DSDM Atern specifically addresses many of the issues that cause projects to struggle or fail For many organizations, the ability to deliver consistently operating solutions, in terms of time and budget, is considered an important step forward and this provides a perfect result for Atern More example: When the team develop W2L System, they can use MoSCoW prioritization to identify what function is must have, what function is should have, could have and won’t have From there, the team can save time and reasonable time allocation One more example: by using DSDM Atern life cycle, the team can change or expand the system if the business objectives change as it happens continuously and is monitored 1.9 Disadvantages of DSDM Atern In addition to the above advantages, DSDM Atern still has some disadvantages: There is no more time for planning, design and documentation Only senior programmers or project managers are able to make any necessary decisions during the development phase (Vethics, 2018) Projects can easily break down if customers are unsure about the end result they want 8|Page Review the ‘high level requirements’ B1.1: Identify any of the requirements that you feel are not appropriate high level requirements, giving your reasons for this Before going into the analysis we will say through the definition of High Level Requirement We can simply understand the High Level Requirement as an overview of the system, it can be a major function or a business process Ben Brode (CFO) - The site should be easy to use and quick to load - The look and feel of the website should resemble the healthy lifestyle we are selling The above requirements can be seen as non-functional requirements so it cannot be called High Level Requirement The purpose of these requirements is to help improve the website during the run, assist the customer in interacting with the company through the website perfectly Laine Conway (Marketing) - We must ensure that people who use the website can register with their e-mail address and log in so we can have their details to send them marketing materials As the above mentioned, whether customers log in or not, it is a functional requirement but it is very detail (using email to register) so it will be not appropriate in this case So asking customers to log in by email to support marketing is just another option that the company should Consider whether to agree or not so it also cannot be considered a High Level Requirement Paige McMan (Franchise owner) - My center has links with lots of charities and it would be great if the new system could communicate with theirs in a way If not, I need to be able to at least keep track of charity events we are involved in (when, where, who the charity is, how proceeds are managed, etc) Based on business case we can see the purpose of this system is to help the company manage the management of the course, in addition to the management of the sale of food to the students so the contact with the Charities is just a sub-requirement for the system so it is not considered a High Level Requirement - Could I ship online orders in my area and get the money for those sales? It's not a major function of the system so it cannot be considered a High Level Requirement Sue Thompson (Franchise owner) - Clients can use the system like Facebook, to communicate with each other and build an online community They should be able to find out who are in their classes and contact those people 9|Page It is not considered a High Level Requirement because the communication or exchange of participants is not an important function of the system It is just a social request for students to provide more information about the class and the students In addition this requirement is nonfunctional requirement B1.2: Rewrite, and add to, the list to end up with a total of 10-12 high level requirements that you feel are required for building the system Briefly justify the need for each of your high level requirements against information you have gathered from the case study Based on the business case given and the requirements of the proposal, I have listed the High Level Requirements that I consider necessary to build the system - The system must be display all the information about the course and healthy product It is the secret of a web site, the purpose of this site is to provide information about the course and the customer, so it should be in full use of all information Customer information such as name, price, place of origin, details, teacher - Customer can browser product We can imagine how difficult it is for us to find a branch of a tree in a tree We will have to find each tree branch, each tree it will take a lot of time and effort Instead we can get help from someone who has a deep understanding of what we need to find or at least they this can help to narrow the scope of the search In this case we can similarly recall how difficult it would be if we were looking for a product in a store When there are tools to help us search or sort the product, the choice will be much faster So the search function is extremely important in this system - The Manager must be able to see management reports of online product sales, and compare these to sales at the centers themselves If the above requirements are provided for the purpose of providing and assisting the customer in the search, this request is made to assist in the management of the store business It helps the manager know the store's situation, and then makes the correct decisions for the store - Customer can order Product It is easy to explain because a Shop website must be able to order product - Customer must be rating and send feedback for manager After Customer get the product they must be rating and leave comment for the Shop, the Manager will be known customer satisfied or not, from that manager can evaluate the staff who sell or ship for customer - Customers pay bills in many ways: bank, direct, visa, PayPal 10 | P a g e We can imagine how inconvenience if we pay the bill but not have cash in wallet It is the better way to help customer to pay when they can pay by internet or bank transfer - The system should allow centers to order products for their local stores It is obvious to help local stores grow and have supplies - Distribute products to affiliates Each affiliates can be order product from center to sell, it is the way to business - Affiliate can order Marketing Materials - Communication between customer and manager or staff Customer can ask some question about products or service All the requirement that I listed above will help the company build a suitable system Use the MoSCoW rules to priorities the requirements ID 10 High Level Requirement The system must be display all the information about the course and healthy product The Manager must be able to see management reports of online product sales, and compare these to sales at the centers themselves Affiliate can order Marketing Materials Customer can Order product Customer must be rating and send feedback for manager Customers pay bills in many ways: bank, direct, visa, PayPal The system should allow centers to order products for their local stores Distribute product to each affiliate Communication between customer and manager or staff Customers can be browser Product Priority Must have Should have Should have Must have Could have Must have Could have Should have Should have Must have The reasons for my decision: “Must have” At a minimum, the site should be able to display most of the information the customer wants and customer can Order product or service from shop In addition, Customer can pay their bills in many way (direct or indirect) and they must be able to search product or service Customer can Order product: One of the main function of commercial web is the ability for customer to order product or service The system must be display all the information about the course and healthy product: Is a site if it cannot display information to the customer then it cannot be a website 11 | P a g e Customers pay bills in many ways: bank, direct, visa, PayPal : After customer buy product or service instead of pay direct, they can pay bills by many way like: internet bank, bank transfer… Customers can be browser Product: As I explained above, the search function is very important to be attached to the system so it must be in high priority “Should have” Next we should care about the affiliate, they can order marketing material from head office as well as distribute product to each affiliate In addition, we should also take care of report management As very important but not critical features to include in this first release One more function we need to take care is the way to communication between manger and customer or staff and customer The Manager must be able to see management reports of online product sales, and compare these to sales at the centers themselves: This function is necessary but only in priority because it can be considered as an external option but because of its necessity, it is still considered as an important function Affiliate can order Marketing Materials: it’s important to help affiliate can order marketing material easily and the most exactly Distribute product to each affiliate: like I said above, it help affiliate can have the latest product and best quality from head office Communication between customer and manager or staff: it is important to help manager or staff to manage the shop, they can know what happening with shop and customer satisfaction Customer can know in detail the product they want to buy and they want to know “Could have” All the rest of the features are “Could have” features by default Customer must be rating and send feedback for manager: After customer pay bills to buy product, they can leave comment and rating for the manager It help manager know customer satisfaction and what the staff with customer The system should allow centers to order products for their local stores: As I said above but in largest scope The role of the Data Controller within the organization Definition: Data Controller is a high-level division within an organization or system that includes individuals or entities with a privilege to control, responsible for the storage and use of personal information on device types (DataProtection, 2018) The role of Data Controller: (DataProtection, 2018) To manage the storage, maintenance and updating of personal information of members in the organization or system 12 | P a g e Clearly determine the right to decide as well as the responsibility of each individual or legal entity It also helps to clearly identify who decides on the management and delivery of personal information Legal, social, ethical and professional issues that W2L may be faced with 5.1 Legal issues Legal Issues is the act or purpose of an individual or organization that is unlawful Some Legal issues that W2L may be faced: Marketing your ecommerce business: Marketing based on methods not acceptable by law Make and accept payments: Payments based on illegal methods Authentication of contracts signed via the Internet: signed or authenticated contracts that are not competent and have not been certified by the State Email risk: loss or disclosure of confidential information Protection of intellectual property rights: stealing materials, ideas, research works of others Internet Advertising: Ads containing images, violent or illegal content Data protection: data loss or the provision of illegal data Example 1: W2L promotes content that promotes illegal or violent behavior (advertising the rare species listed in the Red Book) Example 2: Trading and selling rare and precious species that the State prohibits 5.2 Social issues “Social issues in computers provide information that is consistent with the social impact of technology” (Borodin, 1973) Some Social issues that W2L may be faced: Identity Theft Privacy Defame Example 1: Use other people's identities to advertise without their permission Example 2: Give out other people's private information or speak ill of them 5.3 Ethical issues Ethical is the practice of creating a principle of choice between right and wrong 13 | P a g e According to Professor Hofacker: “Ethics could be defined as: a set of principles or standards that determine whether an action is right (good) or wrong (bad) and which therefore informs us what we ought and ought not do.” The ethical issues related to the ownership of personal information were briefly summarized by Mason in four areas: Privacy, Accuracy, Property, and Accessibility (Mason, 1986) Some Ethical issue that W2L may be faced: General Practice: In system development / maintenance / consulting system Controller Power: Nepotism User Responsibility: lack of awareness or ignoring opinion, user needs Company Responsibility: Taking advantage of the company's beliefs to cause misconduct IT: use of illegal material Others: Human Resources - hiring relatives, marketing - selling unhealthy products to young people / old people, accounting - distorting the truth, Bribes, unfair dismissal, unhealthy competition Example 1: While developing the W2L system, developers use unconfirmed documents, legal proofs for posting on the company's Web site Example 2: In the W2L system there is an instructional component, if a teacher teaches to dismiss a student without good reason, then it is considered to be unethical behavior 5.4 Professional issues “Professional Issues in Information Technology aids professional IT practitioners to demonstrate their capability in their chosen professional areas, to operate effectively in work and community situations, and to be aware of their environments.” (Bott, 2005) Some Professional issues that W2L may be faced: Not qualified enough Do not work properly Work unprofessional Example 1: In W2L, for a designer to write code, it would be improper work Example 2: To a non-professional person who manages the entire W2L system Produce a management summary outlining the purpose of the BCS Code of Conduct The Code of Conduct generally seeks to set BCS's professional standards as standard conditions, which are applicable to all members, regardless of authority The core is a code of behavior that governs the behavior of individuals and not of any organization or stakeholders (Society, 2018) 14 | P a g e 6.1 Public Interest Propose: (Society, 2018) Ensuring issues related to community interests, private rights as well as the right to security and welfare Ensure issues related to third parties Professional issues must be dealt with on gender equality, marital status, nationality, color, ethnicity or any other requirement or condition Promote equality of access to IT benefits Practice Example: When a developer initiates the task of gathering information or responding in a direct way (meeting or calling), they should respect all customer feedback, irrespective of their status or gender, the skin color must be based on fairness to judge That will give the most accurate conclusions 6.2 Professional Competence and Integrity Propose: (Society, 2018) Ensure that the developer will only work or provide a service within the professional competence as well as does not require, beyond the professional competence permitted Develop the expertise, skills of the developer in a continuous way, always up to date with the latest information about the expertise that they own Help the developer with the knowledge of the law and apply it in the implementation of the responsibility Help the Developer to avoid harming others in property, honor, human beings, and at the same time avoid acts of bribery and unethical penalties Practice Example: A simple example is that a feedback collector cannot interfere with the economic relevance of an organization because it is not in their expertise or competence In the process of exploiting the information, they must also obey the law, not press or affect the honor, property, people 6.3 Duty to Relevant Authority Propose: (Society, 2018) Ensure professional judgment is carried out continuously with a diligent, appropriate attitude Minimize the risk of conflicts between developers and organizations Fully responsible for the work of developers as well as subordinates Minimize the disclosure of confidential information by the organization Minimize errors as well as untruths in documents and reports 15 | P a g e Practice Example: A senior staff member of an organization can not disclose any of the organization's information or actions as it would undermine the interests of the individual as well as the organization and it is a violation of law 6.4 Duty to the Profession Propose: (Society, 2018) Ensure the maintenance of work progress, enhance the reputation of the profession Through the process involved in the practical improvement of issues related to expertise Help maintain the reputation and good standing of BCS Maintaining, enhancing respect among the members of the condom Help companies and organizations understand the situation of each member Encourage the development, competition in improving the expertise of each member Practice Example: As an organization, a developer is required to accept professional responsibility whether or not he or she wants to maintain and enhance his or her career reputation At the same time, they must develop and continually strive to improve their expertise References Borodin, C C (1973) Social Issues in Computing In C C Borodin, Social Issues in Computing (p 300) Bott, F (2005) Professional Issues in Information Technology In F Bott, Professional Issues in Information Technology (p 264) Business, A (2018) What is DSDM https://www.agilebusiness.org/what-is-dsdm Retrieved from DataProtection (2018) Are you a "data controller"? https://www.dataprotection.ie/docs/Are-you-a-DataController/y/43.htm?fbclid=IwAR0lUbuH57gLNfS04InEGvsQgYZk2o9sZaATi0DBpXfq_JhNE_8AVtjj-o Agile Business: Retrieved from Mason, R O (1986) Four Ethical Issues of the Information Age Retrieved from http://www.gdrc.org/info-design/4-ethics.html Society, B C (2018) BCS Code of https://www.bcs.org/category/6030#publicinterest conduct Retrieved from 16 | P a g e Vethics (2018) AGILE SOFTWARE DEVELOPMENT AND ITS ADVANTAGES AND DISADVANTAGES Retrieved from Vethics: http://vethics.com/agile-software-development-and-itsadvantages-and-disadvantages/ 17 | P a g e ... changing work methods Second, User must be a part of the development process All stakeholders are fully responsive, including: User, developer, Project Manager and QA Personnel In detail, it answer... Exploration: The developmental stage is repeated continuously enabling the team to develop and expand fully functional based on business objectives Engineering: Repetitive development phase, where the... purpose of this site is to provide information about the course and the customer, so it should be in full use of all information Customer information such as name, price, place of origin, details,