SlideShare ist ein Scribd-Unternehmen logo
1 von 5
MASTER OF SCIENCE IN INFORMATION TECHNOLOGY
MALAYSIA UNIVERSITY OF SCIENCE AND TECHNOLOGY
SESSION 2012/2013
COURSE : SOFTWARE ARCHITECTURE
COURSE CODE : MIT520
STUDENT NAME : YUDEP APOI
LECTURE NAME : DR. SELLAPPAN PALLANIAPAN
ASSIGNMENT 1 (20%) DUE DATE: 30 NOV. 2012
Retrieve one article (paper) on software design/architecture from any journal, conference
proceedings or Website. Critique the article, highlighting how the design/architecture has
addressed the non-functional requirements of the system such as performance, scalability,
security, availability and maintainability.
MALAYSIA UNIVERSITY of
SCIENCE and TECHNOLOGY
CONFIDENTIAL
Critique on Risks and Challenges of Component-Based Software Development
Introduction:
Title: Risks and Challenges of Component Based Software Development
Author: Yudep Apoi
Journal info: Communications of the ACM, August 2003/vol.46,No.8
Summary:
In this article, author explain that the risks and challenges of the Component-Based Software
Development (CBSD) process. Overall, component developers, application assemblers, and
customers must know all CBSD advantages and disadvantages before developing
components and component-based applications to get maximum benefits from it.
The author mention that, practitioners identify the following key CBSD advantages in future
software development efforts:
 Reduced Lead Time: Complete applications can be built from existing pool of
components. So that one need not fear of developing incomplete applications due to
lack of a specific component.
 Leveraged Cost: As the components developed can be reused in various applications
the cost of developing various individual components can be minimized.
 Enhanced quality: The strengths and faults of the components are pre known as they
are used in many different applications. So quality of the developing applications can
be enhanced.
 Easy Maintenance: Old components can be replaced with new components for
increased performance.
CBSD encompasses three primary types of stakeholders, which are component developers,
application assemblers, and customers.
Developers
A developer encounters certain risks and challenges in developing components, managing
component-development projects, and subsequently marketing the components. Developers
must identify business areas or domains that would generate enough yields to justify
component development. Developers must adapt to changes in the domain once the
components are fabricated. Developers must also determine the optimal way to fragment the
domain into a cohesive set of component. In managing component-development projects, a
developer must monitor each component from inception to delivery. Developers must also
assess how often to release components and how to inform clients, or assemblers, of new
versions. Before embarking on component-development projects, a developer must conduct
cost-benefit analyses to determine whether to accept a client, or assembler, and contract or
construct components for the mass market. Developers must address security issues to
alleviate client concerns about possible hacker-prone, corrupt, or virus-infected components
as well.
Assembler
Assembler risks and challenges primarily concern the assembly of components in
applications, the management of component-based application assembly projects, and the
uncertainties of the component market. Some crucial challenges in assembling component-
based applications that match user requirements include matching system requirement
specifications, demarcating the requirements document into smaller subsets, and confirming
the overall selected component set. Assemblers must deal with the lack of visibility into the
component-development process.
Customers
Customers face both risks and challenges in using component-based applications to meet
their enterprise requirements, as well as in managing their component-based and legacy
application systems and in achieving and sustaining strategic competitive advantage over
their rivals. One key risk involves whether a system is capable of satisfying customer
requirements. Customers face additional risks, as application quality (or lack of quality)
based on component quality hinders their ability to carry out key business activities. Each
customer faces risks in managing its repertoire of component-based applications. Customer
must assess which projects are more suitable for CBSD. As assemblers increasingly depend
on components developed by developers and customers depend on applications assembled by
assemblers, these risks and challenges propagate from one stakeholder to another. Risks faced
by one stakeholder are transferred to the next, ultimately constraining each customer’s ability
to leverage component technology in developing its application systems. While CBSD helps
overcome inadequacies in traditional development, it also poses risks to the profitability and
even long-term survival of each of its stakeholders. Before embarking on component-based
development projects, each stakeholder must assess its risks and devise sound strategies to
address them.
Strength:
The explanations by author clearly stated and its help the software manger to make a better
decision based on the explanations. It is also can be a guide for the three stakeholders’ with
risks and challenges, and what they should do.
This paper explains well about three stakeholders with risks and challenges, and what they
should do. Cost analysis can be made before hand which avoids running in troubles later.
Customers will be able to judge and take right decisions.
Weakness:
Component developers seem to make some useless components as seen in Figure 1, and
assemblers seem to gather some components they need. Developers develop components,
which are the first step of project process by CBSD. Of course, component repositories can
become obsolete because of poor planning or unfavorable industry trends. However,
developers try to reduce that kind of problems with better planning and modeling. Security
and privacy issues should be clearly addressed. Responsibility should also be taken in case of
failure of the component. Assemblers need to search for different repositories for a specific
component. Search cost should also be considered. Trust of the source from where the
component selected is also an important issue.
Critical Comments & Questions:
1. During the estimation cost of the development, are the obsolete component supposed to
be added?
2. Should developers and assemblers working together to reduce the obsolete component
and developer’s efforts?
3. To identify the project that suitable for CBSD do all customers need to know about
CBSD? If yes, what if they don’t know about CBSD?
4. How will the developer know which metric is to be selected in the contract before
marketing as it cannot be judged beforehand?
Interesting Points:
I am still developing the project using traditional methodology such as Software
Development Life-Cycle (SDLC) and Spiral Model. I would like to follow this method
another day in the future if I have a chance.
Suggestion:
To get the overview of the risks involved I suggest strongly that one should read this paper
before investing on development of any critical component or CBSD projects.

