Advantages of the Unified Software Development Process [closed] - rational-unified-process

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
Why adopt the UP process over others? What are the relative advantages? I know that it is closely coupled with UML but clearly this cannot be the only advantage? Why choose this approach over others?

I think it really depends against what process/methodology you compare. Without details, only general characteristics of UP can be mentioned.
It is iterative incremental methodology with well described roles and activities, using modeling techniques in object oriented analysis and design. It is vertically (time) divided in phases and those in iterations and horizontally into groups of activities concerning different aspects of software development, such as requirements, analysis, design, testing deployment etc...

Although we are not practitioners of the full UP processes, we use it frequently to see what type of products we need and which roles will have the responsibility to perform the activities for that product. We like it, because it details the various aspects from design until the deployment phase and comes with various templates, guidelines and processes which help out in the development life-cycle.
Take a look at : http://epf.eclipse.org/wikis/openup/
As we are a team where members can play different roles depending the projects, we simply navigate to the role, and check what products are needed for the project at hand. Depending the weight/complexity of the project we will choose the products that will help us in our daily duties. UML is an asset which we highly depend upon and comes as a benefit within OpenUP (or other UP incarnations).

I am certified in RUP and a Scrum Master. Most teams find that no process "off the shelf" is a perfect fit. That being said, the Unified Process focuses on driving risk out of a project early. However, I have seen many implementations where UP introduces a level of risk simply by being overly complex. Depending on the nature of the project, organizational structure, and other factors such as compliance and scale, UP offers a set of practices that can be easily tailored.

Related

