APPDEV-MOD3_merged.pdf
Document Details
Uploaded by CrisperWhistle9014
Full Transcript
KEY PRACTICES THAT DEFINE THE WATERFALL METHOD KEY PRACTICES THAT DEFINE THE WATERFALL METHOD Plan-Driven Models: 02 V MODEL is a sequential Software Development Life Cycle (SDLC) model, also known as validation and verification. It extends the Waterfall model by empha...
KEY PRACTICES THAT DEFINE THE WATERFALL METHOD KEY PRACTICES THAT DEFINE THE WATERFALL METHOD Plan-Driven Models: 02 V MODEL is a sequential Software Development Life Cycle (SDLC) model, also known as validation and verification. It extends the Waterfall model by emphasizing the relationship between development stages and their corresponding testing phases. It is a high-level discipline model, which means developers cannot go to the next phase until the completion of the previous phase. Practices of the V-Model V-Model Scope of use Key Practices Sequential Phases & Early Test Preparation. Limitations One-to-One relationship between development and testing High Risk and Uncertainty: Assumes fixed requirements from the phases. start, which can be risky if requirements change. Proactive defect tracking & Extensive documentation. User involvement in requirements and UAT. Not Ideal for Complex or Object-Oriented Projects: Lacks flexibility for iterative development. Tools and Techniques Limited for Long or Ongoing Projects: Midway changes are Requirements Management: Captures user requirements. difficult to accommodate. Design & Code Analysis Tools: Create designs, analyze code. Testing Tools: For automation and performance. Late Software Visibility: No functional software is available until Documentation Tools: Maintain detailed project docs later stages, delaying feedback. V-Model Scope of use Applicability Well-Defined, Stable Requirements: Works best for projects with a clear and stable scope. Short-Term Projects: Suitable for small projects with fixed Spiral Model timelines. P l a n - D r i v e n M o d e l Marcus Diether Quibol High Compliance Needs: Ideal for regulated industries like BSIT - 3D healthcare, aerospace, and defense. Application Development and Emerging Technologies Extensive Documentation: Effective where strong documentation and validation are required, such as in medical devices and embedded systems. 01 Overview 01 Characteristics Spiral Model Iterative Risk Management Prototyping Client Participation - was first proposed by Barry Boehm in 1988. The project is carried Each cycle involves a Initial versions of the Consistent interaction out in iterative cycles, comprehensive risk software (prototypes) with stakeholders enabling ongoing evaluation, detecting are developed, guarantees that the - a combination of waterfall and refinement and potential issues early allowing stakeholders project stays in line prototyping model modifications based on and formulating to offer feedback that with user needs and feedback. strategies to address shapes future iterations. expectations. them. - commonly used for a projects that are too expensive, too complex and too large ot handle. -the number of loops is subjective. 01 Basic Activities 02 Roles and Responsibilities Project Managers Planning Risk analysis Supervise the project, handle timelines and budgets, and facilitate communication among stakeholders. -requirements can be - Using the most optimal gathered from, and objectives can be solution, risks are assessed and defined, identified and analyzed. addressed, and prototype is created based on the ideal solution. System Analyst Collect and document requirements, mediate communication between clients and the development team, and evaluate user needs. Testing Validation Software Developers -The identified attributes are Clients review and assess the newly Develop, implement, and program the software; build prototypes; and tackle technical validated and improved through upgraded version of the software in issues. testing and various software versions the fourth quadrant. are also developed in this part.. 02 Roles and Responsibilities 03 Practices Tester Perform testing to verify software functionality, detect bugs, and confirm that the Team Brainstorming Prototyping Tools (e.g. 02 04 product meets specifications. Requirement Management Azure, Figma) Tools Version Control(e.g. Git) Client Offer feedback, confirm requirements, and take part in reviews of prototypes and final Planning Risk Analysis Testing Validation products. SWOT Analysis Survey and Interviews UI/UX Designer 01 Software Risk Analysis 03 Review meetings with client Concentrate on the design and usability of the software to ensure it aligns with user expectations and is easy to use. 04 Advantages and Disadvantages 04 Advantages and Disadvantages Advantages Disadvantages Enhances user engagement by delivering a portion of the end product at the It is a sophisticated approach that demands highly skilled personnel. conclusion of each phase. Due to the high costs associated with Spiral Models, they are not ideal for small- Suitable for complex, large, and high-budget projects. scale projects. Modifications can be implemented in the application based on user feedback and The software development process can be time-consuming because of the multiple reviews. iterations involved. It can successfully identify and address risks throughout the software development extensive documentation to effectively oversee the software development process. lifecycle. 03 Application EXTREME Advance Traffic Management System (ATMS) Mobile Application System PROGRAMMING Cassandra Kaye Honrada |3D CC106 - Application Development and Emerging Technologies Extreme Programming Lifecycle of Extreme Programming Extreme programming (XP) is a software development methodology that emphasizes technical practices, teamwork, and customer satisfaction. It is an iterative and incremental approach to software development that focuses on delivering high-quality software products. Lifecycle of Extreme Programming Testing Extreme Programming (XP) gives more importance to testing that consist of both unit Planning 4 tests and acceptance test. 1 customers define their needs in concise descriptions known as user stories. The team calculates the effort required for each story and schedules releases according to priority Unit tests - which are automated, check if specific features work correctly. Acceptance tests conducted by customers, ensure that the overall system meets initial and effort. requirements. This continuous testing ensures the software’s quality and alignment with customer Design The team creates only the essential design needed for current user stories, using a needs. 2 common analogy or story to help everyone understand the overall system architecture and keep the design straightforward and clear. Listening Coding 5 In the listening phase regular feedback from customers to ensure the product meets their needs and to adapt to any changes. Pair pr o g r a mmin g - Two developers work together at one workstation, enhancing code 3 quality and knowledge sharing. Refactoring Involves restructuring existing code to improve its design, readability, and maintainability without changing its external behavior. Extreme Programming Team Programmers Tester writes and refactors the helps the customer choose Customers Tracker Coach code. and write functional tests. responsible for defining the responsible for monitoring who guides and mentors Also, it is responsible for requirements, writes user the team members' the team to understand XP executing tests and stories and provides progress and providing principles and practices reporting bugs. feedback to the team. It useful metrics. that facilitates learning and represents the end user. improvement. Extreme Programming Practices 5 O n - site customer A representative of the end-user of the system (the Customer) should be available full time for the use of the XP team. In an extreme programming process, the customer is a member Collective Code ownership of the development team and is responsible for bringing system requirements to the team 1 Everyone is responsible for all the code and that everybody is allowed to change any part for implementation. of the code. Refactoring Continuous integration 6 Involves restructuring existing code to improve its design, readability, and maintainability 2 As soon as the work on a task is complete, it is integrated into the whole system. After any without changing its external behavior. such integration, all the unit tests in the system must pass. Simple Design Planning G a m e 7 3 used to plan and prioritize tasks in an iteration. It involves customers and developers is about creating a design that is as simple as possible while still meeting the customer's requirements. working together to decide which features to implement Pair Programming 8 Small releases 4 Two programmers sit in front of the same monitor and work on a piece of code together The practice of delivering software via frequent releases, allowing early value for customers and feedback to teams. This also avoids big bang releases. 9 Sustainable pace The practice of teams working at a steady pace and not burning the candle at both ends, which can lead to burnout, mistakes, and quality problems. KANBAN 10 Test-first development or Test-Driven Development An automated unit test framework is used to write tests for a new piece of functionality SOFTWARE before that functionality itself is implemented. DEVELOPMENT Kanban is a framework that falls under the Coding standards Agile methodology. It was developed in the 11 The set of rules that the entire development team agrees to adhere to throughout the late 1940s by a Japanese engineer named project, ensuring code quality and self-describing code. Taiichi Ohno. Agile Kanban Framework focuses on visualizing the entire project on boards in System metaphor order to increase project transparency and 12 The practice of ensuring that the naming of each class or method is self-descriptive, collaboration between team members. making it easy for the entire team to understand the code base. VISUALIZE WORKFLOW Begin by visualizing the team's workflow on a Kanban board. Whether physical or virtual, the board should depict each PROCESS stage of the development process, from task inception to completion. SET WIP LIMITS MANAGE FLOW Work In Progress Limits, or Measuring lead time and WIP limits, are the cycle time where lead maximum number of time, the complete time cards that can be spent on completing a task displayed in a single is an important parameter column at any given that project teams must moment. reduce as much as possible. CLARIFYING IMPLEMENT WORKFLOW FEEDBACK LOOPS GUIDELINES Because tasks move so Regularly collecting quickly in Kanban, make feedbacks from both the sure the team has Expedite team and customers are established and clearly Bug essential for assessing communicated progress, resolving issues, Standard conventions. The process and making process Chore policies should guide how improvements. a team implements the Kanban methodology. COLLABORATE AND EXPERIMENT Foster a culture of collaboration within a team, where members collectively address bottlenecks and work together to ensure smooth workflow progression. ROLES AND RESPONSIBILITIES SERVICE DELIVERY MANAGER RESPONSIBILITIES Also known as Flow Manager. The SDM Monitor the Kanban Board to ensure that work items are completed helps the project team to focus on regularly, and no interruptions occur. increasing the speed of delivery and Schedule and conduct regular Kanban team meetings so that the entire shortening response times in other team is on the same page on project progress. words, increasing productivity and Proactively identify any work disruptions before they occur and take steps efficiency by focusing on workflow. to resolve them if they happen. Initiate regular and continuous improvement activities across the organization. SERVICE REQUEST MANAGER RESPONSIBILITIES Ordering work items from the backlog and facilitating prioritization of what comes next. Owning the policies for the system, which frame decisions together Improving corporate governance, consistency of process, and reducing The primary goal of an SRM is to serve as a risk manager and facilitator personnel risk associated with a single individual PRACTICES Visualize Workflow Limit Work in Progress (WIP) Focus on Flow PRACTICES Continuous Improvement PRACTICES PRACTICES Visualize Workflow Visualization provides a shared overview of the process, helping teams identify Software and resolve workflow issues. It also enhances collaboration across teams. A common method is using a process board with cards representing tasks, which include details like description, assignee, and estimated completion time. In software development, this typically includes columns like Backlog, In Progress, and Done. Phyiscal PRACTICES PRACTICES Limiting work in progress Continuous Improvement This ensure that you only start work on tasks that can be passed smoothly onto It’s important to measure work in backlogs, how long to through process (lead the following process stage - without blocking the entire workflow. time), and how efficient we are working (cycle/lead time). This enables us to continuously inspect and improve how we work and track progress. Focus on Flow The Lead and Cycle Time Diagram helps measure lead time accurately, enabling We pull not push work, which helps us to defer commitment until we meet our precise delivery estimates and keeping clients informed and satisfied. definition of done (DoD) and we have the capacity to commit to the next activity. PRACTICES PRACTICES Lead Time: Total time from task request to completion, including waiting and working time. Cycle Time: Time to complete a task after work begins, excluding waiting time. PRACTICES Benefits Accelerates software delivery. Helps manage changing requirements and priorities. Significantly increases productivity. SCOPE OF USE Scrutinizes the software processes, allowing teams to achieve higher quality code. Improves project visibility. Significantly reduces project risk. Boosts team collaboration. Reduces total project cost by eliminating rework, bottlenecks and delays. SCOPE OF USE SCOPE OF USE The Scope of Kanban Software Development can be applied in many Manufacturing industries: It offered manufactoerers effective implementation include quick tool exchanges, maintenance, repetitive batches, and quality systems for IT & Software Development synchronized production. It offers organizations an enhanced workflow understanding, improves task delivery, identifies irrelevant tasks, reduces team stress, and allows Toyota Kanban used physical cards to signal the need for parts or continuous improvements. products in manufacturing. These cards were sent from one work center to another, minimizing overproduction, reducing inventory Its continuous-flow based is an ideal for environments for Projects that costs, and ensuring a smooth production flow, which were work with items are constantly being added (e.g., customer support instrumental in Toyota's success. tickets, bug fixes). SCOPE OF USE WHAT IS Limitations RAPID APPLICATION Oversimplification of Tasks DEVELOPMENT? Information Overload Limited Utility for Complex Projects is a software development methodology focused on rapid prototyping and iterative Difficulty in Tracking Long-Term Progress delivery. Overreliance on Tool Efficacy Physical or Digital Limitations PROCESS OF PROCESS OF RAPID APPLICATION RAPID APPLICATION DEVELOPMENT DEVELOPMENT REQUIREMENTS onPLANNING is a software development methodology focused rapid It differentiate itself from traditional models by not requiring a detailed list of specifications from end users. Instead, it focuses on broad requirements, allowing teams to refine specific needs throughout the development cycle. PROCESS OF PROCESS OF RAPID APPLICATION RAPID APPLICATION DEVELOPMENT DEVELOPMENT USER DESIGN CONSTRUCTION In this stage, developers rapidly create prototypes with various features to This is the most crucial part of the development team, including programmers, showcase to clients, who provide feedback on what they like or dislike. These is acoders, testers, software and developers, development collaborates methodology focused to ensure smooth functionality and initial prototypes focus on key features, with the final product being developed on that rapidthe final product meets the client's expectations and goals. This stage can be during the finalization stage once client and developer align on the requirements. particularly long, especially in cases where clients change directions or feedback The iterative process helps address issues early and ensures a customized final is intensive. product. PROCESS OF RAPID APPLICATION DEVELOPMENT DEPLOYEMENT / CUTOVER ROLES AND This final stage involves deploying the system into a live environment. This includes scale testing, documentation, RESPONSIBLITIES issue tracking, and debugging. ROLES AND ROLES AND RESPONSIBILITIES RESPONSIBILITIES PRODUCT OWNER PROJECT MANAGER PRODUCT OWNER PRODUCT OPERATIONS TEAM SOFTWARE DEVELOPERS This role is a key person in creating project in relaying DESIGNERS feedback and insights into the project's goals and ensures that user needs are reflected in the design. QUALITY ASSURANCE END-USERS ROLES AND ROLES AND RESPONSIBILITIES RESPONSIBILITIES PROJECT MANAGER PRODUCT OPERATIONS TEAM Responsible for overseeing the whole development They provide ongoing support, address issues, and process, managing timelines, and ensuring that resources collaborate with product managers to gather and analyze are effectively used. user feedback, guiding future product improvements. ROLES AND ROLES AND RESPONSIBILITIES RESPONSIBILITIES SOFTWARE DEVELOPERS DESIGNERS Developers work closely with designers and clients, These team members focus on creating user-friendly interfaces and quickly building and refining prototypes. experiences. Their role is critical in the user design phase, where prototypes are tested and adjusted based on user feedback. ROLES AND ROLES AND RESPONSIBILITIES RESPONSIBILITIES QUALITY ASSURANCE END-USERS Testing happens continuously in RAD. QA teams are responsible for catching Unlike traditional models, end users are often involved throughout the bugs and ensuring that each iteration works as expected, providing quick process. They test prototypes and provide feedback to ensure the final product feedback to the development team. meets their needs. PRACTICES KEY PRACTICES RAPID APPLICATION DEVELOPMENT PROTOTYPING PRACTICES Unlike traditional models, end users are often involved throughout the process. They test prototypes and provide feedback to ensure the final product meets their needs. Tools: Balsamiq, Figma, Sketch, Adobe XD. PRACTICES PRACTICES KEY PRACTICES KEY PRACTICES RAPID APPLICATION RAPID APPLICATION DEVELOPMENT DEVELOPMENT ITERATIVE DEVELOPMENT TIMEBOXING Rather than building the complete application in one go, RAD encourages RAD employs the technique of timeboxing, where a strict time limit is incremental builds through cycles, with new features or improvements imposed on the development of certain features or phases to ensure the added in each iteration. project stays on schedule. Tools: Tools: Agile frameworks like SCRUM or Kanban, CI/CD tools like Jenkins, Project management tools like Jira, Trello, or Monday.com to track and Git for version control. time and progress. KEY PRACTICES KEY PRACTICES RAPID APPLICATION RAPID APPLICATION DEVELOPMENT DEVELOPMENT COMPONENT-BASED COMPONENT-BASED DEVELOPMENT PARALLEL DEVELOPMENT DEVELOPMENT RAD uses parallel development processes, where different teams work RAD encourages the reuse of pre-built components or code to speed up development. Developers often rely on modular design to build components that can be reused across projects. RAD encourages the reuse of pre-built components or code to speed up simultaneously on different parts of the application, ensuring faster development. Developers often rely on modular design to build development. components that can be reused across projects. Tools: Tools: Reusable libraries, APIs, and frameworks like React, Angular, Vue.js, or Django. Tools: Git (for source code management), Docker (for containerization), Reusable libraries, APIs, and frameworks like React, Angular, and DevOps practices. Vue.js, or Django. SCOPE OF USE SMALL TO WHERE IT IS MEDIUM-SIZED MOST APPLICABLE PROJECTS SCOPE OF USE AND LIMITATIONS: LIMITATIONS: Complex, Large-Scale Projects SCOPE OF USE SCOPE OF USE PROTOTYPING PROJECTS WITH WHERE IT IS -DRIVEN WHERE IT IS EVOLVING MOST MOST APPLICABLE PROJECTS APPLICABLE REQUIREMENTS AND AND LIMITATIONS: LIMITATIONS: Limited User LIMITATIONS: LIMITATIONS: Fixed Requirements Involvement SCOPE OF USE SCOPE OF USE Why RAD Is PROJECTS WITH Inappropriate for WHERE IT IS MOST TIGHT DEADLINES High-Risk Projects Like This: APPLICABLE AND LIMITATIONS: For projects requiring high LIMITATIONS: stability or precision (like mission-critical - Need for Rigid Testing systems), - Upfront Planning and Documentation - No Room for Errors Team 6: Rapid SCRUM Development: A Framework for SCRUM Process Agile Software Development 1 Sprint Planning The sprint planning meeting is where the team selects and prioritizes the work that will be completed in the upcoming sprint. Sprint Execution 2 During the sprint, the team works on the selected items from the sprint backlog, using daily stand-up meetings to track progress and identify any roadblocks. Sprint Review 3 SCRUM is an agile framework that emphasizes iterative development, The sprint review meeting is where the team demonstrates the completed work to collaboration, and continuous improvement. It is a popular choice for the stakeholders and gathers feedback. This meeting is an opportunity to celebrate the team's achievements and identify areas for improvement. software development teams looking to deliver value quickly and adapt to changing requirements. Sprint Retrospective 4 by Jhunnel Motea IT-3D The sprint retrospective meeting is an opportunity for the team to reflect on the Jeff Danglapen sprint and identify ways to improve their process for the next sprint. CC106 SCRUM Roles and Responsibilities SCRUM Practices 1 Daily Stand -Up Meetings 2 Sprint Backlog Short, daily meetings where team A prioritized list of items to be members share their progress, completed during the sprint. It challenges, and plans for the day. It provides the team with a clear promotes transparency and helps understanding of the work to be keep the team focused on the sprint done. Product Owner Scrum Master Development Team goal. The product owner is responsible for The scrum master is responsible for The development team is responsible 3 Product Backlog 4 Sprint Review maximizing the value of the product ensuring that the SCRUM process is for developing and delivering the A comprehensive list of all features, A meeting at the end of each sprint by defining the product backlog, followed and that the team is working product. They are a self-organizing functionalities, and improvements to demonstrate the completed work prioritizing work, and accepting effectively. They are a facilitator and and cross-functional team that that the product owner wants to see and gather feedback from in the product. It serves as a stakeholders. It ensures that the completed work. coach, helping the team to improve works together to complete the roadmap for the development team. team is delivering value and meeting their process and overcome work. the expectations of the obstacles. stakeholders. Scope of SCRUM Usage Product Development Software Development SCRUM can also be used for product development, SCRUM is commonly used in software from initial ideation to product launch. It helps teams development to manage projects of to prioritize features, gather feedback, and iterate all sizes. It allows teams to deliver quickly. value quickly and adapt to changing requirements. Marketing and Design Education and Research SCRUM can also be SCRUM principles can be applied in educational settings and research projects to foster implemented in marketing collaboration, improve communication, and achieve project and design projects to goals efficiently. improve collaboration, deliver value quickly, and adapt to changing market demands. Diagram from optimmus.io Advantages of SCRUM Challenges in Implementing SCRUM Increased Improved Challenge Explanation 1 Productivity 2 Collaboration SCRUM's iterative and SCRUM encourages teamwork Resistance to Change Teams may be hesitant to adopt a incremental approach fosters and communication by bringing new framework, especially if they continuous progress and helps the team together regularly and are used to traditional methods. teams stay focused on creating opportunities for delivering value. shared understanding. Lack of Experience Teams may lack the experience and expertise to successfully implement SCRUM. Flexibility and Increased 3 Adaptability 4 Transparency Communication Issues Effective communication is SCRUM's iterative nature allows SCRUM's focus on regular crucial for SCRUM to succeed, and teams to quickly adapt to communication and teams may struggle to changes in requirements or collaboration creates communicate effectively. priorities. transparency within the team and with stakeholders. Conclusion and Key Takeaways Benefits of SCRUM SCRUM offers numerous benefits, including increased productivity, improved collaboration, flexibility, and transparency. Successful Implementation Hybrid Process Model Successful implementation of SCRUM requires commitment, training, and a focus on continuous improvement. Adaptability to Different Contexts SCRUM is a highly adaptable framework that can be tailored to suit the needs of different teams and projects. CC 106 Application Development and Emerging Technologies Prepared by: Godfrey Javier and Fionah Santua / IT 3D Rational Unified Process Rational Unified UnifiedProcess Process is(RUP) a wellisknown a welliterative known iterative software software engineering engineering process. process It provides(SEP) a Phases: created by approach disciplined the Rationalin Software assigningCorporation, tasks and now a division of IBM. responsibilities within It provides a development a disciplined approach to assigning tasks and responsibilities organization. Inception Phase within a development organization and makes the development team more productive by practices in Rational unified Process giving them guidelines, templates and tool mentors for all critical software lifecycle Elaboration Phase activities. RUP’s goal is to ensure the production of high-quality software that meets the needs of its end users within a predictable schedule and budget. Construction Phase Transition Phase Practices in Rational Unified Process Practices in Rational Unified Process Develop software iteratively Manage Requirements Use component-based architectures Visually model software Continuously verify software quality Control changes to software RUP employs an iterative RUP utilizes Unified Modeling RUP supports component-based RUP emphasizes the development RUP focuses on continuously RUP stresses the importance of approach, enabling stakeholders Language (UML) use cases to software development, offering a and maintenance of visual models verifying and objectively assessing effective communication and to progressively refine their identify, organize, and document systematic approach to define to elucidate system structures and product quality. change management. It outlines understanding of the problem and system requirements. architecture using both new and behaviors. how to control, track, and monitor develop solutions incrementally. existing components. changes to support successful iterative development. Disciplines BUSINESS MODELING REQUIREMENTS ANALYSIS & DESIGN Disciplines of Rational The purpose of this discipline is to understand the structure, The activities in the requirements discipline establishes and The analysis & design discipline translate the requirements into a unified Process business problems, processes, and to the identify maintains agreement with the customers and other detailed description implement the future system. to potential improvements of the stakeholders on the system demanding organization. capabilities, user-interface, user needs. Disciplines Disciplines IMPLEMENTATION TEST DEPLOYMENT CONFIGURATION & CHANGE PROJECT MANAGEMENT ENVIRONMENT MANAGEMENT The activities of the This discipline examines the The deployment discipline Project management ensure that The purpose of this discipline is implementation is the system as a whole to assess the embraces all the artifacts that The purpose of the configuration projects are planned, executed, to support the project construction of the actual product quality. are delivered to the end-users & change management and completed efficiently and organization with both processes software. or customers. It includes discipline is to track and maintain effectively, achieving their and tools. activities like beta testing. the integrity of evolving project objectives within defined assets. constraints. Inception Phase Rational Unified Process Inception Phase Players Deliverables / Outcomes This phase focuses on a project’s launch. The project has to be validated; so that a budget can be approved. Stakeholde Stakeholders and business designer should have Pay for the system to be built and operated and agreement set the vision and priorities for the system. Requirements should be understood Players Project Manage Cost and schedule estimates, and risk analysis Collaborate with stakeholders to develop the System Requirements Specification Stakeholders, Project Manager, project vision and objectives. Use - case model should be prepared (10% - 20% Business Process Analyst, Business Business Process Analyst done). Designer, and Business Model Review Analyzes business processes to ensure that the system supports and improves business workflows. Business Designe Designs the business models that reflect how the system will operate within the business context. Business Model Reviewe Reviews the business model to ensure it aligns with the project's goals and business needs. Use Case Model (10% done) Cost and schedule estimates and risk analysis. Elaboration Phase Rational Unified Process This phase focuses on addressing the project's major technical risks. Its purpose is to develop a system architecture that resolves key technical questions. Lifecycle Objective Milestone Players Software Architect, Tool Smith, Project Manager, and Information Architect Use Case Model (80% done) Elaboration Phase Players Deliverables / Outcomes Software Architec Use - case model should be 80% done (show the Defines the overall software architecture, functionality of the system) ensuring that it meets technical and business Description of software architecture needs. Revised business case Tool Smit Software Development plan Customizes development tools or creates new Prototype with lesser technical risks. ones to support the project’s unique requirements. Project Manage Work with stakeholders to refine and prioritize requirements. Information Architect Designs the structure of information, ensuring that data flows logically and meets user needs. They create information models to structure how information will be accessed. Prototype Construction Phase Rational Unified Process This phase focuses on making an operational system by using the executable architecture that was created in the previous phase. Lifecycle Architecture Milestone Players Stakeholder, Project Manager, Developer, QA Engineer, Technical Writer, Tester, and Usability Engineer Construction Phase Players Stakeholde Deliverables / Outcomes User Manual Beta version of Facebook Provide feedback, ensure alignment, communicate, and make final decisions. Project Manage User manual Manage the execution plan. Beta version of the system Develope Writes code and develops components. Conducts unit tests and integrates components. QA Enginee Ensures the quality of the software by conducting tests and verifying that it meets requirements. Technical Write Creates user manuals, technical guides, and documentation that explain how to use the system or software. Teste Reviews documents for completeness and accuracy, ensuring that they meet project standards. Usability Enginee Ensures the system is easy to use and meets user expectations in terms of experience and accessibility. Transition Phase Rational Unified Process This phase focuses on transitioning the system from the development stage to actual production. The system must fulfill the software requirements and needs of its users. Initial Operational Capability Milestone Players Project Manager, Deployment Manager, Course Developer, Production Specialist, and Page Designer Facebook Transition Phase Players Deliverables / Outcomes Project Manage System that fulfill software requirements Plan the deployment of the system to the end- Trained end users. users. Deployment Manage Develops deployment plan, coordinates stakeholders, executes deployment, provides post-deployment support. Course Develope Develops training materials and courses to help users understand the system. Production Specialis Oversees production environment, coordinates teams, monitors system, provides troubleshooting support. Page Designe Designs and lays out user interfaces, collaborates with teams, implements design changes, ensures alignment with standards, optimizes page performance. Scope of Use Enterprise-Level Application Safety-Critical System Financial System Characteristics: Large user base, Characteristics: Systems where Characteristics: High security, critical business functions, failure can result in significant extensive transaction processing, extensive integration with other harm (e.g., healthcare, regulatory compliance systems aerospace, automotive) Product Release Milestone Why RUP Fits: The methodical Why RUP Fits: RUP’s emphasis on Why RUP Fits: RUP’s focus on nature of RUP helps in addressing thorough documentation, quality assurance and security concerns and extensive planning, and iterative continuous verification ensures compliance issues, while its development ensures that all that safety and reliability iterative process allows for aspects of the project are well- standards are met. Detailed continuous improvement and managed and risks are modeling and documentation adaptation to changing financial minimized. are crucial for compliance and regulations. validation. Agile Unified Process This methodology is a combination between the Rational Unified Process and Agile Method. AUP Phases: is also a simplified version of the Rational Unified Process. Inception Phase practices iN AGILE Elaboration Phase unified Process Construction Phase Transition Phase Practices in AGILE Unified Process Practices in AGILE Unified Process Iterative Development Test - Driven Development Daily Standups and Model - Driven Design Continuous Integration Risk Management User Acceptance Testing Agile Modeling Communication AUP divides the project Writing test cases before Short daily meetings to Creating models that Integrating code Identifying, assessing, Conducting tests with Use of simple, effective into small iterations, coding is a must to discuss progress, represent the structure changes into a shared and managing risks end-users to validate models (lightweight UML each resulting in a ensure the code meets blockers, and plans. and behavior of the repository multiple times throughout the project that the system meets diagrams) to potentially deliverable the required system before actual a day. lifecycle. their requirements. communicate design system. functionality. coding. and requirements. Disciplines MODEL IMPLEMENTATION TEST DEPLOYMENT Disciplines of AGILE The objective is to The objective is to The objective is to find The objective is to defects, to validate the integrate the system unified Process understand the transform models into business organization, executable code and to system works as into the operational to define the problem perform a basic level of designed and meet the environment using and what the user testing, particularly user’s requirements. organization needs, to identify the unit testing. best solution. Disciplines Agile Unified Process CONFIGURATION PROJECT MANAGEMENT ENVIRONMENT MANAGEMENT The objective is to direct The objective is to The objective is to manage the activities that takes supports the development access to project artifacts. place on the project. process with processes, This includes tracking guidance, and tools. artifact versions over time and then controlling and managing changes to them. Scope of Use Key Differences Embedded System Educational System Integration System Why AUP Fits: AUP’s iterative and Why AUP Fits: AUP fosters Why AUP Fits: AUP’s iterative AUP emphasizes delivering functional software over extensive adaptive approach allows for collaboration and frequent development allows for flexible quick responses to user feedback updates based on user feedback, adaptation to changing documentation and real-time performance ensuring the platform adapts to integration requirements. requirements. Continuous testing evolving educational needs. Its Continuous testing and feedback AUP is simpler and less complex than RUP ensures the system meets strict lightweight documentation keeps help refine integration quality standards. the system user-friendly. capabilities and ensure effective AUP prioritizes delivering working software driven by stakeholder communication between systems. feedback AUP is well-suited for small to medium-sized projects that need to adapt quickly to changing requirements.