Weitere ähnliche Inhalte

Was ist angesagt?

Embedded Design
Embedded Design Embedded Design
Embedded Design AJAL A J
 
Defect Prevention Based on 5 Dimensions of Defect Origin
Defect Prevention Based on 5 Dimensions of Defect OriginDefect Prevention Based on 5 Dimensions of Defect Origin
Defect Prevention Based on 5 Dimensions of Defect Originijseajournal
 
Planning the development process
Planning the development processPlanning the development process
Planning the development processSiva Priya
 
Software engineering lecture notes
Software engineering   lecture notesSoftware engineering   lecture notes
Software engineering lecture notesAmmar Shafiq
 
Prakat_Whitepaper_Accessibility_Unit_FrameworkV1.4
Prakat_Whitepaper_Accessibility_Unit_FrameworkV1.4Prakat_Whitepaper_Accessibility_Unit_FrameworkV1.4
Prakat_Whitepaper_Accessibility_Unit_FrameworkV1.4Kedar Sapre
 
Software quality
Software qualitySoftware quality
Software qualitySantu Kumar
 
Software Engineering Past Papers Notes
Software Engineering Past Papers Notes Software Engineering Past Papers Notes
Software Engineering Past Papers Notes MuhammadTalha436
 
Hci In The Software Process
Hci In The Software ProcessHci In The Software Process
Hci In The Software Processahmad bassiouny
 
Hci in software process
Hci in software processHci in software process
Hci in software processrida mariam
 
Lesson 8...Question Part 2
Lesson 8...Question Part 2Lesson 8...Question Part 2
Lesson 8...Question Part 2bhushan Nehete
 
Process Improvement for better Software Technical Quality under Global Crisis...
Process Improvement for better Software Technical Quality under Global Crisis...Process Improvement for better Software Technical Quality under Global Crisis...
Process Improvement for better Software Technical Quality under Global Crisis...Optimyth Software
 
Software Engineering Diversity
Software Engineering DiversitySoftware Engineering Diversity
Software Engineering DiversitySayedMokarrom
 

Was ist angesagt? (20)

Embedded Design
Embedded Design Embedded Design
Embedded Design
 
Defect Prevention Based on 5 Dimensions of Defect Origin
Defect Prevention Based on 5 Dimensions of Defect OriginDefect Prevention Based on 5 Dimensions of Defect Origin
Defect Prevention Based on 5 Dimensions of Defect Origin
 
Planning the development process
Planning the development processPlanning the development process
Planning the development process
 
An outline of my c
An outline of my cAn outline of my c
An outline of my c
 
Software engineering lecture notes
Software engineering   lecture notesSoftware engineering   lecture notes
Software engineering lecture notes
 
Prakat_Whitepaper_Accessibility_Unit_FrameworkV1.4
Prakat_Whitepaper_Accessibility_Unit_FrameworkV1.4Prakat_Whitepaper_Accessibility_Unit_FrameworkV1.4
Prakat_Whitepaper_Accessibility_Unit_FrameworkV1.4
 
Software quality
Software qualitySoftware quality
Software quality
 
final (2)
final (2)final (2)
final (2)
 
Software Engineering Past Papers Notes
Software Engineering Past Papers Notes Software Engineering Past Papers Notes
Software Engineering Past Papers Notes
 