Can we use two class Diagrams for two apps -- child app and parent app [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 1 year ago.
Improve this question
I have two modules of an app. one is parent app and another is child app. should I create two different class diagrams for both apps or should there only be one diagram?
This is entirely up to you to decide. Some thoughts that may guide you:
If the classes or components of these both classes deal with parts of the same domain (for example, one app is maintaining a catalogue, and the other allows to purchase catalogue items), you may consider one model.
If anyway you consider your apps two be just two faces of the same system, you should consider one model.
If the apps are two different things and only share some "modules", components, or classes (in a library), you may consider two or three models. THe package of the common part might then be imported into the model of the apps.
One model does not mean one diagram: in fact several diagrams may show the same model under different viewpoints. So you might very well use several diagrams, each focusing on some elements of one of the app.
You could even have one diagram to show the main classes of both apps and several other diagrams showing some of those classes as well as more detailed classes. The key is to keep each diagram of one model sufficiently simple to be easily understood.
Whatever the situation, avoid a huge mega-diagram showing everything with 50 classes: nobody except you would be able to absorb such a complexity.
If you're confused regarding the difference between modeling models and drawing diagrams, you may have a look at this question

Master thesis on developping Twincat3 driver [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 1 year ago.
Improve this question
If there is any PLC programmer or Twincat3 user out there. I would like to write my master thesis on Twincat3 in a company. Basically, They have different kinds of the Test bench, and they want someone to develop drivers for them. I have no experience with PLC or C++ or IEC61131 languages. Is it possible to learn any of these in 3 months, and then start writing the thesis? I have three months of Internship time before starting. I am having a bit of doubt. Even though it is daunting as an Electrical engineering student, I have no other options.
I thank you in Advance.
Also, The test benches are mainly Powerelectronics or Electrical machine test bench. I believe I need to automate the test processes in twincat3.
Best Regards
Good choice with TwinCAT 3. TwinCAT 3 is very capable, and quite easy to learn (of course dependent on your background, but generally a good platform to work on).
All I can support you with is a link to a TwinCAT 3 tutorial that I've created that is free of charge (available on YouTube):
https://www.youtube.com/playlist?list=PLimaF0nZKYHz3I3kFP4myaAYjmYk1SowO
There are also some other resources available both on YouTube and on the website. I've created a set of links here to help you find all the resources you might need.
To answer your question I would say it depends. Three months is not much time, especially considering you probably have a lot of other things that need to go in there (doing studies, writing the thesis, implementation, conclusions etc). It depends on the complexity of your project (it's not very specific what "writing drivers for them" means). If it's a simple project (including a very basic set of I/Os) it might be do-able. If it's anything more complex (like needing to add a front-end, doing motion control and maybe even safety) then it's most likely going to be hard to finish it in three months.
But again, I think more details on what you want to achieve is necessary.

ItextSharp implementation across load balancer [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 3 years ago.
Improve this question
We're evaluating ITextSharp (now known as IText) for producing pdf documents. This will be used in our websites which will be published across a load-balanced solution amongst several servers.
According to Itext, this will require a production license per server (we're not open-source) in our load balanced configuration, as well as uat and developer licenses. This is obviously a considerable investment.
Could anyone recommend any alternatives to reduce the costs?
Also, is there a pattern we could adopt to minimise the migration effort of the existing website prototype if we were to use another product?
You could change your architecture a bit and have a dedicated PDF generation server. You'd then need to boil your requests down to something that could be sent between the servers. Depending on your goals, that could be something relatively simple, such as a user ID and a report name, or complex (text layout, that image there).
As far as distancing yourself from the commercial iText, there are two options.
1) Use the older MPL iTextSharp. It won't have all the latest features and bugfixes, but it's hard to beat the price.
2) The "wrapper" design pattern. Build a relatively generic interface, and have your current implementation of that interface sit atop iText. If you later need to swap it out, you're rebuilding the glue code, not your whole app.

What is the relation between business processes, workflows and activities? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 3 years ago.
Improve this question
I googled the above question in many forms and I could not find any comprehensible answer. Can someone give a real life example that explains the difference between a business process and a workflow ? and how each one is connected to activities.
This diagram was supposed to help but to be honest, it confused me even more.
Questions like this aren't the core purpose of Stack Overflow, so probably you'll get a few flags. But I'll try to give a short answer.
Like many other notions in computing, these two terms, business process and workflow, aren't precisely defined, at least not in a way that is generally understood and accepted. So each author, tool vendor, and the like, use them at their pleasure. For most practical cases, they are interchangeable. BPMN, for example, has "business process" in its name, but many "workflow" engines do nothing else than implement BPMN.
A diagram like the one you got isn't meaningful without a clear explanation of the meaning of its constructs. That's the duty of its author and can't be done by you or me without knowing his intentions.
If anything, the term "workflow" could be more specific than "business process". The workflow means the concrete sequence of actions, like "customer fills order, then vendor calculates delivery data, then warehouse personell fetches products,...". Business process can, depending on the context, also be used for more abstract ideas, like "product design, customer acquisition, order processing" that are not directly related in the everyday work organization.

Simulation and Software Engineering [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
I want to start a simulation project, which will be a descrete-time simulation. The purpose is simulating agent communication with some non-autonomous physical models involved, so it is not necessarily limited to a pure agent-based simulation. Before starting, I wanted to ask what software engineering practices specific to simulation do exist, for example test practices (TDD suited? Simulation tends to be hinghly non-deterministic), which problems from a software engineering point of view are common, often occurring problems, etc. I am not talking about the modelling process, but the process of the realization of a system that uses existing models. Related book recommendations are very welcome.
Thanks.
Marcin is right, this question is much too broad to have a correct answer apart from It Depends.™
The main reason for this is that simulation software is, first and foremost, still 'just' software, and the engineering part very much depends on your requirements (programming language, purposes of the software, time budget, constraints on resources, etc.).
Of course, there might be additional steps involved (such as VV&A) and certain tasks need extra care, such as testing, but all this depends on the context.
Also, before you start hacking away, have you looked at existing tools - maybe there is a library or framework that you can rely on? If so, what approaches have worked there?
Except general introductions (like this), most books and papers are also focused on specific subsets of simulation software (e.g. simulation software in C++, or agent-based simulations, or parallel and distributed simulations). So without more context it is hard to even point you to relevant material.
One common problem in software engineering and development of (agent-based) simulation software is dealing with floating point numbers.
Since not all real numbers can be exactly represented by the floating point formats used in computers, small errors can build up in simulations with many operations over time and influence the final results.
Moreover, small differences in how floating point operations are implemented on various hardware and software platforms may result in different outcomes when a simulation is run on different systems.
See these links for some extensive studies into the effects of this on agent-based models:
http://www.macaulay.ac.uk/fearlus/floating-point/
http://jasss.soc.surrey.ac.uk/8/1/5.html