Vivek_MK
Vivek_MKVivek_MK
Vivek_MK
 
SE2_Lec 18_ Coding
SE2_Lec 18_ CodingSE2_Lec 18_ Coding
SE2_Lec 18_ Coding
 
Hci In The Software Process
Hci In The Software ProcessHci In The Software Process
Hci In The Software Process
 
Hci in software process
Hci in software processHci in software process
Hci in software process
 
Lesson 8...Question Part 2
Lesson 8...Question Part 2Lesson 8...Question Part 2
Lesson 8...Question Part 2
 
Resume
ResumeResume
Resume
 
Software developer
Software developerSoftware developer
Software developer
 
Process Improvement for better Software Technical Quality under Global Crisis...
Process Improvement for better Software Technical Quality under Global Crisis...Process Improvement for better Software Technical Quality under Global Crisis...
Process Improvement for better Software Technical Quality under Global Crisis...
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Software Engineering Diversity
Software Engineering DiversitySoftware Engineering Diversity
Software Engineering Diversity
 
job job
job jobjob job
job job
 

Andere mochten auch

Intranet (leave management module) admin
Intranet (leave management module) adminIntranet (leave management module) admin
Intranet (leave management module) adminYudep Apoi
 
Intranet (callback module)
Intranet (callback module)Intranet (callback module)
Intranet (callback module)Yudep Apoi
 
Sample Call Center Hierarchy 8.13.07
Sample Call Center Hierarchy 8.13.07Sample Call Center Hierarchy 8.13.07
Sample Call Center Hierarchy 8.13.07thecallcenterpro
 
Workplace etiquette
Workplace etiquetteWorkplace etiquette
Workplace etiquetteRachel Weber
 
Workplace Ethics PowerPoint Presentation
Workplace Ethics PowerPoint PresentationWorkplace Ethics PowerPoint Presentation
Workplace Ethics PowerPoint PresentationAndrew Schwartz
 
Example Call Center Work/Information Flow Diagram
Example Call Center Work/Information Flow DiagramExample Call Center Work/Information Flow Diagram
Example Call Center Work/Information Flow DiagramEquilibria, Inc.
 
Office Etiquette PowerPoint Presentation
Office Etiquette PowerPoint PresentationOffice Etiquette PowerPoint Presentation
Office Etiquette PowerPoint PresentationAndrew Schwartz
 

Andere mochten auch (9)

Intranet (leave management module) admin
Intranet (leave management module) adminIntranet (leave management module) admin
Intranet (leave management module) admin
 
Intranet (callback module)
Intranet (callback module)Intranet (callback module)
Intranet (callback module)
 
Metrics for Call Center
Metrics for Call CenterMetrics for Call Center
Metrics for Call Center
 
Sample Call Center Hierarchy 8.13.07
Sample Call Center Hierarchy 8.13.07Sample Call Center Hierarchy 8.13.07
Sample Call Center Hierarchy 8.13.07
 
Workplace etiquette
Workplace etiquetteWorkplace etiquette
Workplace etiquette
 
Workplace etiquette & manners
Workplace etiquette & mannersWorkplace etiquette & manners
Workplace etiquette & manners
 
Workplace Ethics PowerPoint Presentation
Workplace Ethics PowerPoint PresentationWorkplace Ethics PowerPoint Presentation
Workplace Ethics PowerPoint Presentation
 
Example Call Center Work/Information Flow Diagram
Example Call Center Work/Information Flow DiagramExample Call Center Work/Information Flow Diagram
Example Call Center Work/Information Flow Diagram
 
Office Etiquette PowerPoint Presentation
Office Etiquette PowerPoint PresentationOffice Etiquette PowerPoint Presentation
Office Etiquette PowerPoint Presentation
 

Ähnlich wie MIT520 software architecture assignments (2012) - 1

Software engineering (Unit-1 Introduction)
Software engineering (Unit-1 Introduction)Software engineering (Unit-1 Introduction)
Software engineering (Unit-1 Introduction)YamunaP6
 
Defect effort prediction models in software maintenance projects
Defect  effort prediction models in software maintenance projectsDefect  effort prediction models in software maintenance projects
Defect effort prediction models in software maintenance projectsiaemedu
 
Mi0033 software engineering
Mi0033   software engineeringMi0033   software engineering
Mi0033 software engineeringsmumbahelp
 
Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)MuhammadTalha436
 
A New Model for Study of Quality Attributes to Components Based Development A...
A New Model for Study of Quality Attributes to Components Based Development A...A New Model for Study of Quality Attributes to Components Based Development A...
A New Model for Study of Quality Attributes to Components Based Development A...Kiogyf
 
Lecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptxLecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptxYaseenNazir3
 
Systems Development Life Cycle(SDLC) is the step by step process whi.pdf
Systems Development Life Cycle(SDLC) is the step by step process whi.pdfSystems Development Life Cycle(SDLC) is the step by step process whi.pdf
Systems Development Life Cycle(SDLC) is the step by step process whi.pdfaniyathikitchen
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycleAfrasiyab Haider
 
Lect3 conventional vs modern spm
Lect3 conventional vs modern spmLect3 conventional vs modern spm
Lect3 conventional vs modern spmmeena466141
 
Software Development Today Everything You Need To Know.pdf
Software Development Today Everything You Need To Know.pdfSoftware Development Today Everything You Need To Know.pdf
Software Development Today Everything You Need To Know.pdfchristiemarie4
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSweta Kumari Barnwal
 
DELIVER QUALITY SOFTWARE PRODUCTS BY FOLLOWING SIMPLE STEPS
DELIVER QUALITY SOFTWARE PRODUCTS BY FOLLOWING SIMPLE STEPSDELIVER QUALITY SOFTWARE PRODUCTS BY FOLLOWING SIMPLE STEPS
DELIVER QUALITY SOFTWARE PRODUCTS BY FOLLOWING SIMPLE STEPSTechahead Software
 
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptx
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptxSOFTWARE DEVELOPMENT AND PROCESS MODELS.pptx
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptxSanthanalakshmiSelva2
 
IRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET Journal
 
Criterion 1A - 4 - MasteryPros and Cons Thoroughly compares the
Criterion 1A - 4 - MasteryPros and Cons Thoroughly compares theCriterion 1A - 4 - MasteryPros and Cons Thoroughly compares the
Criterion 1A - 4 - MasteryPros and Cons Thoroughly compares theCruzIbarra161
 

Ähnlich wie MIT520 software architecture assignments (2012) - 1 (20)

Software engineering (Unit-1 Introduction)
Software engineering (Unit-1 Introduction)Software engineering (Unit-1 Introduction)
Software engineering (Unit-1 Introduction)
 
Defect effort prediction models in software maintenance projects
Defect  effort prediction models in software maintenance projectsDefect  effort prediction models in software maintenance projects
Defect effort prediction models in software maintenance projects
 
Mi0033 software engineering
Mi0033   software engineeringMi0033   software engineering
Mi0033 software engineering
 
Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)
 
A New Model for Study of Quality Attributes to Components Based Development A...
A New Model for Study of Quality Attributes to Components Based Development A...A New Model for Study of Quality Attributes to Components Based Development A...
A New Model for Study of Quality Attributes to Components Based Development A...
 
Lecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptxLecture-1,2-Introduction to SE.pptx
Lecture-1,2-Introduction to SE.pptx
 
Systems Development Life Cycle(SDLC) is the step by step process whi.pdf
Systems Development Life Cycle(SDLC) is the step by step process whi.pdfSystems Development Life Cycle(SDLC) is the step by step process whi.pdf
Systems Development Life Cycle(SDLC) is the step by step process whi.pdf
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
 
Lect3 conventional vs modern spm
Lect3 conventional vs modern spmLect3 conventional vs modern spm
Lect3 conventional vs modern spm
 
Software Development Today Everything You Need To Know.pdf
Software Development Today Everything You Need To Know.pdfSoftware Development Today Everything You Need To Know.pdf
Software Development Today Everything You Need To Know.pdf
 
SE-Lecture-4.pptx
SE-Lecture-4.pptxSE-Lecture-4.pptx
SE-Lecture-4.pptx
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
DELIVER QUALITY SOFTWARE PRODUCTS BY FOLLOWING SIMPLE STEPS
DELIVER QUALITY SOFTWARE PRODUCTS BY FOLLOWING SIMPLE STEPSDELIVER QUALITY SOFTWARE PRODUCTS BY FOLLOWING SIMPLE STEPS
DELIVER QUALITY SOFTWARE PRODUCTS BY FOLLOWING SIMPLE STEPS
 
Ijetcas14 545
Ijetcas14 545Ijetcas14 545
Ijetcas14 545
 
lecture 1-5.pdf
lecture 1-5.pdflecture 1-5.pdf
lecture 1-5.pdf
 
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptx
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptxSOFTWARE DEVELOPMENT AND PROCESS MODELS.pptx
SOFTWARE DEVELOPMENT AND PROCESS MODELS.pptx
 
IRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLC
 
Criterion 1A - 4 - MasteryPros and Cons Thoroughly compares the
Criterion 1A - 4 - MasteryPros and Cons Thoroughly compares theCriterion 1A - 4 - MasteryPros and Cons Thoroughly compares the
Criterion 1A - 4 - MasteryPros and Cons Thoroughly compares the
 
SE-Lecture-2.pptx
SE-Lecture-2.pptxSE-Lecture-2.pptx
SE-Lecture-2.pptx
 
1.Basic Introduction (1).ppt
1.Basic Introduction (1).ppt1.Basic Introduction (1).ppt
1.Basic Introduction (1).ppt
 

Mehr von Yudep Apoi

Amalan Pertanian Yang Baik Untuk Penanaman Lada
Amalan Pertanian Yang Baik Untuk Penanaman LadaAmalan Pertanian Yang Baik Untuk Penanaman Lada
Amalan Pertanian Yang Baik Untuk Penanaman LadaYudep Apoi
 
RHB SE User Manual Draft
RHB SE User Manual DraftRHB SE User Manual Draft
RHB SE User Manual DraftYudep Apoi
 
Steps how to create active x using visual studio 2008
Steps how to create active x using visual studio 2008Steps how to create active x using visual studio 2008
Steps how to create active x using visual studio 2008Yudep Apoi
 
Web aggregation and mashup with kapow mashup server
Web aggregation and mashup with kapow mashup serverWeb aggregation and mashup with kapow mashup server
Web aggregation and mashup with kapow mashup serverYudep Apoi
 
MIT521 software testing (2012) v2
MIT521   software testing  (2012) v2MIT521   software testing  (2012) v2
MIT521 software testing (2012) v2Yudep Apoi
 
Intranet (hiring module)
Intranet (hiring module)Intranet (hiring module)
Intranet (hiring module)Yudep Apoi
 
Intranet (attendance module)
Intranet (attendance module)Intranet (attendance module)
Intranet (attendance module)Yudep Apoi
 

Mehr von Yudep Apoi (7)

Amalan Pertanian Yang Baik Untuk Penanaman Lada
Amalan Pertanian Yang Baik Untuk Penanaman LadaAmalan Pertanian Yang Baik Untuk Penanaman Lada
Amalan Pertanian Yang Baik Untuk Penanaman Lada
 
RHB SE User Manual Draft
RHB SE User Manual DraftRHB SE User Manual Draft
RHB SE User Manual Draft
 
Steps how to create active x using visual studio 2008
Steps how to create active x using visual studio 2008Steps how to create active x using visual studio 2008
Steps how to create active x using visual studio 2008
 
Web aggregation and mashup with kapow mashup server
Web aggregation and mashup with kapow mashup serverWeb aggregation and mashup with kapow mashup server
Web aggregation and mashup with kapow mashup server
 
MIT521 software testing (2012) v2
MIT521   software testing  (2012) v2MIT521   software testing  (2012) v2
MIT521 software testing (2012) v2
 
Intranet (hiring module)
Intranet (hiring module)Intranet (hiring module)
Intranet (hiring module)
 
Intranet (attendance module)
Intranet (attendance module)Intranet (attendance module)
Intranet (attendance module)
 

Kürzlich hochgeladen

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 

Kürzlich hochgeladen (20)

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 

MIT520 software architecture assignments (2012) - 1

  • 1. MASTER OF SCIENCE IN INFORMATION TECHNOLOGY MALAYSIA UNIVERSITY OF SCIENCE AND TECHNOLOGY SESSION 2012/2013 COURSE : SOFTWARE ARCHITECTURE COURSE CODE : MIT520 STUDENT NAME : YUDEP APOI LECTURE NAME : DR. SELLAPPAN PALLANIAPAN ASSIGNMENT 1 (20%) DUE DATE: 30 NOV. 2012 Retrieve one article (paper) on software design/architecture from any journal, conference proceedings or Website. Critique the article, highlighting how the design/architecture has addressed the non-functional requirements of the system such as performance, scalability, security, availability and maintainability. MALAYSIA UNIVERSITY of SCIENCE and TECHNOLOGY CONFIDENTIAL
  • 2. Critique on Risks and Challenges of Component-Based Software Development Introduction: Title: Risks and Challenges of Component Based Software Development Author: Yudep Apoi Journal info: Communications of the ACM, August 2003/vol.46,No.8 Summary: In this article, author explain that the risks and challenges of the Component-Based Software Development (CBSD) process. Overall, component developers, application assemblers, and customers must know all CBSD advantages and disadvantages before developing components and component-based applications to get maximum benefits from it. The author mention that, practitioners identify the following key CBSD advantages in future software development efforts:  Reduced Lead Time: Complete applications can be built from existing pool of components. So that one need not fear of developing incomplete applications due to lack of a specific component.  Leveraged Cost: As the components developed can be reused in various applications the cost of developing various individual components can be minimized.  Enhanced quality: The strengths and faults of the components are pre known as they are used in many different applications. So quality of the developing applications can be enhanced.  Easy Maintenance: Old components can be replaced with new components for increased performance. CBSD encompasses three primary types of stakeholders, which are component developers, application assemblers, and customers.
  • 3. Developers A developer encounters certain risks and challenges in developing components, managing component-development projects, and subsequently marketing the components. Developers must identify business areas or domains that would generate enough yields to justify component development. Developers must adapt to changes in the domain once the components are fabricated. Developers must also determine the optimal way to fragment the domain into a cohesive set of component. In managing component-development projects, a developer must monitor each component from inception to delivery. Developers must also assess how often to release components and how to inform clients, or assemblers, of new versions. Before embarking on component-development projects, a developer must conduct cost-benefit analyses to determine whether to accept a client, or assembler, and contract or construct components for the mass market. Developers must address security issues to alleviate client concerns about possible hacker-prone, corrupt, or virus-infected components as well. Assembler Assembler risks and challenges primarily concern the assembly of components in applications, the management of component-based application assembly projects, and the uncertainties of the component market. Some crucial challenges in assembling component- based applications that match user requirements include matching system requirement specifications, demarcating the requirements document into smaller subsets, and confirming the overall selected component set. Assemblers must deal with the lack of visibility into the component-development process. Customers Customers face both risks and challenges in using component-based applications to meet their enterprise requirements, as well as in managing their component-based and legacy application systems and in achieving and sustaining strategic competitive advantage over their rivals. One key risk involves whether a system is capable of satisfying customer requirements. Customers face additional risks, as application quality (or lack of quality) based on component quality hinders their ability to carry out key business activities. Each customer faces risks in managing its repertoire of component-based applications. Customer must assess which projects are more suitable for CBSD. As assemblers increasingly depend on components developed by developers and customers depend on applications assembled by
  • 4. assemblers, these risks and challenges propagate from one stakeholder to another. Risks faced by one stakeholder are transferred to the next, ultimately constraining each customer’s ability to leverage component technology in developing its application systems. While CBSD helps overcome inadequacies in traditional development, it also poses risks to the profitability and even long-term survival of each of its stakeholders. Before embarking on component-based development projects, each stakeholder must assess its risks and devise sound strategies to address them. Strength: The explanations by author clearly stated and its help the software manger to make a better decision based on the explanations. It is also can be a guide for the three stakeholders’ with risks and challenges, and what they should do. This paper explains well about three stakeholders with risks and challenges, and what they should do. Cost analysis can be made before hand which avoids running in troubles later. Customers will be able to judge and take right decisions. Weakness: Component developers seem to make some useless components as seen in Figure 1, and assemblers seem to gather some components they need. Developers develop components, which are the first step of project process by CBSD. Of course, component repositories can become obsolete because of poor planning or unfavorable industry trends. However, developers try to reduce that kind of problems with better planning and modeling. Security and privacy issues should be clearly addressed. Responsibility should also be taken in case of failure of the component. Assemblers need to search for different repositories for a specific component. Search cost should also be considered. Trust of the source from where the component selected is also an important issue. Critical Comments & Questions: 1. During the estimation cost of the development, are the obsolete component supposed to be added? 2. Should developers and assemblers working together to reduce the obsolete component and developer’s efforts?
  • 5. 3. To identify the project that suitable for CBSD do all customers need to know about CBSD? If yes, what if they don’t know about CBSD? 4. How will the developer know which metric is to be selected in the contract before marketing as it cannot be judged beforehand? Interesting Points: I am still developing the project using traditional methodology such as Software Development Life-Cycle (SDLC) and Spiral Model. I would like to follow this method another day in the future if I have a chance. Suggestion: To get the overview of the risks involved I suggest strongly that one should read this paper before investing on development of any critical component or CBSD projects.